【发布时间】:2016-06-21 04:10:09
【问题描述】:
我的目标是使用log4j 将(json 格式的)消息滚动到日志文件中,从而使生成的日志文件成为 json 有效的结构。我目前在log4j.properties 中拥有的是:
log4j.rootLogger=INFO, FILE
log4j.appender.FILE=org.apache.log4j.DailyRollingFileAppender
log4j.appender.FILE.Append=true
log4j.appender.FILE.File=out.log
log4j.appender.FILE.DatePattern='.'yyyy-MM-dd-HH-mm
log4j.appender.FILE.layout=com.foobar.CustomLayout
log4j.appender.FILE.layout.ConversionPattern=%m,%n
CustomLayout 的样子:
class CustomLayout extends PatternLayout {
@Override
String getHeader() {
return "[\n"
}
@Override
String getFooter() {
return "{}\n]"
}
}
但是,在我的执行结束时,我的所有文件不是 json-valid,因为它们没有右括号,即:
[
{},
{},
关于如何解决此问题并使每个滚动文件包含我在CustomLayout 中定义的页眉和页脚的任何想法?
【问题讨论】:
标签: java json logging log4j slf4j