2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Gradleのロギング

GradleはSLF4Jを拡張したロガーを内包しており、
gradle〜を実行した時に出力されるログはこれによる出力である。
以下は、Gradleのロガーの6つのログレベルを詳細度が低い順に並べたものである。

ログレベル オプション 説明
ERROR なし ビルドエラー発生時に、標準エラー、エラーメッセージを出力
WARNING なし 警告がある場合に警告メッセージを出力
QUIET -q(--quiet) 標準出力、重要な情報のみを出力
LIFECYCLE なし(デフォルト) タスク名、ビルド結果、実行時間など進行状況を出力
INFO -i(--info) Gradle内部の処理のログなど、詳細な情報を出力
DEBUG -d(--debug) INFOよりも詳細な情報を出力

ロガーの使い方

ビルドスクリプトでのロガーの使用方法は簡単で、loggerプロパティを利用するだけでいい。

ロガーの実装方法
logger.error 'エラーメッセージ'
logger.warn '警告メッセージ'
logger.quiet '重要なメッセージ'
logger.lifecycle '進行状況を示すメッセージ'
logger.info 'インフォメーションメッセージ'
logger.debug 'デバッグメッセージ'

外部ロギングフレームワークとのマッピング

ビルドスクリプト上で、外部ロギングフレームワークのクラスをimportして使用した場合、
それらのロガーが出力した内容はGradleのロガーにリダイレクトされる。
この際、あらかじめ外部のログレベルがGradleのログレベルにマッピングされているので、
特に設定なしに、各ログレベルに対応した出力を得ることができる。

各ロギングフレームワークとのマッピング

Apache log4j / Log4j 2

Gradleのログレベル Log4jのログレベル
ERROR FATAL/ERROR
WARNING WARN
QUIET なし
LIFECYCLE なし
INFO INFO
DEBUG DEBUG

〜Apache Log4j 2 使用時の注意点〜
Apache Log4j 2は他のロギングフレームワークとの連携のための
ブリッジライブラリが用意されている。
Gradleとの連携には、「log4j-to-slf4j.jar」というライブラリが必須で、これがないと
FATALとERROR以外の出力はマッピングされないのである。

Apache Commons Logging

内容はLog4jと全く同じ。

Gradleのログレベル Commonsのログレベル
ERROR FATAL/ERROR
WARNING WARN
QUIET なし
LIFECYCLE なし
INFO INFO
DEBUG DEBUG

JDK標準ロギングAPI

FINEの上には、FINER、FINESTというログレベルが存在するが、
Gradleにおいて出力できるのはFINEまでとなっている。

Gradleのログレベル JDKのログレベル
ERROR SERVER
WARNING WARNING
QUIET なし
LIFECYCLE なし
INFO INFO/CONFIG
DEBUG FINE

ログレベルマッピングの変更

通常、Gradleの標準出力と標準エラーはそれぞれ、QUIETとERRORにリダイレクトされている。
Gradleでは、loggingプロパティを使用することで
各出力のリダイレクト先のログレベルを変更することができる。

// 標準出力のリダイレクト先の変更
logging.captureStandardOutput LogLevel.INFO
// 標準エラーのリダイレクト先の変更
logging.captureStandardError LogLevel.INFO

参照

この記事は以下の書籍を参考に執筆しています。

参考書籍:Gradle徹底入門 次世代ビルドツールによる自動化基盤の構築

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?