log 4 j概要
5859 ワード
1、Log 4 jとは何ですか.
Log 4 jは簡単に言えばログを覚えるためのもので、プログラム猿のデバッグと分析を助けるのに役立ちます.彼の役割は大きいですが、私たちはまだ利用していません.ここで紹介します.詳細はlog 4 j公式サイトにアクセスしてください.
2、Log 4 jの概念
Log 4 jには、Logger、Appender、Layoutの3つの主要なコンポーネントがあります. Log 4 jは、開発者が複数のLoggerを定義することを許可し、各Loggerは自分の名前を持ち、Logger間は名前によって隷属関係を示す.ロガーはRootと呼ばれ、永遠に存在し、名前検索や参照ができず、ロガーを通過することができます.getRootLogger()メソッドを取得し、他のLoggerはLoggerを通過する.getLogger(String name)メソッド. Appenderは、すべてのlog情報をどこに保存するかを示すために使用され、Log 4 jではconsole、files、GUI components、NT Event Loggersなど、複数のappenderがサポートされています.1つのLoggerは複数のAppenderを持つことができます.つまり、Log情報を画面に出力し、1つのファイルに格納することができます. Layoutの役割は、ログ情報の出力方式、すなわち出力の情報をフォーマットすることである.
3、Log 4 jのプロファイル
プロファイルを使わずにプログラムで構成を実現できるが、この方法は現在のシステム開発では明らかに望ましくなく、プロファイルを採用できる場所では必ずプロファイルを使用しなければならない.Log 4 jは、XML形式とJavaのproperty形式の2つの形式のプロファイルをサポートしています.
rootの設定
フォーマットはlog 4 j.rootLogger=[level],appenderName, ...,ここでlevelは、出力情報が必要なレベル(info,debugなど)を設定し、後にappenderがあり、ログ情報がどこに出力されるかを指定することに相当し、上記構成のCONSOLE,DEFAULTのように複数の宛先を同時に指定することができる.
appenderの設定
Appender構成ログの出力先
翌日元のファイルのファイル名をxxに変更します.yyyy-MM-dd
Log 4 jが提供するappenderには以下のものがあります.
プロファイルのパス
Append=trueは、元のファイルを上書きせずに末尾からログを追加することを示します
${user.home}は、現在のユーザー構成ログ情報のフォーマット(レイアウト)を表します.
Log 4 jが提供する一般的なlayoutには以下のものがあります.
PatternLayoutレイアウトを使用すると柔軟性があり、構成を使用できます.
具体的な出力形式を定義するため、Log 4 JはC言語のprintf関数のような印刷形式でログ情報Log 4 jでよく使われる印刷パラメータをフォーマットする
サブログ・プロパティ・アイテムの構成(構成なし)
RESTのログはrootLoggerとRESTに同時に出力されます
出力org.jpxx.senseのログ
4.項目の注意事項(重要) log4j.propertiesファイルの場所:eclipseでwebプロジェクトのsrc/log 4 jに位置する.propertiesは、生産サーバ上でtomcatディレクトリ/webapps/ROOT/WEB-INF/classes/log 4 jに位置する.properties ログファイルの場所(.logファイル):log 4 j.appender.appenderName.Fileという属性構成、appenderNameは自分で命名され、${user.home}は現在のユーザーを表し、コード を得ることができることを知らない.配置環境がwindowsシステムの場合、システムに1つのディスクがない限り、ログはcディスクに出力できません.ログ・ファイルは蓄積され続け、監視されていない場合、ログ・ファイルがcディスク全体を占めている場合、システムは クラッシュします.生産リリースのアプリケーションログのレベルはinfoであり、debugではありません.debugは主にプログラム猿のデバッグに使用されます.生産でdebugレベルを使用すると、ログ量が2倍になり、 のスペースを埋めやすくなります.
Log 4 jは簡単に言えばログを覚えるためのもので、プログラム猿のデバッグと分析を助けるのに役立ちます.彼の役割は大きいですが、私たちはまだ利用していません.ここで紹介します.詳細はlog 4 j公式サイトにアクセスしてください.
2、Log 4 jの概念
Log 4 jには、Logger、Appender、Layoutの3つの主要なコンポーネントがあります.
3、Log 4 jのプロファイル
プロファイルを使わずにプログラムで構成を実現できるが、この方法は現在のシステム開発では明らかに望ましくなく、プロファイルを採用できる場所では必ずプロファイルを使用しなければならない.Log 4 jは、XML形式とJavaのproperty形式の2つの形式のプロファイルをサポートしています.
log4j.rootLogger=debug,CONSOLE
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n
log4j.appender.DEFAULT=org.apache.log4j.DailyRollingFileAppender
log4j.appender.DEFAULT.DatePattern='.'yyyy-MM-dd
log4j.appender.DEFAULT.Append=true
log4j.appender.DEFAULT.File=${user.home}/logs/zsht-default.log
log4j.appender.DEFAULT.layout=org.apache.log4j.PatternLayout
log4j.appender.DEFAULT.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n
log4j.appender.REST=org.apache.log4j.DailyRollingFileAppender
log4j.appender.REST.DatePattern='.'yyyy-MM-dd
log4j.appender.REST.Append=true
log4j.appender.REST.File=${user.home}/logs/zsht-rest.log
log4j.appender.REST.layout=org.apache.log4j.PatternLayout
log4j.appender.REST.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n
# Sense
log4j.appender.SENSE=org.apache.log4j.DailyRollingFileAppender
log4j.appender.SENSE.DatePattern='.'yyyy-MM-dd
log4j.appender.SENSE.Append=true
log4j.appender.SENSE.File=${user.home}/logs/sense.log
log4j.appender.SENSE.layout=org.apache.log4j.PatternLayout
log4j.appender.SENSE.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n
# CACHE
log4j.appender.CACHE=org.apache.log4j.DailyRollingFileAppender
log4j.appender.CACHE.DatePattern='.'yyyy-MM-dd
log4j.appender.CACHE.Append=true
log4j.appender.CACHE.File=${user.home}/logs/cache.log
log4j.appender.CACHE.layout=org.apache.log4j.PatternLayout
log4j.appender.CACHE.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n
# SESSION
log4j.appender.SESSION=org.apache.log4j.DailyRollingFileAppender
log4j.appender.SESSION.DatePattern='.'yyyy-MM-dd
log4j.appender.SESSION.Append=true
log4j.appender.SESSION.File=${user.home}/logs/session.log
log4j.appender.SESSION.layout=org.apache.log4j.PatternLayout
log4j.appender.SESSION.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n
log4j.logger.REST=INFO,REST
log4j.logger.org.jpxx.sense=INFO,SENSE
log4j.logger.org.jpxx.commons.cache=INFO,CACHE
log4j.logger.org.jpxx.commons.session=INFO,SESSION
rootの設定
フォーマットはlog 4 j.rootLogger=[level],appenderName, ...,ここでlevelは、出力情報が必要なレベル(info,debugなど)を設定し、後にappenderがあり、ログ情報がどこに出力されるかを指定することに相当し、上記構成のCONSOLE,DEFAULTのように複数の宛先を同時に指定することができる.
appenderの設定
Appender構成ログの出力先
log4j.appender.DEFAULT=org.apache.log4j.DailyRollingFileAppender
log4j.appender.DEFAULT.DatePattern='.'yyyy-MM-dd
翌日元のファイルのファイル名をxxに変更します.yyyy-MM-dd
Log 4 jが提供するappenderには以下のものがあります.
org.apache.log4j.ConsoleAppender( )
org.apache.log4j.FileAppender( )
org.apache.log4j.DailyRollingFileAppender( )
org.apache.log4j.RollingFileAppender( )
org.apache.log4j.WriterAppender( )
org.apache.log4j.jdbc.JDBCAppender( )
プロファイルのパス
log4j.appender.DEFAULT.File=${user.home}/logs/zsht-default.log
log4j.appender.DEFAULT.Append=true
Append=trueは、元のファイルを上書きせずに末尾からログを追加することを示します
${user.home}は、現在のユーザー構成ログ情報のフォーマット(レイアウト)を表します.
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
Log 4 jが提供する一般的なlayoutには以下のものがあります.
org.apache.log4j.HTMLLayout( HTML )
org.apache.log4j.PatternLayout( )
org.apache.log4j.SimpleLayout( )
org.apache.log4j.TTCCLayout( 、 、 )
PatternLayoutレイアウトを使用すると柔軟性があり、構成を使用できます.
log4j.appender.CONSOLE.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n
具体的な出力形式を定義するため、Log 4 JはC言語のprintf関数のような印刷形式でログ情報Log 4 jでよく使われる印刷パラメータをフォーマットする
%d , ISO8601, , :%d{yyy MMM dd HH:mm:ss,SSS}
%c ,
%p , DEBUG,INFO
%m
%n ,Windows “\r
”,Unix “
”
%r log
%t
%l , 、 , 。
サブログ・プロパティ・アイテムの構成(構成なし)
RESTのログはrootLoggerとRESTに同時に出力されます
log4j.logger.REST=INFO,REST
出力org.jpxx.senseのログ
log4j.logger.org.jpxx.sense=INFO,SENSE
log4j.additivity.org.jpxx.sense=false
4.項目の注意事項(重要)
System.getProperty("user.home");
でデータ