1

スタンドアロン アプリケーションに Perf4j を統合しました。ロギング システムとして SLF4J / logback を使用しています。

統計は perfs.log に正しく生成されますが、graphs.log ファイルには何も生成されません。

これが私の logback.xml 構成ファイルです。

<configuration>
    <appender name="graphs_file" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <File>logs/graphs.log</File>
        <encoder>
            <Pattern>%m%n</Pattern>
        </encoder>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>logs/graphs.%d{yyyy-MM-dd}.log</FileNamePattern>
        </rollingPolicy>
    </appender>

    <appender name="graph_mean" class="org.perf4j.logback.GraphingStatisticsAppender">
        <param name="GraphType" value="Mean"/>
        <param name="TagNamesToGraph" value="g2p-load,p2g-load,phonetize-request,graphetize-request,full-request"/>
        <appender-ref ref="graphs_file"/>
    </appender>

    <appender name="perf_file" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <File>logs/perfs.log</File>
        <encoder>
            <Pattern>%date %-5level [%thread] %logger{36} [%file:%line] %msg%n</Pattern>
        </encoder>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>logs/perfs.%d{yyyy-MM-dd}.log</FileNamePattern>
        </rollingPolicy>
    </appender>

    <appender name="log_file" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <File>logs/veriname.log</File>
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{5} - %msg%n</pattern>
        </encoder>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>logs/veriname.%d{yyyy-MM-dd}.log</FileNamePattern>
        </rollingPolicy>
    </appender>

    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{5} - %msg%n</pattern>
        </encoder>
    </appender>

    <appender name="coalescer" class="org.perf4j.logback.AsyncCoalescingStatisticsAppender">
        <param name="TimeSlice" value="60000"/>

        <appender-ref ref="graph_mean"/>

        <appender-ref ref="perf_file"/>
    </appender>

    <logger name="org.perf4j.TimingLogger" additivity="false">
        <level value="INFO"/>
        <appender-ref ref="coalescer"/>
    </logger>

    <root>
        <appender-ref ref="console" />
        <appender-ref ref="log_file" />
    </root>
</configuration>

コードでは、私は使用しています:

StopWatch watch = new Slf4JStopWatch("phonetize-request");

奇妙なことに、perfs.log ファイルの集計ではうまく機能しますが、graphs.log では何も起こりません。

私は何を間違っていますか?

4

0 に答える 0