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:
- Der in der Umgebungsvariablen
GOOGLE_ADS_CONFIGURATION_FILE_PATHangegebene Pfad. - Eine Datei mit dem Namen
google_ads_config.rbin IhremHOME-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 auftrue, um sich mit Standardanmeldedaten für Anwendungen (GOOGLE_ADS_USE_APPLICATION_DEFAULT_CREDENTIALS) zu authentifizieren. Wird ingoogle-ads-googleadsv36.1.0 und höher unterstützt.authentication: Benutzerdefiniertes Authentifizierungsobjekt, z. B. einProc(updater_proc), ein Schlüsseldateipfad oderHashoderGRPC::Core::Channel/GRPC::Core::ChannelCredentials. Überschreibtclient_id,client_secret,refresh_tokenundkeyfile.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 alsgaadahinzugefügt und in Version 39.0.0 inads_assistantumbenannt).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, anstattWarning#warnaufzurufen, wenn veralteter Bibliothekscode aufgerufen wird (standardmäßigfalse).warn_on_all_deprecations: Bei jedem Aufruf wird eine Einstellungswarnung ausgegeben, nicht nur einmal pro Aufruf (standardmäßigfalse).
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, werdenDEBUG-Nachrichten ausgeschlossen, während alle anderen Nachrichten angezeigt werden.log_target: Der Ort, an dem Sie Logs speichern möchten, z. B.STDERRoder ein Pfad.logger: Geben Sie einen eigenen benutzerdefinierten Logger an. Wenn Sie dies angeben, werden sowohllog_levelals auchlog_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: Entsprichtlog_level, wie bereits erläutert.GOOGLE_ADS_RUBY_HTTP_PROXY: Geben Sie eine HTTP-Proxy-URL an.