構成は Config
クラスを使用して行います。構成ファイルへのアクセス、作成時に値の指定、環境変数からの値の読み込みなど、複数の方法でこのクラスにアクセスできます。
構成ファイル
クライアントをインスタンス化するときに使用する google_ads_config.rb
ファイルを指定できます。
インスタンス化の際に引数を使用しない場合:
client = Google::Ads::GoogleAds::GoogleAdsClient.new
この場合、ライブラリは GOOGLE_ADS_CONFIGURATION_FILE_PATH
環境変数で指定された場所を参照します。その変数が設定されていない場合、ライブラリで HOME
ディレクトリでファイルを探します。
あるいは、次のパスを指定することもできます。
client = Google::Ads::GoogleAds::GoogleAdsClient.new("path/to/file.rb")
その場合、クライアントはそのファイルパスでファイルを検索します。
このファイルを生成する最も簡単な方法は、GitHub リポジトリから google_ads_config.rb
をコピーして、更新トークン、クライアント ID、クライアント シークレットが含まれるように変更することです。
動的構成
構成は、ライブラリをインスタンス化するときに(または後でも)動的に設定できます。
client = Google::Ads::GoogleAds::GoogleAdsClient.new do |config|
config.client_id = 'INSERT_CLIENT_ID_HERE'
# ... more configuration
end
インスタンス化後に構成を変更することもできます。
client.configure do |config|
config.login_customer_id = 'INSERT_LOGIN_CUSTOMER_ID_HERE'
# ... more configuration
end
設定に関する項目
Config
オブジェクトは、次のフィールドをサポートします。
一般フィールド:
refresh_token
: OAuth 更新トークン。client_id
: OAuth クライアント ID。client_secret
: OAuth クライアント シークレット。developer_token
: API にアクセスするための開発者トークン。login_customer_id
: login-customer-id のドキュメントをご覧ください。
Logging フィールド。詳しくは、ロギングガイドをご覧ください。
log_level
: ログに記録する最小ログレベルのメッセージ。たとえば、'DEBUG'
を指定すると、すべてのログメッセージが表示されます。'INFO'
を指定すると、DEBUG メッセージは除外されますが、他のすべてのメッセージが表示されます。log_target
: ログイン先の場所(STDERR
など)。logger
: 独自のカスタムロガーを指定します。これを指定すると、log_level
とlog_target
の両方がオーバーライドされます。
環境変数
クライアント ライブラリは、環境変数を使用して構成できます。デフォルトでは読み込まれません。読み込みを行うには、クライアントをインスタンス化した後に追加の呼び出しが必要です。すべての言語でサポートされている環境変数の全リストをご覧ください。
環境変数を Config
に読み込むには、load_environment_config
を呼び出します。
client = Google::Ads::GoogleAds::GoogleAdsClient.new
client.load_environment_config
このメソッドが呼び出されるたびに、環境変数の現在の状態が、Config
にすでに存在するすべての値を上書きします。このメカニズムでは、デフォルトの構成を使用して、環境変数を使用して特定の値をオーバーライドすることも、環境変数で完全に構成することもできます。
Ruby ライブラリには、すべてのライブラリでサポートされている環境変数に加えて、次の 2 つの変数があります。
GOOGLE_ADS_RUBY_LOG_LEVEL
: 上記のlog_level
。GOOGLE_ADS_RUBY_HTTP_PROXY
: HTTP プロキシを指定します。