Log4j2を使ってみよう!
Log4jの後継、Log4j2を使ってみよう
Log4jは2015年にEOLとなり、メンテナンスが終了しています。新規プロジェクトには後継となるLog4j2の使用が推奨されています。一見して単純なバージョンアップで、Jarファイルの差し替えで何とかなりそうな気配がしますが、実際にはそんなに簡単にはいきません。そのせいで普及率がイマイチなのですが、ここでは、Log4j2の簡単な使い方を紹介します。
Jarファイルの取得
ライブラリは以下の場所からダウンロードできます。
http://logging.apache.org/log4j/2.x/download.html
プログラム
package jp.co.log4j;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
public class LogTest {
/**
* Log4j
*/
private Logger log = LogManager.getLogger(LogTest.class);
LogTest() {
log.info("じょうほうがあります");
log.error("ただしくありません");
log.debug("でばっぐするよ");
try {
throw new Exception();
} catch (Exception e) {
log.error("れいがい", e);
}
}
/**
* @param args
*/
public static void main(String[] args) {
new LogTest();
}
}
設定ファイル(log4j2.xml)
<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
<appenders>
<Console name="console">
<PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%-5p] %m (%C{1}:%L)%n" />
</Console>
<RollingFile name="file" fileName="log/system.log" filePattern="log/system_{yyyy-MM-dd}%d.log">
<PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%-5p] %m (%C{1}:%L)%n"/>
<Policies>
<TimeBasedTriggeringPolicy />
</Policies>
</RollingFile>
</appenders>
<loggers>
<root level="info">
<appender-ref ref="console" />
<appender-ref ref="file" />
</root>
</loggers>
</configuration>
実行結果


