【问题标题】:Filtering out Hibernate logs in Log4j2 file过滤掉 Log4j2 文件中的 Hibernate 日志
【发布时间】:2015-03-28 23:05:29
【问题描述】:

我有一个 log4j2.xml 文件,如下所示。它正在工作,但它获取了很多 Hibernate 和 GWT 日志文件。如何排除这些包,或者如何让我的日志文件仅包含来自我的包层次结构的日志记录?

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO">
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
        </Console>
        <File name="FileAllLogs" fileName="logs/MyProj_all.txt" immediateFlush="true" append="true">
            <PatternLayout pattern="%d{yyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
        </File>
        <File name="FileAllErrors" fileName="logs/MyProj_errors.txt" immediateFlush="true" append="true">
            <PatternLayout pattern="%d{yyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
        </File>
    </Appenders>
    <Loggers>
        <Root level="debug">
            <AppenderRef ref="Console" />
            <AppenderRef ref="FileAllLogs"/>
        </Root>
        <Root level="error">
            <AppenderRef ref="FileAllErrors"/>
        </Root>
    </Loggers>
</Configuration>

【问题讨论】:

    标签: java hibernate logging log4j log4j2


    【解决方案1】:

    删除您的“调试”根记录器。然后添加以下记录器,它将仅记录来自给定“some.dummy.package”的日志

    <logger name="some.dummy.package" level="debug" additivity="false">
        <AppenderRef ref="Console" />
        <AppenderRef ref="FileAllLogs"/>
     </logger>
    

    所以在最后你将拥有

    <?xml version="1.0" encoding="UTF-8"?>
    <Configuration status="INFO">
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
        </Console>
        <File name="FileAllLogs" fileName="logs/MyProj_all.txt" immediateFlush="true" append="true">
            <PatternLayout pattern="%d{yyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
        </File>
        <File name="FileAllErrors" fileName="logs/MyProj_errors.txt" immediateFlush="true" append="true">
            <PatternLayout pattern="%d{yyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
        </File>
    </Appenders>
    <Loggers>
        <Root level="error">
            <AppenderRef ref="FileAllErrors"/>
        </Root>
        <Logger name="some.dummy.package" level="debug" additivity="false">
             <AppenderRef ref="Console" />
             <AppenderRef ref="FileAllLogs"/>
        </Logger>
    </Loggers>
    </Configuration>
    

    【讨论】:

      猜你喜欢
      • 2015-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多