log4j2记录器级别不工作

x759pob2  于 2021-06-04  发布在  Flume
关注(0)|答案(1)|浏览(339)

我使用的log4j2配置如下。记录器“org.apache.solr”是用level=“info”定义的,但是我也可以在日志文件中看到错误消息。我要确保的是,只有包“org.apache.solr.*”的信息级日志被发送到flume,其余的日志被记录到tomcat.log。

<?xml version="1.0" encoding="UTF-8" ?>
<Configuration status="INFO">
<Appenders>
<RollingRandomAccessFile name="tomcatLog" fileName="/home/jim/logs/tomcat.log" filePattern="/home/jim/logs/$${date:yyyy-MM}/tomcat-%d{yyyy-MM-dd-HH}-%i.log.gz">
    <PatternLayout>
        <Pattern>%d{dd MMM yyyy HH:mm:ss,SSS} %t %p %c{1.} [%F - %L] %m%n</Pattern>
    </PatternLayout>

    <Policies>
        <TimeBasedTriggeringPolicy interval="6" modulate="true"/>
        <SizeBasedTriggeringPolicy size="250 MB"/>
    </Policies>
</RollingRandomAccessFile>

<Flume name="solrEventLogger" compress="false">
    <Property name="channel.type">file</Property>
    <Property name="channel.checkpointDir">/home/jim/logs/solr/checkpoint</Property>
    <Property name="channel.dataDirs">/home/jim/logs/solr/data</Property>

    <Property name="sinks">agent1</Property>
    <Property name="agent1.channel">file</Property>
    <Property name="agent1.type">avro</Property>
    <Property name="agent1.hostname">127.0.0.1</Property>
    <Property name="agent1.port">61237</Property>
    <Property name="agent1.batch-size">1</Property>
            <PatternLayout>
                    <Pattern>%d{dd MMM yyyy HH:mm:ss,SSS} %t %p %c{1.} [%F - %L] %m%n</Pattern>
            </PatternLayout>

    <Property name="processor.type">failover</Property>
</Flume>
</Appenders>
<Loggers>
  <Logger name="org.apache.solr" additivity="true" level="info">
    <AppenderRef ref="solrEventLogger" />
  </Logger>
  <Root level="warn">
    <AppenderRef ref="tomcatLog"/>
  </Root>
</Loggers>
</Configuration>
hgqdbh6s

hgqdbh6s1#

levelapi指定允许传递配置级别和更特定级别的消息。因此,指定level=info,允许warn传递。

相关问题