我正在研究 Spring 并使用 log4j 进行日志记录。现在我有一个特定要求将某些内容记录在特定文件中,这里是审计文件。以下是我为此使用的配置。
尝试使用以下语法访问该特定文件,但两者都不起作用并显示以下语法。
private Logger logger = Logger.getLogger("AUDIT_APPENDER");
private Logger logger = Logger.getLogger("audit");
配置:名称:默认状态:“调试”
属性:属性:名称:base_pattern_layout 值:“%d{DEFAULT}{GMT+0} %X{user-identifier}”
附加器:
RollingFile:
- name: Test1_APPENDER
fileName: ${LOG_DIR}/service.log
filePattern: ${LOG_DIR}/test.%d{yyyyMMdd}.log.gz
PatternLayout:
Pattern: "app > ${base_pattern_layout} %-5level %logger{8}:%line - %msg%n"
Policies:
TimeBasedTriggeringPolicy:
interval: "1"
DefaultRolloverStrategy:
Delete:
basePath: ${LOG_DIR}
IfFileName:
glob: "service.*.log.gz"
IfLastModified:
age: "1d"
- name: AUDIT_APPENDER
fileName: ${LOG_DIR}/audit.log
filePattern: ${LOG_DIR}/audit.%d{yyyyMMdd}.log.gz
PatternLayout:
Pattern: "aud > ${base_pattern_layout} %-5level %msg%n"
Policies:
TimeBasedTriggeringPolicy:
interval: "1"
DefaultRolloverStrategy:
Delete:
basePath: ${LOG_DIR}
IfFileName:
glob: "audit.*.log.gz"
IfLastModified:
age: "1d"
Console:
- name: Test1_APPENDER
target: SYSTEM_OUT
PatternLayout:
Pattern: "app > ${base_pattern_layout} %logger{8}:%line - %msg%n"
- name: AUDIT_APPENDER
target: SYSTEM_OUT
PatternLayout:
Pattern: "aud > ${base_pattern_layout} - %msg%n"
记录器:
Root:
level: INFO
AppenderRef:
ref: EXT_APPENDER
Logger:
- name: com.test
additivity: false
level: debug
AppenderRef:
ref: Test1_APPENDER
- name: audit
additivity: false
level: INFO
AppenderRef:
ref: AUDIT_APPENDER