Java クライアント ライブラリのロギングは、Java 用の汎用ロギング ファサードである SLF4J で構成されます。これにより、Log4j 2、Logback、java.util.logging(JUL)など、さまざまなロギング実装にログを転送できます。Log4j 2 と JUL のサンプル構成ファイルを提供します。
ログのレイアウトと機能
リクエストは、1 行の概要と、リクエストとレスポンスの本文とヘッダー全体とともにログに記録されます。
| ログタイプ | ログ名 | 成功レベル | 障害レベル |
|---|---|---|---|
| 概要 | com.google.ads.googleads.lib.request.summary | 情報 | WARN |
| 詳細 | com.google.ads.googleads.lib.request.detail | デバッグ | 情報 |
詳細ログの切り捨て
詳細ログは、大きなログが作成されないように、デフォルトで切り捨てられます。ログが切り捨てられる長さを変更するには、JVM プロパティ -Dapi.googleads.maxLogMessageLength=<number> を設定します。-1 に設定すると、ログの切り捨てが無効になります。
Log4j 2
log4j-slf4j2-implライブラリへの依存関係を追加します。2.x.yは、プロジェクトで使用している Log4j 2 のバージョンに置き換えます。<dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j2-impl</artifactId> <version>2.x.y</version> </dependency>(省略可)リソース ディレクトリ(Maven の
src/main/resourcesなど)にlog4j2.xml構成ファイルを作成します。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ライブラリの依存関係を追加します。2.x.yは、プロジェクトで使用されている SLF4J のバージョンに置き換えてください。<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-jdk14</artifactId> <version>2.x.y</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を指定してアプリケーションを実行します。