目次へ

解答例 - 実習課題1 - 2.設定ファイルの利用

(実習課題1)

ログ出力レベルが DEBUG と FATAL の Category オブジェクトを生成し、ログを出力するプログラムを作成しなさい。

  • Category オブジェクトのログ出力レベルは設定ファイルに記述すること。
  • Appender と Layout も設定ファイルに記述すること。
  • Appender は ConsoleAppender を使用すること。
  • Layout は PatternLayout を使用すること。
  • ログの出力は、それぞれの Category オブジェクトについて、 全てのログイベントを発生させること。
  • 出力したログが、どちらの Category オブジェクトによるものかわかるようにしておくこと。

解答例

/**
 * Log4jExample.java
 * TECHSCORE Java Jakarta Log4J 2章 実習課題1 
 *
 * Copyright (c) 2004 Four-Dimensional Data, Inc.
 */

package com.techscore.log4j.chapter2.exercise1;

import java.io.IOException;

import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;

public class Log4jExample {

    public static void main(String[] args) throws IOException {
        if (args.length == 0) {
            System.out.println("引数に設定ファイルを指定してください");
            return;
        }

        //インスタンスの生成
        Logger loggerDebug = (Logger)Logger.getInstance("debugLogger");
        Logger loggerFatal = (Logger)Logger.getInstance("fatalLogger");
        PropertyConfigurator.configure(args[0]);

        loggerDebug.debug("(DEBUG)debug!!!");
        loggerDebug.info("(DEBUG)info!!!");
        loggerDebug.warn("(DEBUG)warn!!!");
        loggerDebug.error("(DEBUG)error!!!");
        loggerDebug.fatal("(DEBUG)fatal!!!");

        loggerFatal.debug("(FATAL)debug!!!");
        loggerFatal.info("(FATAL)info!!!");
        loggerFatal.warn("(FATAL)warn!!!");
        loggerFatal.error("(FATAL)error!!!");
        loggerFatal.fatal("(FATAL)fatal!!!");

    }
}

▼以下は、設定ファイルです。

#Log4J 2章 実習課題1

#debugLogger
log4j.logger.debugLogger=DEBUG,debugAppender

#fatalLogger
log4j.logger.fatalLogger=FATAL,fatalAppender


# APPENDER
log4j.appender.debugAppender=org.apache.log4j.ConsoleAppender
log4j.appender.fatalAppender=org.apache.log4j.ConsoleAppender

# PatternLayout
log4j.appender.debugAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.debugAppender.layout.ConversionPattern=%-4r [%t] %-5p %c - %m%n

log4j.appender.fatalAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.fatalAppender.layout.ConversionPattern=%-4r [%t] %-5p %c - %m%n

↑このページの先頭へ

こちらもチェック!

PR
  • XMLDB.jp