ログツールの概要

2988 ワード

1
なぜログを使うのですか?私たちはログを使ってSystemを使うことを理解しています.out.println()の出力による差可読性.
ログの原理?出力前に複数のフラグビットを追加して異なるレベルの出力を実現し、出力スタイル、出力レベル、出力目的はプロファイルで構成できます.
二各種ログツール
(一)JDKログ
import java.util.logging.*;
public class JDKLogTest {

	/**
	 * @param args
	 */
	public static Logger log = Logger.getLogger(JDKLogTest.class.toString());
	static {
		Handler console = new ConsoleHandler();
		console.setLevel(Level.FINE);
	}
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		log.setLevel(Level.FINE);
		log.finest("finest");
		log.finer("finer");
		log.fine("fine");
		log.config("config");
		log.info("info");
		log.warning("warning");
		log.severe("servere");
	}

}
1.ここでは特にロゴに注意してください.setLevel()とconsole.setLevel()の違いは、ログ・レベルを設定し、このloggerが記録するメッセージ・レベルを指定することです.この値より下のレベルのメッセージを破棄します.レベル値を使用できます.OFFしてログをクローズします.
後者はログレベルを設定し、Handlerが記録する情報レベルを指定します.値以下の情報レベルは破棄されます.その目的は、開発者がほとんどのログを開くことを許可することですが、特定のHandlersに情報を送信することを制限することです.
すなわち、前者は、ログに記録されるメッセージのレベルを規定し、後者は、ログに記録されるメッセージに対してコンソールに出力するメッセージを規定する.
2.JDK LogはデフォルトでINFO以上の情報を出力するコンソール出力があるので、ここではINFOレベル以上の情報が2回出力されます.
(二)Log 4 jコントロールの使用方法はJDKログに似ているが、より簡単である.
(3)commons-loggingコントロール:本物のログツールではなく、Log 4 jがあればcommons-loggingは出力をそのままlog 4 jに渡し、log 4 jがなければ.JDKのログツールに出力が渡されます.
三Log 4 j
1.Log 4 jはJDKが持っているログツールより優れており、Log 4 j内部では大量の最適化、キャッシュ作業を行い、出力に必要なリソースがより小さい.
2.Log 4 jのプロファイルはLog 4 jである.propertiesは、起動時にclasspathのlog 4 jを自動的にロードする.propertiesはログ4 jを初期化する.
3.ログレコーダLogger
public Logger log = Logger.getLogger(Log 4 jConfigTest.class)/パラメータはこのログレコーダの名前を表します.
4.出力先Appender
以下に、ログ4 jのプロファイルにおけるコードを示すが、一般的なログのプロファイルは、例えば、出力レベル、どこへ出力するか、どのような付加情報を出力するか、出力フォーマットなどがプロファイルlog 4 jに記載されている.properties
## LOGGERS ##
#define a logger
#log4j.rootLogger=DEBUG,console,file
log4j.rootLogger=INFO,console,file
## APPENDERS ##
# define an appender named console, which is set to be a ConsoleAppender
log4j.appender.console=org.apache.log4j.ConsoleAppender
# define an appender named file, which is set to be a RollingFileAppender
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=d:/demo_log.txt
#set the log's size
log4j.appender.file.MaxFileSize=1000KB
log4j.appender.file.MaxBackupIndex=20
## LAYOUTS ##
# assign a SimpleLayout to console appender
log4j.appender.console.layout=org.apache.log4j.SimpleLayout
# assign a PatternLayout to file appender
log4j.appender.file.layout=org.apache.log4j.PatternLayout
# For debug
# log4j.appender.file.layout.ConversionPattern=[%-5p][%t][%C][%d{yyyy-MM-dd HH:mm:ss}] %m%n
# For deployment
log4j.appender.file.layout.ConversionPattern=[%-5p][%d{yyyy-MM-dd HH:mm:ss}] %m%n