ロギングは、Java 用の汎用ロギング ライブラリである SLF4J で構成されます。これにより、さまざまなロギング実装にログを転送できます。log4j 1.2/2 と Java Util Logging(JUL)の構成ファイルが用意されています。
ロギングのレイアウトと機能
リクエストは、1 行の概要と、リクエスト/レスポンスの本文とヘッダー全体でログに記録されます。
| ログタイプ | ログ名 | 成功レベル | 障害レベル |
|---|---|---|---|
| 概要 | com.google.ads.googleads.lib.request.summary | 情報 | WARN |
| 詳細 | com.google.ads.googleads.lib.request.detail | デバッグ | 情報 |
詳細ログの切り捨て
大きなログが作成されないように、詳細ログはデフォルトで切り捨てられます。ログの切り捨て長さを変更するには、-Dapi.googleads.maxLogMessageLength=<number> を設定します。-1 を設定すると、ログの切り捨てが無効になります。
Log4j 2
log4j-slf4j-implライブラリへの依存関係を追加します。2.x.yは、プロジェクトで使用している Log4j 2 のバージョンに置き換えます。<dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j-impl</artifactId> <version>2.x.y</version> </dependency>(省略可)リソース ディレクトリに構成ファイルを作成します(Maven の場合は
src/main/resourcesなど)。Log4j 2 は、作業ディレクトリではなくクラスパスから構成ファイルを読み込むため、リソース ディレクトリに作成してください。-Dlog4j.configurationFile=<CONFIG_FILE_PATH>を指定してアプリケーションを実行します。CONFIG_FILE_PATH=googleads-logging/log4j2.xmlを指定して、クライアント ライブラリに含まれているデフォルトの構成ファイルを使用できます。
Log4j 1.2(レガシー)
slf4j-log4j12ライブラリへの依存関係を追加します。1.x.yは、プロジェクトで使用している Log4j 1.2 のバージョンに置き換えます。<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.x.y</version> </dependency>(省略可)プロジェクトのリソース ディレクトリに構成ファイルを作成します。Maven では、パスは
src/main/resourcesです。Log4j 1.2 は、作業ディレクトリではなくクラスパスから構成ファイルを読み込むため、リソース ディレクトリにコピーしてください。-Dlog4j.configuration=<CONFIG_FILE_PATH>を指定してアプリケーションを実行します。CONFIG_FILE_PATH=googleads-logging/log4j.propertiesを指定して、クライアント ライブラリに含まれているデフォルトの構成ファイルを使用できます。
Java Util Logging
slf4j-jdk14ライブラリへの依存関係を追加します。<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-jdk14</artifactId> <version>1.7.25</version> </dependency>ファイル システムに、アプリケーションから読み取り可能なパス(
./jdk-logger.propertiesなど)に JUL 構成ファイルを作成します。テンプレートはgoogle-ads/src/main/resources/googleads-logging/jdk-logger.propertiesにあります。JUL はファイルシステムからのみ読み取るため、リソース ディレクトリにコピーしないでください。-Djava.util.logging.config.file=./jdk-logger.propertiesを指定してアプリケーションを実行します。