我们想监控SQL执行的效率,打出执行时间。一般Spring项目都是用AOP拦截,然后计算方法开始结束时间,再减一下,就得到执行花的时间了。那Grails里更简单,不用自己写代码,其实用的是Spring的PerformanceMonitorInterceptor。
修改grails-app\conf\spring\resources.groovy
beans = {
xmlns aop:"http://www.springframework.org/schema/aop"
aop {
config("proxy-target-class":true) {
pointcut(id:"interceptorPointcut", expression:"execution(* org.apache.ibatis.session.SqlSession.*(..))")
advisor( 'pointcut-ref': "interceptorPointcut", 'advice-ref':"preformanceMonitoringInterceptorAdvice")
}
}
preformanceMonitoringInterceptorAdvice(org.springframework.aop.interceptor.PerformanceMonitorInterceptor, true){
loggerName = "grailsee.performanceMonitor"
}
}
然后修改grails-app\conf\Config.groovy,加入以下代码
debug 'java.sql.Connection',
'java.sql.Statement',
'java.sql.PreparedStatement'
//'org.mybatis',
//'org.apache.ibatis',
//'org.codehaus.groovy.grails.plugins.ibatis'
trace 'grailsee.performanceMonitor'
OK,然后执行SQL时就自动拦截计算执行时间了,看一下控制台上,有如下信息:
grailsee.performanceMonitor StopWatch 'org.apache.ibatis.session.SqlSession.selectOne': running time (millis) = 8482
执行此SQL花了8秒,搞定!
可以参考http://www.objectpartners.com/2010/10/19/grails-plumbing-spring-aop-interceptors/
如果要监控真实SQL方便调试的话,可以参考另一篇文章
在Grails下查看真实的SQL
(不过我测试下来没有成功。Grails2.1.0)
分享到:
相关推荐
Grails参考手册 Grails学习资料 groovy 小白学习grails+groovy
Grails+ZK文档,Grails+ZK文档,Grails+ZK文档,Grails+ZK文档
Grails-MyBatis 用于 Grails 框架的 MyBatis 插件 基于原始 Grails-iBatis 插件:Brian Sanders ( ) Grails 插件主页: : 修改: 命名约定的一些变化 添加了对多个数据源的完全支持 Grails 2.0 插件重构 最小 ...
grails+Xfire webservice
The+Definitive+Guide+to+Grails+Second+Edition
Grails+Apache構築手順 apache配置手順 tomcat配置手順
本教程介绍 Grails,这是一个搭建在动态语言 Groovy 之上的开源 MVC 快速 Web 开发框架。使用 Grails 可以提高 Web 开发的效率,降低 Web 开发的复杂度。本文 从 Grails 自动生成代码入手,以示例为中心逐步增加深度...
详情地主:https://blog.csdn.net/qq_38425662/article/details/82703128
去做 Grails + Vert.x + AngularJs 演示应用程序。 此应用程序是上述技术的混搭,以演示如何合并它们。
grails 中文文档+grails-fckeditor-0.9.5.zip插件
工具115 Proyecto para la MateriaTecnologíasOrientadas a Objetos,desarrollado en Grails + Oracle
grails_blog 演示: :
grails 用户登录的例子,必须登录后才可以查看信息,并且只有admin用户才可以创建用户,此例子,只要将grails 的环境配好,就可以用了,用的是自带的数据库,如果需要mysql 可以更改。
grails入门指南实例,grails+mysql,实现用户登陆实例
Grails Grails Grails Grails Grails
相当不错的入门级书,适合刚刚接触grails的新手学习用。附带书中提到相当的源码,每个阶段的都有。
本文档是intellij2015+grails-3.1.5环境搭建教程
Grails权威指南Grails权威指南Grails权威指南Grails权威指南Grails权威指南Grails权威指南
Grails项目的应用越来越多,而对于初学者来说,在Eclipse下搭建Grails项目是一个难题,这个文档将教会你如何搭建Grails项目,希望对你有所帮助。
Grails入门指南中文pdf -- 针对grails1.0.4更新,附加idea8 开发grails的流程