解答例 - 実習課題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 + "を読み込みました"); } } }