在 Log4j2 中为 TimeBasedTriggeringPolicy 定义 date/time 模式的位置
Where to define the date/time pattern for TimeBasedTriggeringPolicy in Log4j2
我是 Log4j2 的新手,想使用 RollingFileAppender。此外,作为翻转,我想使用 TimeBaseTriggeringPolicy:
The TimeBasedTriggeringPolicy causes a rollover once the date/time pattern no longer applies to the active file.
在上面的站点上有这样一个 TimeBasedTriggeringPolicy 的示例:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn" name="MyApp" packages="">
<Appenders>
<RollingFile name="RollingFile" fileName="logs/app.log"
filePattern="logs/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz">
<PatternLayout>
<Pattern>%d %p %c{1.} [%t] %m%n</Pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="250 MB"/>
</Policies>
</RollingFile>
</Appenders>
<Loggers>
<Root level="error">
<AppenderRef ref="RollingFile"/>
</Root>
</Loggers>
</Configuration>
"date/time pattern" 上面的配置在哪里定义,决定活动文件是否适用于它?
感谢您的帮助!
那就是filePattern。在您的配置中:
filePattern="logs/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz">
上面最细化的时间单位是 dd
(天),所以它会在每天午夜滚动。
我是 Log4j2 的新手,想使用 RollingFileAppender。此外,作为翻转,我想使用 TimeBaseTriggeringPolicy:
The TimeBasedTriggeringPolicy causes a rollover once the date/time pattern no longer applies to the active file.
在上面的站点上有这样一个 TimeBasedTriggeringPolicy 的示例:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn" name="MyApp" packages="">
<Appenders>
<RollingFile name="RollingFile" fileName="logs/app.log"
filePattern="logs/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz">
<PatternLayout>
<Pattern>%d %p %c{1.} [%t] %m%n</Pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="250 MB"/>
</Policies>
</RollingFile>
</Appenders>
<Loggers>
<Root level="error">
<AppenderRef ref="RollingFile"/>
</Root>
</Loggers>
</Configuration>
"date/time pattern" 上面的配置在哪里定义,决定活动文件是否适用于它?
感谢您的帮助!
那就是filePattern。在您的配置中:
filePattern="logs/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz">
上面最细化的时间单位是 dd
(天),所以它会在每天午夜滚动。