log4j2定时删除日志文件的配置

log4j2定时删除日志文件的配置

log4j2.yml:

Configuration:
status: DEBUG

Properties: # 定义全局变量
Property: # 缺省配置(用于开发环境)。其他环境需要在VM参数中指定,如下:
#测试:-Dlog.level.console=warn -Dlog.level.birdsh=trace
#生产:-Dlog.level.console=warn -Dlog.level.birdsh=info
- name: log.level.console
value: info
- name: log.level.kingstar
value: info
- name: log.path
value: C:/home/logs/demo
- name: project.name
value: alarmmgr

Appenders:
Console: #输出到控制台
name: CONSOLE
target: SYSTEM_OUT
ThresholdFilter:
level: ${sys:log.level.console} # “sys:”表示:如果VM参数中没指定这个变量值,则使用本文件中定义的缺省全局变量值
onMatch: ACCEPT
onMismatch: DENY
PatternLayout:
pattern: “%d{yyyy-MM-dd HH:mm:ss,SSS}:[%4p] %t (%F:%L) - %m%n”
RollingFile: # 输出到文件,超过128MB归档
- name: ROLLING_FILE
ignoreExceptions: false
fileName: l o g . p a t h / {log.path}/ log.path/{project.name}.log
filePattern: “ l o g . p a t h / {log.path}/ log.path/{project.name}-%d{yyyy-MM-dd-HH-mm-ss}-%i.log”
PatternLayout:
pattern: “%d{yyyy-MM-dd HH:mm:ss,SSS}:[%4p] %t (%F:%L) - %m%n”
Policies:
SizeBasedTriggeringPolicy:
size: “2MB”
TimeBasedTriggeringPolicy:
interval: 1 # 每天归档一次 (单位由filePattern控制)
modulate: true # 以凌晨0点为界限归档

DefaultRolloverStrategy属性:

max: 1 # 保留3个归档周期的数据

    DefaultRolloverStrategy:
      max: 3
      Delete:
        maxDepth: 2
        basePath: ${log.path}
        IfLastModified:
          age: 5s

Loggers:
Root:
level: ${sys:log.level.kingstar}
AppenderRef:
- ref: CONSOLE
- ref: ROLLING_FILE
Logger: # 为com.birdsh包配置特殊的Log级别,方便调试
- name: com.demo
additivity: false
level: ${sys:log.level.kingstar}
AppenderRef:
- ref: CONSOLE
- ref: ROLLING_FILE
- name: com.ibatis
additivity: false
level: ${sys:log.level.demo}
AppenderRef:
- ref: CONSOLE
- ref: ROLLING_FILE
参考:https://blog.csdn.net/weixin_34185512/article/details/88162814

你可能感兴趣的:(日志)