ロギング

このライブラリでは、さまざまな方法で Google Ads API の操作を記録するよう設定できます。詳細なリクエストとレスポンス、より簡潔な概要メッセージをログに記録できます。これらの設定は、クライアント ライブラリの構成によって管理されます。以下では、使用可能なさまざまなタイプの構成オプションについて詳しく説明します。

このライブラリは、デフォルトで Python の組み込みロギング フレームワークを使用し、stderr にログを記録します。含まれている場合、構成で定義されている logging オブジェクトが、dict として logging.config.dictConfig に直接渡されます。

クライアントを初期化する前にロギング構成を設定して、プログラムでロギングを構成することもできます。クライアント ロガー インスタンスを取得し、次の例で構成できます。

import logging
logging.basicConfig(level=logging.INFO, format='[%(asctime)s - %(levelname)s] %(message).5000s')
logging.getLogger('google.ads.googleads.client').setLevel(logging.INFO)

クライアント ロガーは、クライアントの初期化時に構成されます。その後のロギング構成の変更は無視されます。YAML ファイル内のロギング構成をプログラムでオーバーライドするには、クライアントを初期化する前に上記の行を呼び出します。

ログレベル

クライアントは、いくつかの異なるレベルでログを生成します。構成を設定して、以下の一部またはすべてを表示できます。

レベル リクエスト成功 リクエスト失敗
DEBUG 完全なリクエスト オブジェクトとレスポンス オブジェクトを JSON 形式で含む詳細なログ。 JSON 形式の完全なリクエスト オブジェクトと例外オブジェクトを含む詳細なログ。
INFO 特定のリクエスト フィールドとレスポンス フィールドを含む簡潔なサマリー。 JSON 形式の完全なリクエスト オブジェクトと例外オブジェクトを含む詳細なログ。
WARNING なし 具体的なリクエスト情報、例外状態、メッセージを含む簡潔な概要。

Python ロギング フレームワークは、構成されたレベルよりも重大度の低いログメッセージを無視するため、WARNING に設定すると、失敗したリクエストに関連する簡潔なメッセージのみが表示されますが、DEBUG に設定すると、上記の表に考えられるすべての種類のログが表示されます。

ファイルにロギング

ログメッセージは簡単にファイルにパイプで接続できます。たとえば、get_campaigns の例を実行する場合は次のようになります。

python get_campaigns.py -c $CLIENT_ID 2> example.log

ロギング インターセプタ

Python クライアント ライブラリは、gRPC インターセプタを使用して、リクエストとレスポンスの詳細にアクセスし、ログに記録します。カスタム ロジックを使用して gRPC インターセプタを作成することで、独自のカスタム ロギングを設定できます。カスタム ロギング インターセプタの詳細と例については、ロギング ガイドをご覧ください。