構成は 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 のドキュメントをご覧ください。
ロギング フィールド。詳細については、ロギングガイドをご覧ください。
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 プロキシを指定します。