Konfiguration

Die Konfiguration wird über die Klasse Config verwaltet. Sie können den Client mit einer Konfigurationsdatei konfigurieren, Werte beim Erstellen dynamisch 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 Verzeichnis HOME (~/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')

Um diese Datei zu generieren, kopieren Sie 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 Einstellungen überschrieben, die während der Initialisierung geladen wurden:

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

Felder für die Konfiguration

Das Config-Objekt 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 das 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: Legen Sie diese Option auf true fest, um die Authentifizierung mit Standardanmeldedaten für Anwendungen (GOOGLE_ADS_USE_APPLICATION_DEFAULT_CREDENTIALS) durchzuführen. 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 zur Anmelde-Kundennummer (GOOGLE_ADS_LOGIN_CUSTOMER_ID).
  • linked_customer_id: Die verknüpfte Kunden-ID (GOOGLE_ADS_LINKED_CUSTOMER_ID).
  • ads_assistant: Optionale Kennung für den Google Ads API Assistant-Header (GOOGLE_ADS_ASSISTANT; in Version 37.0.0 als gaada hinzugefügt und in Version 39.0.0 in ads_assistant umbenannt).
  • http_proxy: Optionale HTTP- oder HTTPS-Proxy-URI (GOOGLE_ADS_RUBY_HTTP_PROXY).
  • api_endpoint: Optionaler API-Endpunkt-Override (GOOGLE_ADS_ENDPOINT).
  • treat_deprecation_warnings_as_errors: Eine Ausnahme wird ausgelöst, anstatt Warning#warn aufzurufen, wenn verworfener Bibliothekscode aufgerufen wird (standardmäßig false).
  • warn_on_all_deprecations: Bei jedem Aufruf wird eine Warnung zur Einstellung ausgegeben, nicht nur einmal pro Aufrufstelle (Standard: false).

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

  • log_level: Die Mindest-Logebene für Nachrichten, 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 protokollieren möchten, z. B. STDERR oder ein Pfad.
  • logger: Hier können Sie einen eigenen benutzerdefinierten Logger angeben. Wenn Sie diesen Wert angeben, werden sowohl log_level als auch log_target überschrieben.

Umgebungsvariablen

Sie können die Clientbibliothek mit Umgebungsvariablen konfigurieren. Sie werden nicht standardmäßig geladen, sondern erfordern einen expliziten Aufruf nach der Instanziierung des Clients. 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

Jedes Mal, wenn load_environment_config aufgerufen wird, werden alle definierten Umgebungsvariablen durch entsprechende Werte überschrieben, die bereits in Config vorhanden sind. Nicht festgelegte Umgebungsvariablen lassen vorhandene Konfigurationswerte unverändert. Mit diesem Mechanismus können Sie eine Standardkonfigurationsdatei beibehalten und bestimmte Werte mit 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 oben beschrieben.
  • GOOGLE_ADS_RUBY_HTTP_PROXY: Gib eine HTTP-Proxy-URL an.