序文:この記事は基本的に翻訳の公式文書です!
Spring Bootは、内部ロギングシステムとしてCommonsロギングを使用し、Java Utilロギング、Log4J2、およびLogBackのデフォルト構成を提供します。 Spring Boot Startersを使用すると、ログバックはデフォルトでロギングに使用されます。
1。ログ形式
スプリングブーツのデフォルトのログ出力形式は次のとおりです。
2014-03-05 10:57:51.112 Info 45469 --- [Main] org.apache.catalina.core.standardengine:
サーブレットエンジンの開始:Apache Tomcat/7.0.52
2014-03-05 10:57:51.253 INFO 45469 --- [OST-STARTSTOP-1] OACCC [Tomcat]。[LocalHost]。[/]:
スプリング埋め込みWebApplicationContextの初期化
2014-03-05 10:57:51.253 INFO 45469 --- [OST-StartStop-1] OSWEB.CONTEXT.CONTEXTLOADER:
ルートWebApplicationContext:初期化は1358ミリ秒で完了しました
2014-03-05 10:57:51.698 Info 45469 --- [OST-StartStop-1] OSBCESERVLETREGISTRATIONBEAN:
マッピングサーブレット:「DispatcherServlet」から[/]
2014-03-05 10:57:51.702 INFO 45469 --- [OST-STARTSTOP-1] OSBCEMBEDED.FILTERREGISTRATIONBEAN:
マッピングフィルター:[hiddenhttpmethodfilter 'to:[/*]
次の項目が出力されます。
1。日付と時刻 - 時間ごとにミリ秒に加算し、単純なソート
2。ログレベル - エラー、ワーン、情報、デバッグ、トレース
3。プロセスID番号
4.ログの内容は、「---」セパレーターによって分離されます
5。四角い括弧で囲まれたスレッド名 -
6。ログセンスクラス名の名前は通常
注:logbackには致命的なレベルがありません(エラーへのマップ)
2。コンソール出力
デフォルトのログ構成は、コンソールに書き込まれたときにメッセージをエコーし、エラー、警告、および情報レベルでメッセージをエコーします。起動時にデバッグモードを有効にすることもできます。スタートアップコマンドは次のとおりです:Java -Jar YourApp.jar - Debug
注:Debugを有効にするために、application.properties構成ファイルでdebug = trueを指定することもできます。デバッグモードがオンになると、コンソールはコンテナ情報、冬眠情報、スプリングブート情報を同時に出力します。
3。ファイル出力
デフォルトでは、Spring Bootは、ログをログにするのではなく、コンソールにログのみ出力します。ログファイルにログを記述する場合は、application.path.path.path.poperties configurationファイルにログを設定する必要があります。
注:ここに関係があります。つまり、logging.fileまたはlogging.pathを構成する場合、効果は同じです。
次の表には、構成ファイル出力を実行する方法を示します。
| logging.file | logging.path | 例 | 説明します |
| どちらの構成も構成されておらず、コンソールへの出力のみ | |||
| ファイルを指定します | my.log | 指定されたログファイルに書き込みます。ファイル名は正確な場所または相対ディレクトリにすることができます | |
| 指定されたディレクトリ | /var/log | 指定されたディレクトリにログファイルを書き込みます。これは、正確な場所または相対ディレクトリである可能性があります |
デフォルトでは、ログファイルのサイズが10MBに達すると、切り捨てられ、新しいログファイルに出力されます。
注:ログ構成は、実際のログコンポーネントとは独立しています。つまり、Logback用に指定された構成されたプロパティがlogback.configurationFileである場合、Spring Bootはログコンポーネントを管理しません。
4。ログレベル
サポートされているすべてのロギングシステムは、application.propertiesなどのスプリング環境を通じてログレベルを指定し、「logging.level。*= level」を使用してログレベルを指定できます。 「レベル」の値は、トレース、デバッグ、情報、警告、エラー、致命的、オフにすることができます。構成の例は次のとおりです。
logging.level.root = warn#rot log outputs at warn level.level.lvel.rg.springframework.web =#org.springframework.webパッケージ出力のデバッグレベルでログをデバッグlogging.level.org.hibernate =エラー
アプリケーションログレベルを指定する必要がある場合は、次のように同じ方法を使用することもできます。
logging.level.com.chhliu = info
上記の構成の「com.chhliu」は、アプリケーションのパッケージ名です。
5。カスタムログ出力形式
logging.pattern.fileおよびlogging.pattern.levelを使用して必要なログ出力形式を構成できます。
logging.pattern.console =%d {yyyy/mm/dd-hh:mm:ss} [%thread]%-5level%logger-%msg%n logging.pattern.file =%d {yyyyy/mm/dd-hh:mm} [注:上記の構成は、ログバックでのみ動作します
6. log4jを使用してログを記録します
前述のように、デフォルトはログバックをログシステムとして使用することです。したがって、log4jを使用してログを記録したい場合は、どうすればよいですか?次のように、log4jスターターをPOMファイルに追加し、ログバックを除外する必要があります。
<依存関係> groupid> org.springframework.boot </groupid> <artifactid> spring-boot-starter </artifactid> <exclusions> <explusion> <groupid> org.springframework.boot </groupid> <artifactid> spring-boot-starter-logging </artifactid> </explency> <groupId> org.springframework.boot </groupId> <artifactid> spring-boot-starter-log4j </artifactid> </dependency>
上記はこの記事のすべての内容です。みんなの学習に役立つことを願っています。誰もがwulin.comをもっとサポートすることを願っています。