在 Log4j2 中,设置 AppenderRef
或记录器级别可以通过配置文件来完成。Log4j2 支持多种配置格式,包括 XML、JSON、YAML 和 Properties 文件。以下是如何在不同配置文件中设置 AppenderRef
和记录器级别的示例。
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</Console>
</Appenders>
<Loggers>
<Logger name="com.example" level="debug" additivity="false">
<AppenderRef ref="Console"/>
</Logger>
<Root level="error">
<AppenderRef ref="Console"/>
</Root>
</Loggers>
</Configuration>
{
"configuration": {
"status": "WARN",
"appenders": {
"console": {
"name": "Console",
"target": "SYSTEM_OUT",
"PatternLayout": {
"pattern": "%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"
}
}
},
"loggers": {
"logger": {
"name": "com.example",
"level": "debug",
"additivity": false,
"appenderRef": {
"ref": "Console"
}
},
"root": {
"level": "error",
"appenderRef": {
"ref": "Console"
}
}
}
}
}
Configuration:
status: WARN
Appenders:
Console:
name: Console
target: SYSTEM_OUT
PatternLayout:
pattern: "%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"
Loggers:
Logger:
- name: com.example
level: debug
additivity: false
AppenderRef:
- ref: Console
Root:
level: error
AppenderRef:
- ref: Console
status = WARN
name = PropertiesConfig
appender.console.type = Console
appender.console.name = Console
appender.console.target = SYSTEM_OUT
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = %d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n
logger.com.example.name = com.example
logger.com.example.level = debug
logger.com.example.additivity = false
logger.com.example.appenderRef.console.ref = Console
rootLogger.level = error
rootLogger.appenderRef.console.ref = Console
Console
appender,它将日志输出到控制台。AppenderRef
。在上述示例中,我们定义了一个名为 com.example
的记录器,其日志级别为 debug
,并且它引用了 Console
appender。AppenderRef
。在上述示例中,根记录器的日志级别为 error
,并且它引用了 Console
appender。在每种配置文件中,你可以通过设置 level
属性来定义记录器的日志级别。常见的日志级别包括 trace
、debug
、info
、warn
、error
和 fatal
。
领取专属 10元无门槛券
手把手带您无忧上云