Apache汎用ログツールであるcommons-loggingとLog4jの使い方

Apache Commons Loggingは異なるログフレームワーク(Log4j、Logback、java.util.loggingなど)で使用可能な汎用的なロギングツールです。以下は、commons-loggingとLog4jを使用する場合の手順です

  1. Mavenなどのビルドツールを使用して、commons-loggingとLog4jの依存関係をプロジェクトに追加できます。
<dependency>
    <groupId>commons-logging</groupId>
    <artifactId>commons-logging</artifactId>
    <version>1.2</version>
</dependency>

<dependency>
    <groupId>log4j</groupId>
    <artifactId>log4j</artifactId>
    <version>1.2.17</version>
</dependency>
  1. Log4jを設定するために、src/main/resources ディレクトリに log4j.properties ファイルを作成して、次のように記述します。
log4j.rootLogger=DEBUG, stdout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d [%t] %-5p %c - %m%n

この設定ファイルは、ログをコンソールに出力します。

  1. コード内にCommons-Loggingを利用してログを出力する。Loggerオブジェクトを取得するには以下の方法がある。
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

public class MyClass {
    private static final Log logger = LogFactory.getLog(MyClass.class);

    public void doSomething() {
        logger.debug("Debug message");
        logger.info("Info message");
        logger.warn("Warn message");
        logger.error("Error message");
    }
}
  1. 実行するとログの出力がコンソールに出力されます。

他のログフレームワークを利用したい場合はクラスパスに依存ライブラリを追加し、設定を行ってください。

bannerAds