gpt4 book ai didi

java - Log4J2 Yaml 包级别

转载 作者:行者123 更新时间:2023-11-30 10:18:43 26 4
gpt4 key购买 nike

我正在尝试使用 log4j2 和 yaml 进行日志记录,但一直在努力。

包 com.eclipse 非常嘈杂,所以我只想在警告或更高级别记录来自该包的消息。对于我的包,我想将调试及以上记录到滚动附加程序,并将错误或以上记录到错误日志。在控制台上,我想查看除 org.ecplise 之外的所有内容的调试

在我当前的配置中,我没有看到 org.eclipse 调试消息,这很好,我在控制台上看到了 com.myorganization 消息,但文件附加程序似乎没有工作。如果我更改最后两个记录器的顺序,则 org.eclipse 消息会返回到控制台,但我的包的文件附加程序开始工作。任何帮助将不胜感激。

这是我当前的配置:

Configuration:
name: Default

Properties:
Property:
name: log-path
value: "logs"

Appenders:

Console:
PatternLayout:
pattern: '%d{yyyy-MM-dd HH:mm:ss a} [%t] %-5level %logger{36} - %msg%n'
name: Console
target: SYSTEM_OUT

File:
name: File_Appender
fileName: ${log-path}/minimal-ws.error.log
PatternLayout:
pattern: '%d{yyyy-MM-dd HH:mm:ss a} [%t] %-5level %logger{36} - %msg%n'

RollingFile:
- name: RollingFile_Appender
fileName: ${log-path}/minimal-ws.log
filePattern: 'logs/archive/minimal-ws.log.%d{yyyy-MM-dd-hh-mm}.gz'
PatternLayout:
pattern: '%d{yyyy-MM-dd HH:mm:ss a} [%t] %-5level %logger{36} - %msg%n'
Policies:
SizeBasedTriggeringPolicy:
size: 10 MB
DefaultRollOverStrategy:
max: 10

Loggers:

Root:
AppenderRef:
- ref: Console
level: DEBUG

Logger:
- name: com.myorganization
level: DEBUG
AppenderRef:
- ref: File_Appender
level: ERROR
- ref: RollingFile_Appender
level: DEBUG

Logger:
- name: org.eclipse
level: DEBUG
additivity: false
AppenderRef:
- ref: Console
level: WARN

最佳答案

您不需要在 yaml 中定义多个 Logger: 定义。取而代之的是具有多个 -name: 属性的单个 Logger: 定义。以下是根据您的要求的工作解决方案。 [请相应地更改包名称。]

Configuration:
name: Default

Properties:
Property:
name: log-path
value: "."

Appenders:

Console:
PatternLayout:
pattern: '%d{yyyy-MM-dd HH:mm:ss a} [%t] %-5level %logger{36} - %msg%n'
name: Console
target: SYSTEM_OUT

File:
name: File_Appender
fileName: ${log-path}/minimal-ws.error.log
PatternLayout:
pattern: '%d{yyyy-MM-dd HH:mm:ss a} [%t] %-5level %logger{36} - %msg%n'

RollingFile:
- name: RollingFile_Appender
fileName: ${log-path}/minimal-ws.log
filePattern: 'logs/archive/minimal-ws.log.%d{yyyy-MM-dd-hh-mm}.gz'
PatternLayout:
pattern: '%d{yyyy-MM-dd HH:mm:ss a} [%t] %-5level %logger{36} - %msg%n'
Policies:
SizeBasedTriggeringPolicy:
size: 10 MB
DefaultRollOverStrategy:
max: 10

Loggers:
Root:
AppenderRef:
- ref: Console
level: ERROR

Logger:
- name: eclipse
level: DEBUG
additivity: false
AppenderRef:
- ref: Console
level: DEBUG
- ref: File_Appender
level: DEBUG
- name: com
level: DEBUG
additivity: false
AppenderRef:
- ref: Console
level: INFO
- ref: File_Appender
level: ERROR
- ref: RollingFile_Appender
level: DEBUG

此配置写入ConsoleFile_AppenderRollingFile_Appender

关于java - Log4J2 Yaml 包级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49072739/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com