Konfiguration

Die Konfiguration wird mit der Klasse Config verwaltet. Sie können den Client mithilfe einer Konfigurationsdatei konfigurieren, Werte dynamisch bei der Erstellung angeben oder Werte aus Umgebungsvariablen laden.

Konfigurationsdatei

Sie können eine google_ads_config.rb-Datei angeben, die beim Instanziieren des Clients verwendet werden soll.

Wenn Sie beim Instanziieren eines GoogleAdsClient-Objekts keine Argumente übergeben, sucht die Bibliothek in der folgenden Reihenfolge nach einer Konfigurationsdatei:

  1. Der in der Umgebungsvariablen GOOGLE_ADS_CONFIGURATION_FILE_PATH angegebene Pfad.
  2. Eine Datei mit dem Namen google_ads_config.rb in Ihrem HOME-Verzeichnis (~/google_ads_config.rb).

Alternativ können Sie beim Instanziieren des GoogleAdsClient-Objekts einen expliziten Pfad übergeben:

client = Google::Ads::GoogleAds::GoogleAdsClient.new('path/to/file.rb')

Kopieren Sie zum Generieren dieser Datei google_ads_config.rb aus dem GitHub-Repository und ändern Sie sie so, dass sie Ihr Aktualisierungstoken, Ihre Client-ID und Ihren Clientschlüssel enthält.

Dynamische Konfiguration

Sie können die Konfiguration dynamisch einrichten, wenn Sie die Bibliothek instanziieren:

client = Google::Ads::GoogleAds::GoogleAdsClient.new do |config|
  config.client_id = 'INSERT_CLIENT_ID_HERE'
  # ... additional configuration
end

Sie können die Konfiguration auch nach der Instanziierung ändern. Dadurch werden die während der Initialisierung geladenen Einstellungen überschrieben:

client.configure do |config|
  config.login_customer_id = 'INSERT_LOGIN_CUSTOMER_ID_HERE'
  # ... additional configuration
end

Konfigurationsfelder

Das Objekt Config unterstützt die folgenden Felder.

Allgemeine Felder:

  • refresh_token: Ihr OAuth-Aktualisierungstoken (GOOGLE_ADS_REFRESH_TOKEN).
  • client_id: Ihre OAuth-Client-ID (GOOGLE_ADS_CLIENT_ID).
  • client_secret: Ihr OAuth-Clientschlüssel (GOOGLE_ADS_CLIENT_SECRET).
  • keyfile: Pfad zu einer JSON-Schlüsseldatei für ein Dienstkonto (GOOGLE_ADS_JSON_KEY_FILE_PATH).
  • impersonate: E-Mail-Adresse, die bei Verwendung eines Dienstkontos mit domainweiter Delegierung (GOOGLE_ADS_IMPERSONATED_EMAIL) imitiert werden soll.
  • use_application_default_credentials: Setzen Sie den Wert auf true, um sich mit Standardanmeldedaten für Anwendungen (GOOGLE_ADS_USE_APPLICATION_DEFAULT_CREDENTIALS) zu authentifizieren. Wird in google-ads-googleads v36.1.0 und höher unterstützt.
  • authentication: Benutzerdefiniertes Authentifizierungsobjekt, z. B. ein Proc (updater_proc), ein Schlüsseldateipfad oder Hash oder GRPC::Core::Channel / GRPC::Core::ChannelCredentials. Überschreibt client_id, client_secret, refresh_token und keyfile.
  • login_customer_id: Weitere Informationen finden Sie in der Dokumentation zu „login-customer-id“ (GOOGLE_ADS_LOGIN_CUSTOMER_ID).
  • linked_customer_id: Die verknüpfte Kundennummer (GOOGLE_ADS_LINKED_CUSTOMER_ID).
  • ads_assistant: Optionale Kennung für den Header des Google Ads API-Assistenten (GOOGLE_ADS_ASSISTANT; in Version 37.0.0 als gaada hinzugefügt und in Version 39.0.0 in ads_assistant umbenannt).
  • http_proxy: Optionaler HTTP- oder HTTPS-Proxy-URI (GOOGLE_ADS_RUBY_HTTP_PROXY).
  • api_endpoint: Optionale Überschreibung des API-Endpunkts (GOOGLE_ADS_ENDPOINT).
  • treat_deprecation_warnings_as_errors: Es wird eine Ausnahme ausgelöst, anstatt Warning#warn aufzurufen, wenn veralteter Bibliothekscode aufgerufen wird (standardmäßig false).
  • warn_on_all_deprecations: Bei jedem Aufruf wird eine Einstellungswarnung ausgegeben, nicht nur einmal pro Aufruf (standardmäßig false).

Logfelder (ausführliche Informationen finden Sie im Logging-Leitfaden):

  • log_level: Die Mindeststufe für Logmeldungen, die protokolliert werden sollen. Wenn Sie beispielsweise 'DEBUG' angeben, werden alle Nachrichten protokolliert. Wenn Sie 'INFO' angeben, werden DEBUG-Nachrichten ausgeschlossen, während alle anderen Nachrichten angezeigt werden.
  • log_target: Der Ort, an dem Sie Logs speichern möchten, z. B. STDERR oder ein Pfad.
  • logger: Geben Sie einen eigenen benutzerdefinierten Logger an. Wenn Sie dies angeben, werden sowohl log_level als auch log_target überschrieben.

Umgebungsvariablen

Sie können die Clientbibliothek mithilfe von Umgebungsvariablen konfigurieren. Sie werden nicht standardmäßig geladen und erfordern nach der Instanziierung des Clients einen expliziten Aufruf, um geladen zu werden. Vollständige Liste der Standardumgebungsvariablen

Rufen Sie load_environment_config auf, um die Umgebungsvariablen in Ihre Config zu laden:

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

Bei jedem Aufruf von load_environment_config überschreiben alle definierten Umgebungsvariablen die entsprechenden Werte, die bereits in der Config vorhanden sind. Nicht festgelegte Umgebungsvariablen lassen vorhandene Konfigurationswerte unverändert. Mit diesem Mechanismus können Sie eine Standardkonfigurationsdatei verwalten und bestimmte Werte mithilfe von Umgebungsvariablen überschreiben oder den Client vollständig mit Umgebungsvariablen konfigurieren.

Zusätzlich zu den Standardumgebungsvariablen unterstützt die Ruby-Bibliothek zwei weitere Variablen:

  • GOOGLE_ADS_RUBY_LOG_LEVEL: Entspricht log_level, wie bereits erläutert.
  • GOOGLE_ADS_RUBY_HTTP_PROXY: Geben Sie eine HTTP-Proxy-URL an.