解答例 - 実習課題1 - 7.LAYOUT
(実習課題1)
全てのレベルのログイベントを故意に発生させ、WARN 以上ログイベントが発生した場合のみ、ログとして出力されるプログラムを作成しなさい。
- PatternLayout を使用すること。
- Appender は何を使用しても良い。
- 様々な Pattern でログの出力を試してみること。
解答例
/**
* Log4jExample.java
* TECHSCORE Java Jakarta Log4J 7章 実習課題1
*
* Copyright (c) 2004 Four-Dimensional Data, Inc.
*/
package com.techscore.log4j.chapter7.exercise1;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
public class Log4jExample {
public static void main(String[] args) {
if (args.length == 0) {
System.out.println("引数に設定ファイルを指定してください");
return;
}
//インスタンスの生成
Logger logger = (Logger)Logger.getInstance("patternLayoutLogger");
PropertyConfigurator.configure(args[0]);
logger.debug("debug!!");
logger.info("info!!");
logger.warn("warn!!");
logger.error("error!!");
logger.fatal("fatal!!");
}
}
▼以下は設定ファイルです。
#Log4J 7章 実習課題1
log4j.logger.patternLayoutLogger=WARN,Appender
log4j.appender.Appender=org.apache.log4j.ConsoleAppender
log4j.appender.Appender.Target = System.out
log4j.appender.Appender.layout=org.apache.log4j.PatternLayout
#様々なパターンを適用
log4j.appender.Appender.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
#log4j.appender.Appender.layout.ConversionPattern=%d [%t] %10p %c %C - %m%n
#log4j.appender.Appender.layout.ConversionPattern=%d{dd MMM yy HH} [%t] %-5p %c %r ms - %m%n

