設定

使用 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_levellog_target

環境變數

您可以使用環境變數設定用戶端程式庫。在預設情況下,系統不會載入這些函式,而且在用戶端執行個體化之後,必須另外呼叫才能載入。請參閱所有語言支援的環境變數完整清單。

如要將環境變數載入 Config,請呼叫 load_environment_config

client = Google::Ads::GoogleAds::GoogleAdsClient.new
client.load_environment_config

每次呼叫此方法時,環境變數的目前狀態都會覆寫 Config 中現有的任何設定。透過這種機制,您可以擁有預設設定,但使用環境變數覆寫特定值,或是使用環境變數進行全面設定。

除了所有程式庫支援的環境變數外,Ruby 程式庫還有兩個額外變數:

  • GOOGLE_ADS_RUBY_LOG_LEVEL:如上述 log_level
  • GOOGLE_ADS_RUBY_HTTP_PROXY:指定 HTTP Proxy。