Grails 每日log配置方法【Grails中文教程】

grails默认的是不能每日生成log的,如果希望明天产生一个log日志文件

需要使用DailyRollingFileAppender类进行设置,设置代码如下:

在conf/Config.groovy文件替换log4j{}里面的内容

//grails log4j configuration
log4j = {
	//String logDirectory = "${System.getProperty('catalina.base') ?: '.'}/log"
	
	String commonPattern = "%d{yyyy-MM-dd HH:mm:ss:SSS} %c [%-5p] %m%n"
	
	appenders {
		appender new org.apache.log4j.DailyRollingFileAppender(name:"dailyAppender",layout:pattern(conversionPattern: commonPattern),fileName:"log/userDemo.log",datePattern:"'.'yyyy-MM-dd")
	}
	root {
		error 'dailyAppender'
		additivity = true
	}

}

代码里面直接使用内置的log对象就可以代码如下:

package org.test

class UserController {
	def scaffold = true
	
	def index(Integer max) {
		
		log.error(  "show error info")
		log.info(  "this is info logging ")
				
		params.max = Math.min(max ?: 10, 100)
		respond User.list(params), model:[userInstanceCount: User.count()]
	}
}

如何需要显示hibernate sql语句直接需要在config/DataSource.groovy文件的dataSource里面添加logSql = true

如下:

dataSource {
    pooled = true
    driverClassName = "com.mysql.jdbc.Driver"
    username = "root"
    password = "root"
	logSql = true
}

 

来源://作者:admin/更新时间:2013-11-28