解答例 - 実習課題1 - 1.Log4J の基本
(実習課題1)
引き数にファイルを指定し、そのファイルのサイズが5キロバイトより大きい場合は出力レベルが warn 、10キロバイトより大きい場合は出力レベルが error となるログを出力するプログラムを作成しなさい。
- 出力先、出力フォーマットはBasicConfiguratorクラスを使用して指定すること
解答例
/**
* Log4jExample.java
* TECHSCORE Java Jakarta Log4J 1章 実習課題1
*
* Copyright (c) 2004 Four-Dimensional Data, Inc.
*/
package com.techscore.log4j.chapter1.exercise1;
import java.io.File;
import java.io.IOException;
import org.apache.log4j.BasicConfigurator;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
public class Log4jExample {
public static void main(String[] args) throws IOException {
if (args.length == 0) {
System.out.println("引数にファイル名を指定してください");
return;
}
File file = new File(args[0]);
//インスタンスの生成
Logger logger = (Logger)Logger.getInstance(Log4jExample.class);
BasicConfigurator.configure();
//ログレベルが WARN 以上の場合にログイベントが発生するように設定
logger.setLevel(Level.WARN);
if (file.length() > 5000 && file.length() <= 10000) {
//warn
logger.warn("5KBより大きいファイルです");
} else if (file.length() > 10000) {
//error
logger.error("10KBより大きいファイルです");
} else {
//debug(出力されないレベル)
logger.debug(file + "を読み込みました");
}
}
}

