【问题标题】:Log4j2 - Asynclogger Rolling File Appender not rolling daily per hourLog4j2 - Asynclogger 滚动文件附加程序不是每天每小时滚动
【发布时间】:2014-06-05 04:01:58
【问题描述】:

这是我的 log4j2.xml

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="OFF">

    <Appenders>
            <!-- Generate STDOUT in console -->
            <Console name="CONSOLE" target="SYSTEM_OUT">
                    <PatternLayout pattern="%d %-5p [%t] %C{2} (%F:%L) - %m%n" />
            </Console>

            <!-- Generate rolling log for router with per hour interval policy -->
            <RollingFile name="RouterRollingFile" fileName="/apps/bea/mb-logs/router.log"
                     immediateFlush="false" filePattern="/apps/bea/mb-logs/router.%d{yyyy-MM-dd-HH}-%i.log">
                    <PatternLayout>
                            <pattern>%d{yyyy-MM-dd HH:mm:ss} %5p [%t] (%F:%L) - %m%n</pattern>
                    </PatternLayout>
                    <Policies>
                            <TimeBasedTriggeringPolicy interval="1" modulate="true"/>
                    </Policies>
                    <!-- <DefaultRolloverStrategy fileIndex="max" max="24" /> -->
            </RollingFile>
    </Appenders>

    <Loggers>
            <AsyncLogger name="com.tritronik.mb.router" level="info"
                    additivity="false" includeLocation="true">
                    <AppenderRef ref="RouterRollingFile" />
            </AsyncLogger>
            <!-- <Root level="info">
                    <appender-ref ref="CONSOLE" />
            </Root> -->
    </Loggers>

我想实现每小时滚动的每日滚动文件,到目前为止,我还无法生成格式正确的日志,而且我记得,interval 参数似乎是按天而不是按小时递增。

我想实现这个

router.log --> 当前写入的文件

router.log.2014-06-20-00

router.log.2014-06-20-01

...

router.log.2014-06-20-23

router.log.2014-06-21-00

...

我却做到了这一点

路由器日志

router.log.2014-06-20-1 --> 一天的日志

我已经能够使用通常的 log4j 做到这一点,但是 io 性能下降并迫使我使用 log4j2,但我偶然发现了这个问题。

我哪里错了?还是 log4j2 还不支持这个是真的?

谢谢

【问题讨论】:

    标签: java logging log4j log4j2


    【解决方案1】:

    您可能发现了一个错误。

    这仅发生在异步记录器上还是在您配置普通(同步)记录器时发生?

    另外,您是否尝试过使用如下所示的 filePattern: filePattern="/apps/bea/mb-logs/$${date:yyyy-MM-dd}/router.%d{yyyy-MM-dd-HH}.log"? 我有一个(诚然是模糊的)怀疑 $${date:...} 部分可能是相关的。

    如果以上都没有影响,您能否在 log4j2 问题跟踪器上提交 Jira 票证? https://issues.apache.org/jira/browse/LOG4J2

    【讨论】:

    猜你喜欢
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    • 2021-07-05
    • 2015-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-11
    相关资源
    最近更新 更多