Log4j2 YAML生成多个日志文件问题
我的目标;
- 生成2个日志文件。
- 第一个将仅记录消息(除了消息之外没有其他内容)
- 第二个将记录所有INFO日志
我做了类似下面的事情;
log4j2-spring.yml
Configuration: status: warn monitorInterval: 30 shutdownHook: disable CustomLevels: CustomLevel: - name: MESSAGE intLevel: 50 Appenders: Console: name: Console target: SYSTEM_OUT PatternLayout: Pattern: "[%d{yyyy-MM-dd HH:mm:ss}][%-5p][%t][%c{2}] - %m%n" RollingFile: name: InfoLog fileName: "logs/all-info-logs.log" filePattern: "logs/${date:yyyy-MM}/all-info-logs-%d{MM-dd-yyyy}-%i.log.zip" PatternLayout: Pattern: "[%d{yyyy-MM-dd HH:mm:ss}][%-5p][%t][%c{2}] - %m%n" Policies: SizeBasedTriggeringPolicy: size: 5 MB DefaultRolloverStrategy: max: 50 RollingFile: name: MessageLog fileName: "logs/only-message-logs.log" filePattern: "logs/${date:yyyy-MM}/only-message-logs-%d{MM-dd-yyyy}-%i.log.zip" PatternLayout: Pattern: "[%d{yyyy-MM-dd HH:mm:ss}][%-5p][%t][%c{2}] - %m%n" Policies: SizeBasedTriggeringPolicy: size: 5 MB DefaultRolloverStrategy: max: 50 Loggers: Logger: name: com.testlog.testpackage additivity: false level: MESSAGE AppenderRef: - ref: MessageLog Root: level: info additivity: false AppenderRef: - ref: Console - ref: InfoLog
我的MessageLog
工作并生成文件only-message-logs.log
,但它会记录所有内容,包括消息和信息。
我在启动应用程序时收到错误消息;
2017-12-08 16:28:34,349 main ERROR Unable to locate appender "InfoLog" for logger config "root"
Root
记录器仅将一些消息记录到控制台。 并且永远不会生成名为all-info-logs.log
的文件。
检查了log4j2文档中的其他示例,并说它像我一样声明了多个appender。
我在这做错了什么?