【发布时间】:2011-01-16 18:43:43
【问题描述】:
我在 grails 应用程序的 Config.groovy 中正确配置了 log4j DSL。使用 grails run-app 运行应用程序会转储完美的日志记录,正如我在 DSL 中指定的那样。然而,在进行 grails 战争以生成战争文件并将其部署到 tomcat 之后,日志记录就消失了。我在任何地方都看不到它工作,除了 tomcat 控制台在调试级别显示数百万条日志语句并且没有任何特定于我登录日志文件的内容。
log4j = {
appenders {
appender new org.apache.log4j.DailyRollingFileAppender(name: "tomcatLog", datePattern: "'.'yyyy-MM-dd", file: "${logDirectory}/snm.log".toString(), layout: pattern(conversionPattern: '[%d{yyyy-MM-dd hh:mm:ss.SSS}] %p %c{5} %m%n'))
}
root {
info 'stdout', 'tomcatLog'
additivity = true
}
info 'grails.app',
'grails.app.controller',
'grails.app.bootstrap',
'grails.app.service',
'grails.app.task',
'commons',
'jsontwitter'
}
你能解释一下上面的DSL吗?它将 commons.* 和 jsontwitter.* classes 日志发送到指定的日志文件但没有控制器,服务日志保存在文件中。
谢谢, 阿拉姆·谢尔
【问题讨论】: