[Grails] Grails1.0.1版本中Log4j应该怎么配置
yinyue1986
2008-04-21
刚刚接触Groovy Grails,在学习中碰到个困难,请各位帮忙查看解决下,:D !
在config.groovy文件中配置,把日志输出后,可以任意控制文件大小,同时把握在程序供捕捉到的错误和定义的信息也输出,应该怎么改? // log4j configuration log4j { appender.stdout = "org.apache.log4j.ConsoleAppender" appender.'stdout.layout'="org.apache.log4j.PatternLayout" appender.'stdout.layout.ConversionPattern'='%d %p [%c] - <%m>%n' appender.errors = "org.apache.log4j.FileAppender" appender.'errors.layout'="org.apache.log4j.PatternLayout" appender.'errors.layout.ConversionPattern'='%d %p [%c] - <%m>%n' appender.'errors.File'="stacktrace.log" rootLogger="error,stdout" logger { grails="error" StackTrace="error,errors" org { codehaus.groovy.grails.web.servlet="error" // controllers codehaus.groovy.grails.web.pages="error" // GSP codehaus.groovy.grails.web.sitemesh="error" // layouts codehaus.groovy.grails."web.mapping.filter"="error" // URL mapping codehaus.groovy.grails."web.mapping"="error" // URL mapping codehaus.groovy.grails.commons="info" // core / classloading codehaus.groovy.grails.plugins="error" // plugins codehaus.groovy.grails.orm.hibernate="error" // hibernate integration springframework="off" hibernate="off" } } additivity.StackTrace=false } 在程序中的抛出: Logger logger = Logger.getLogger(UserController.class.getName()) logger.info("UserController开始") try {}catch(Exception e){logger.error("出现异:",e)} 如果我要实现我的目的,是不是改下StackTrace="error,errors"为StackTrace="info,errors"就可以实现了? |
|
yinyue1986
2008-04-21
还有就是,控制日志文件的大小,就像在log4j.properties文件中:
log4j.appender.R=org.apache.log4j.RollingFileAppender log4j.appender.R.File= D:\\stacktrace.log # Control the maximum log file size log4j.appender.R.MaxFileSize=100KB # Archive log files (one backup file here) log4j.appender.R.MaxBackupIndex=1 log4j.appender.R.layout=org.apache.log4j.PatternLayout 在config.groovy改怎么改写啊? |
|
agile_boy
2008-04-21
yinyue1986 写道 还有就是,控制日志文件的大小,就像在log4j.properties文件中:
log4j.appender.R=org.apache.log4j.RollingFileAppender log4j.appender.R.File= D:\\stacktrace.log # Control the maximum log file size log4j.appender.R.MaxFileSize=100KB # Archive log files (one backup file here) log4j.appender.R.MaxBackupIndex=1 log4j.appender.R.layout=org.apache.log4j.PatternLayout 在config.groovy改怎么改写啊? 只需要将log4j.去掉,放到Config.groovy的log4j { 下边就可以了。 |
|
agile_boy
2008-04-21
yinyue1986 写道 刚刚接触Groovy Grails,在学习中碰到个困难,请各位帮忙查看解决下,:D !
在config.groovy文件中配置,把日志输出后,可以任意控制文件大小,同时把握在程序供捕捉到的错误和定义的信息也输出,应该怎么改? // log4j configuration log4j { appender.stdout = "org.apache.log4j.ConsoleAppender" appender.'stdout.layout'="org.apache.log4j.PatternLayout" appender.'stdout.layout.ConversionPattern'='%d %p [%c] - <%m>%n' appender.errors = "org.apache.log4j.FileAppender" appender.'errors.layout'="org.apache.log4j.PatternLayout" appender.'errors.layout.ConversionPattern'='%d %p [%c] - <%m>%n' appender.'errors.File'="stacktrace.log" rootLogger="error,stdout" logger { grails="error" StackTrace="error,errors" org { codehaus.groovy.grails.web.servlet="error" // controllers codehaus.groovy.grails.web.pages="error" // GSP codehaus.groovy.grails.web.sitemesh="error" // layouts codehaus.groovy.grails."web.mapping.filter"="error" // URL mapping codehaus.groovy.grails."web.mapping"="error" // URL mapping codehaus.groovy.grails.commons="info" // core / classloading codehaus.groovy.grails.plugins="error" // plugins codehaus.groovy.grails.orm.hibernate="error" // hibernate integration springframework="off" hibernate="off" } } additivity.StackTrace=false } 在程序中的抛出: Logger logger = Logger.getLogger(UserController.class.getName()) logger.info("UserController开始") try {}catch(Exception e){logger.error("出现异:",e)} 如果我要实现我的目的,是不是改下StackTrace="error,errors"为StackTrace="info,errors"就可以实现了? 在controller中使用log不需要Logger logger = Logger.getLogger(UserController.class.getName()) 直接log.info就可以了 |