log4netからlog4j2への移行

PetrNechvátal

log4j2を使用するJavaのプロジェクトに取り組んでおり、log4netを使用して.NETの古いプロジェクトと同じようにログを設定したいと考えています。

log4j2で行う方法、私が理解できないことがいくつかあります。

log4j2アペンダーに現在の日付をログファイルに入れて、毎日新しいログファイルを作成させるにはどうすればよいですか?TimeBasedTriggeringPolicyを使用しようとしましたが、古いログの名前に日付を入れることができましたが、現在のログには日付がありません。fileNameで%d {yyyyMMdd}を使用しようとしましたが、機能しませんでした。log4j2のdatePatternに相当するものはありますか?

これが.NETプロジェクトの元のアペンダーです。

<appender name="DebugRollingFileAppender" type="log4net.Appender.RollingFileAppender">
    <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
    <file value="c:\ConcertCTS\Logs\" />
    <appendToFile value="true" />
    <datePattern value="yyyyMMdd'_debug.log'" />
    <staticLogFileName value="false" />
    <encoding value="utf-8" />
    <maximumFileSize value="50MB" />
    <rollingStyle value="Composite" />
    <maxSizeRollBackups value="-1" />
    <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date{hh:mm:ss.fffzzz} [Thread: %-2thread] %-5level - %message%newline%exception" />
    </layout>
</appender>

そして、これが私がlog4j2のために思いついたものです。

    <RollingFile name="DebugRollingAppender" fileName="/EnvoyLogs/debug.log"
        filePattern="/EnvoyLogs/%d{yyyyMMdd}_debug.%i.log">
        <PatternLayout>
            <Pattern>%d [%t] %p %c{8.} %m%n</Pattern>
        </PatternLayout>
        <Policies>
            <TimeBasedTriggeringPolicy />
            <SizeBasedTriggeringPolicy size="50 MB" />
        </Policies>
        <DefaultRolloverStrategy max="100"
            compressionLevel="0" />
    </RollingFile>

また、古いログで1番になるのも嫌いです。これは、filePatternの%iであることがわかっていますが、ログを特定のサイズを超えたときに分割して番号を付ける必要があるため、ログを片付けたくありません。それで何かできますか?

前もって感謝します!

レムコポプマ

Log4j2は現在(v 2.1)、あなたが説明したことを実行できません。log4j2Jira課題トラッカーで機能リクエストを発生させることをお勧めします。私はファイル名に最初から日付を入れるという考えが好きで、完全に理にかなっています。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

log4j 1.2からlog4j2への移行

分類Dev

log4jからlog4j2への移行-プロパティファイルの設定

分類Dev

log4j2からslf4jへのブリッジ

分類Dev

Log4jBridgeを使用してlog4j1からlog4j2に移行します

分類Dev

Log4j1.xからLog4j2.1.1への移行の問題

分類Dev

log4j 1.2からlog4j 2への移行で、DailyRollingFileAppenderクラスをどうするか?

分類Dev

log4jからlog4j2のカスタムRollingPolicy

分類Dev

log4j2のCustomInjections

分類Dev

SpringBootのLog4j2

分類Dev

Log4j2のLog4jNestedDiagnosticContextFilter

分類Dev

Log4j2のLog4jNestedDiagnosticContextFilter

分類Dev

Log4j2のLog4jNestedDiagnosticContextFilter

分類Dev

Log4j2 and Spring 4

分類Dev

Log4j2 and Spring 4

分類Dev

log4j1.2からlog4j2への移行-すべてのアペンダーとローリングファイル戦略のリストを取得する方法

分類Dev

AppenderSkeleton(Log4j2)

分類Dev

Log4j2 monitorInterval performance

分類Dev

log4j2のxwExの意味?

分類Dev

log4j2と同等のlog4J setSyslogHost(...)

分類Dev

log4j.defaultInitOverrideと同等のlog4j2

分類Dev

Log4j2エラーの取得

分類Dev

Log4J2の加法性(2.5)

分類Dev

log4j2無制限のRollingFile

分類Dev

Log4j2 file created but not log written

分類Dev

log4j2 doesnt write log in files

分類Dev

Log4j2 / SLF4JとJavaの11

分類Dev

log4j2なぜlog4jではなくそれを使用するのですか?

分類Dev

CastleILoggerとlog4netを使用したセマンティックロギングへの移行

分類Dev

Log4j2 - log4j2.xml configuration