Log4j2根附加器未正确参数化

问题描述

我使用Log4j2来根据从JmsListener接收到的参数进行记录, 因此,我将动态记录在文件1或2中,该workds文件中包含2个附加程序,但是在我的服务器附加程序中未写入任何内容,例如,它嵌入了服务器日志和spring上下文初始化。

在我的代码中,我在日志记录中添加一个参数,以将其设置为将其用作过滤器的javaclass

这是我的配置

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN" monitorInterval="30">
    <Properties>
        <Property name="LOG_PATTERN">
            %d{yyyy-MM-dd HH:mm:ss,SSS} %5p --- [%15.15t] %-40.40c{1.} : %m%n%ex
        </Property>
        <Property name="PERF_LOG_PATTERN">
            %d{yyyy-MM-dd HH:mm:ss,SSS};%5p;%t;%m;%n
        </Property>
    </Properties>

    <Appenders>
        <RollingFile name="ServerAppender" fileName="logs/server-sg.log"
                     filePattern="logs/server-sg-%d{yyyy-MM-dd}-%i.log">
            <PatternLayout>
                <Pattern>${LOG_PATTERN}</Pattern>
            </PatternLayout>
            <Policies>
                <TimeBasedTriggeringPolicy/>
            </Policies>
        </RollingFile>
        <RollingFile name="ServerAppenderV2" fileName="logs/server-sgV2.log"
                     filePattern="logs/server-sg-%d{yyyy-MM-dd}-%i.log">
            <PatternLayout>
                <Pattern>${LOG_PATTERN}</Pattern>
            </PatternLayout>
            <Policies>
                <TimeBasedTriggeringPolicy/>
            </Policies>
        </RollingFile>
        <RollingFile name="FileAppender" fileName="logs/sg.log"
                     filePattern="logs/sg-%d{yyyy-MM-dd}-%i.log">
            <PatternLayout>
                <Pattern>${LOG_PATTERN}</Pattern>
            </PatternLayout>
            <Policies>
                <TimeBasedTriggeringPolicy/>
            </Policies>
        </RollingFile>
            <RollingFile name="FileAppenderV2" fileName="logs/sgV2.log"
                     filePattern="logs/sgV2-%d{yyyy-MM-dd}-%i.log">
            <PatternLayout>
                <Pattern>${LOG_PATTERN}</Pattern>
            </PatternLayout>
            <Policies>
                <TimeBasedTriggeringPolicy/>
            </Policies>
        </RollingFile>
        <RollingFile name="PerfAppender" fileName="logs/perf.log"
                     filePattern="logs/perf-%d{yyyy-MM-dd}-%i.log">
            <PatternLayout>
                <Pattern>${PERF_LOG_PATTERN}</Pattern>
            </PatternLayout>
            <Policies>
                <TimeBasedTriggeringPolicy/>
            </Policies>
        </RollingFile>
                <RollingFile name="PerfAppenderV2" fileName="logs/perfV2.log"
                     filePattern="logs/perfV2-%d{yyyy-MM-dd}-%i.log">
            <PatternLayout>
                <Pattern>${PERF_LOG_PATTERN}</Pattern>
            </PatternLayout>
            <Policies>
                <TimeBasedTriggeringPolicy/>
            </Policies>
        </RollingFile>
    </Appenders>

    <Loggers>
        <AsyncLogger name="sg.app" level="info" additivity="false">
            <AppenderRef ref="FileAppender">
                <MarkerFilter marker="V1" onMatch="ACCEPT" onMismatch="DENY"/>
            </AppenderRef>
                <AppenderRef ref="FileAppenderV2">
                <MarkerFilter marker="V2" onMatch="ACCEPT" onMismatch="DENY"/>
            </AppenderRef>
                <AppenderRef ref="PerfAppender">
                <MarkerFilter marker="perf" onMatch="ACCEPT" onMismatch="DENY"/>
            </AppenderRef>
                <AppenderRef ref="PerfAppenderV2">
                <MarkerFilter marker="perfV2" onMatch="ACCEPT" onMismatch="DENY"/>
            </AppenderRef>

        
        </AsyncLogger>

        <Root level="info">
                <AppenderRef ref="ServerAppender">
                <MarkerFilter marker="V1" onMatch="ACCEPT" onMismatch="DENY"/>
            </AppenderRef>

            <AppenderRef ref="ServerAppenderV2">
                <MarkerFilter marker="V2" onMatch="ACCEPT" onMismatch="DENY"/>
            </AppenderRef>

        </Root>
    </Loggers>

</Configuration>

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)