2

我正在准备使用 groovy log4j dsl 让 log4j 登录到 XMLLayout 中的文件。但是,似乎“布局:”部分被忽略了。这是我的设置:

appenders {
    file name: 'fileAppender', layout: xml, file: '/tmp/logs/applog.xml', threshold: org.apache.log4j.Level.INFO
    console name: "stdout", threshold: org.apache.log4j.Level.INFO
}

root {
    debug 'stdout', 'fileAppender'
}

所以对于标准输出,我正确地得到了我的信息级模式布局,但在文件中我也得到了模式布局......

这里有什么诀窍?

4

2 回答 2

1

这是一个错误。我已经为 2.0.1 修复了它:http: //jira.grails.org/browse/GRAILS-8635

您发现的解决方法是显式使用构造函数而不是 DSL 快捷方式。

于 2012-01-16T03:47:57.633 回答
0

好吧,我发现您可以只使用 layout: new XMLLayout() 或 layout: new HTMLLayout()

但是,在文档中它说

默认情况下,Log4j DSL 假定您要使用 PatternLayout。但是,还有其他可用的布局,包括:

xml - Create an XML log file
html - Creates an HTML log file
simple - A simple textual log
pattern - A Pattern layout

在我看来,xml 和 html 的快捷方式不起作用。

于 2012-01-16T00:32:37.490 回答