我正在尝试改进我的服务器上的日志记录(log4j2),我的所有软件包都使用一个公共配置文件,它有一些像这样的全局模式:
<Properties>
<Property name="patternLayout1"> some pattern </Property>
<Property name="patternLayout2"> other pattern </Property>
</Properties>
<Appenders>
<Console name="GENERAL_SYNC_CONSOLE" target="SYSTEM_OUT">
<PatternLayout pattern="${patternLayout1}"/>
</Console>
</Appenders>
<!-- some configuration is below -->
</Appenders>
如何在此文件中配置一个/多个软件包使用patternLayout2
进行日志记录而不是patternLayout1
?
答案 0 :(得分:1)
我找到了一个很好的example给你。您可以为不同的包定义category
,在其中您可以定义appender-ref
您的appender的引用是什么。您可以在官方doc中阅读相关内容。
我希望它有所帮助。 ;)
答案 1 :(得分:0)
试试这个
<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
<Properties>
<Property name="pattern1" value="PATTERN1: -> %msg%n"/>
<Property name="pattern2" value="PATTERN2: -> %msg%n"/>
</Properties>
<Appenders>
<Console name="console1">
<PatternLayout pattern="${pattern1}"/>
</Console>
<Console name="console2">
<PatternLayout pattern="${pattern2}"/>
</Console>
</Appenders>
<Loggers>
<Logger name="your.package" level="debug" additivity="false">
<AppenderRef ref="console2"/>
</Logger>
<Root level="debug">
<AppenderRef ref="console1"/>
</Root>
</Loggers>
</Configuration>