Groovy ConfigSlurper http://groovy.codehaus.org/ConfigSlurper提供了一个很好的示例,说明如何使用ConfigSlurper定义Log4j配置。
E.g。
log4j {
appender.stdout = "org.apache.log4j.ConsoleAppender"
appender."stdout.layout"="org.apache.log4j.PatternLayout"
rootLogger="error,stdout"
logger {
org.springframework="info,stdout"
}
additivity {
org.springframework=false
}
}
基本上,ConfigSlurper只返回一个嵌套映射,其中包含String类型,布尔值等Java类型。
实际使用这些配置设置并将其应用于基础Log4j系统的最佳方法是什么?
注意:我不是使用Grails,而是使用vanilla Spring。
答案 0 :(得分:0)
像蒂姆耶茨评论:
org.apache.log4j.PropertyConfigurator.configure(
new ConfigSlurper().parse(new File("config.groovy").toURL()).toProperties())
工作出色!
谢谢蒂姆!
答案 1 :(得分:0)
您可以直接从代码配置log4j,而无需创建如下的属性文件:
def log4jConfig = """
log4j {
appender.stdout = "org.apache.log4j.ConsoleAppender"
appender."stdout.layout"="org.apache.log4j.PatternLayout"
rootLogger="error,stdout"
logger {
org.springframework="info,stdout"
}
additivity {
org.springframework=false
}
}
"""
def config = new ConfigSlurper().parse(log4jConfig)
PropertyConfigurator.configure(config.toProperties())