首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Grails中记录SQL语句

如何在Grails中记录SQL语句
EN

Stack Overflow用户
提问于 2010-04-03 02:51:04
回答 9查看 57.2K关注 0票数 87

我想要在控制台或文件中记录Grails执行的所有查询,以检查性能。

我配置了this,但没有成功。

任何想法都会有所帮助。

EN

回答 9

Stack Overflow用户

发布于 2011-12-14 06:20:15

我发现执行以下操作更有用,即启用Hibernate的日志记录来记录SQL和绑定变量(这样您就可以看到传递到调用中的值,并在编辑器中轻松地复制SQL或其他方式)。

Config.groovy中,将以下内容添加到log4j块中:

代码语言:javascript
复制
log4j = {

    // Enable Hibernate SQL logging with param values
    trace 'org.hibernate.type'
    debug 'org.hibernate.SQL'
    //the rest of your logging config
    // ...
    }
票数 91
EN

Stack Overflow用户

发布于 2015-06-16 08:55:39

对于grails 3。*

选项#1将以下内容添加到logback.groovy

代码语言:javascript
复制
logger("org.hibernate.SQL", DEBUG, ["STDOUT"], false)
logger("org.hibernate.type.descriptor.sql.BasicBinder", TRACE, ["STDOUT"], false)

选项#2将以下内容添加到application.yml中的dataSource。但是,此方法不会记录参数值

代码语言:javascript
复制
environments:
  local:
    dataSource:
        logSql: true
        formatSql: true
票数 37
EN

Stack Overflow用户

发布于 2014-02-25 01:38:36

试试这个:

代码语言:javascript
复制
log4j = {
   ...
   debug 'org.hibernate.SQL'
   trace 'org.hibernate.type.descriptor.sql.BasicBinder'
}

它避免了跟踪日志记录Hibernate type包的性能问题。这适用于Hibernate 3.6和更高版本。这篇文章来自:https://burtbeckwith.com/blog/?p=1604

票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2568507

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档