我正在尝试以 JSON 格式重定向日志输出,因此,我有 log4j2 的 Json 配置。我知道我应该使用 JsonLayout,但我没有找到任何方法将其放在我的配置中。这是我的 log4j2.json:
{
"Configuration": {
"status": "info",
"Appenders": {
"Console": {
"name": "Console",
"target": "SYSTEM_OUT",
"PatternLayout": {
"Pattern": "%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX} [%t] %-5level [%logger{1.}] - %msg%n"
}
}
},
"Loggers": {
"Root": {
"level": "info",
"AppenderRef": [
{
"ref": "Console"
}
]
}
}
}
}
你能帮我将其添加到我的配置文件中吗?
最佳答案
这是一些有效的示例,您只需要 JSONLayout
它是用于 json 事件日志记录的 Layout
的实现。
{
"configuration": {
"name": "log-enrichment",
"appenders": {
"RollingFile": {
"name": "rollingFile",
"fileName": "enrichment.log",
"filePattern": "%d{MM-dd-yy-HH-mm-ss}-%i.log",
"JSONLayout": {
"complete": false,
"compact": false,
"eventEol": true
},
"SizeBasedTriggeringPolicy": {
"size": "100 MB"
},
"DefaultRolloverStrategy": {
"max": "5"
}
}
},
"loggers": {
"root": {
"level": "DEBUG",
"appender-ref": {
"ref": "rollingFile"
}
}
}
}
}
关于java - 将 JsonLayout 添加到 log4j2 json 配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37197807/