Log4j2 Grails RollingFileAppender
我试图用Grails2.5.3实现log4j2,但配置属性有问题 我使用我以前在config.groovy文件中使用的log4j 1.x更新了我的旧项目,如下所示:Log4j2 Grails RollingFileAppender,grails,log4j2,rollingfileappender,grails-2.5,Grails,Log4j2,Rollingfileappender,Grails 2.5,我试图用Grails2.5.3实现log4j2,但配置属性有问题 我使用我以前在config.groovy文件中使用的log4j 1.x更新了我的旧项目,如下所示: import org.apache.log4j.* ... log4j={ environments{ production{ appenders{ def rollingAppender = new RollingFileAppender(
import org.apache.log4j.*
...
log4j={
environments{
production{
appenders{
def rollingAppender = new RollingFileAppender(
name: "rollingAppender",
layout: pattern(conversionPattern:"[%p] %d{yyyy-MM-dd HH:mm:ss.SSS} (%t) %c{2} %X - %ms : %m%n"),
file: "/tmp/logs/catalina.out",
bufferedIO: false,
maxFileSize: "300MB"
)
appender rollingAppender
}
}
development{
appenders {
def rollingAppender = new RollingFileAppender(
name: "rollingAppender",
layout: pattern(conversionPattern:"[%p] %d{yyyy-MM-dd HH:mm:ss.SSS} (%t) %c{2} %X - %ms : %m%n"),
file: "/tmp/logs/catalina.out",
bufferedIO: false,
maxFileSize: "15MB"
)
appender rollingAppender
}
}
}
info aditivity:false, rollingAppender:"grails.app.services"
info aditivity:false, rollingAppender:"grails.app.controllers"
}
现在,我到处都可以看到XML配置文件,但我找不到以前那样做的方法。我的意思是,我想根据应用程序运行的环境加载不同的配置。log4j2是否存在这种可能性
我现在有这样的东西:
import org.apache.logging.log4j.core.appender.RollingFileAppender
import org.apache.logging.log4j.core.appender.rolling.SizeBasedTriggeringPolicy
import org.apache.logging.log4j.core.appender.rolling.DefaultRolloverStrategy
import org.apache.logging.log4j.core.layout.PatternLayout
...
enviroments{
development{
appenders {
def rollingAppender = new RollingFileAppender(
name: "rollingAppender",
filePattern: "/tmp/logs_bkp/catalina.%d{yyyy-MM-dd HH:mm:ss.SSS}.log.gz",
layout: new PatternLayout("[%p] %d{yyyy-MM-dd HH:mm:ss.SSS} (%t) %c{2} %X - %ms : %m%n")
fileName: "/tmp/logs/catalina.out",
bufferedIO: false,
policy: new SizeBasedTriggeringPolicy(1024),
strategy: new DefaultRolloverStrategy(2,1,"min",false,5)
)
appender rollingAppender
}
}
}
我知道它有一些错误,但如果不使用XML配置文件,我无法理解如何使它工作。有什么想法吗