log4j2 自動削除ログの設定方法
RollingFileAppenderとTimeBasedTriggeringPolicyを使用すると、ログ4j2を自動で削除するように設定できます。サンプル構成を以下に示します。
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
<Appenders>
<RollingFile name="RollingFile" fileName="logs/application.log"
filePattern="logs/application-%d{MM-dd-yyyy}.log">
<PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
<Policies>
<TimeBasedTriggeringPolicy interval="1" modulate="true"/>
</Policies>
</RollingFile>
</Appenders>
<Loggers>
<Root level="info">
<AppenderRef ref="RollingFile"/>
</Root>
</Loggers>
</Configuration>
上記の構成は logs/application.log ファイルにログを書き込む RollingFileAppender を作成します。ファイル名は logs/application-%d{MM-dd-yyyy}.log の形式を使用し、新しいログ ファイルが毎日作成されます。
TimeBasedTriggeringPolicy interval=”1″ modulate=”true”は、ログファイルのローテーションポリシーを指定しています。間隔を表すintervalは1(日)に設定され、modulateはtrueに設定することでローテーション時に自動的にファイル名が変更され、日付が追加されます。
要件に応じ、ファイル名やローリングポリシーのパラメータを修正して、具体的なニーズを満たすことができます。