Log4j2:每天打印日志记录文件 "uncontrollable"



我想每天打印一个日志文件。例如:我在2004年28日和2004年29日午夜进行操作。我希望将前一天(2004年28月(的日志操作收集在myFolder/MYLOG_operations_D2020428.txt文件中。在我当前的配置中,有时会正确重命名文件,有时会使用今天的日期而不是昨天的日期(例如myFolder/MYLOG_OPERATIONS_D20204029.txt而不是myFolder/MYLOG_OPERATIONS_D220200428.txt(。

appender.myLog-log.type=RollingFile
appender.myLog-log.name=myLog
appender.myLog-log.fileName=myFolder/MYLOG_OPERATIONS.txt
appender.myLog-log.filePattern=myFolder/MYLOG_OPERATIONS_D%d{yyyyMMdd}.txt
appender.dss-b05-log.layout.type=PatternLayout
appender.dss-b05-log.layout.pattern=%m%n
appender.dss-b05-log.policies.type=Policies
appender.dss-b05-log.policies.cron.type=CronTriggeringPolicy
appender.dss-b05-log.policies.cron.schedule=10 0 0 ? * *
appender.dss-b05-log.strategy.type=DefaultRolloverStrategy
appender.dss-b05-log.strategy.max=20

请帮帮我:(

我在这里注意到的第一件事是,您正试图为两个不同的记录器配置附加程序,这可能是个问题。在您的情况下,让我们尝试将myLog-log配置为记录器:

log4j2.appender.myLog-log.fileName=myFolder/MYLOG_OPERATIONS.txt
log4j2.appender.myLog-log.filePattern=myFolder/MYLOG_OPERATIONS_D%d{yyyyMMdd}.txt
log4j2.appender.myLog-log.policies.date.type=TimeBasedTriggeringPolicy 
log4j2.appender.myLog-log.policies.date.interval=1

试试这样的东西。

最新更新