La configurazione viene gestita utilizzando la classe Config. Puoi configurare il client utilizzando un file di configurazione, specificando i valori in modo dinamico al momento della creazione o caricando i valori dalle variabili di ambiente.
File di configurazione
Puoi specificare un file google_ads_config.rb da utilizzare quando
crei un'istanza del client.
Se non passi argomenti quando crei un'istanza di un oggetto GoogleAdsClient, la libreria cerca un file di configurazione nel seguente ordine:
- Il percorso specificato nella variabile di ambiente
GOOGLE_ADS_CONFIGURATION_FILE_PATH. - Un file denominato
google_ads_config.rbnella directoryHOME(~/google_ads_config.rb).
In alternativa, puoi passare un percorso esplicito quando crei un'istanza dell'oggetto GoogleAdsClient:
client = Google::Ads::GoogleAds::GoogleAdsClient.new('path/to/file.rb')
Per generare questo file, copia google_ads_config.rb dal
repository GitHub e modificalo in modo da includere il token di aggiornamento, l'ID client e il
client secret.
Configurazione dinamica
Puoi configurare dinamicamente la configurazione quando crei un'istanza della libreria:
client = Google::Ads::GoogleAds::GoogleAdsClient.new do |config|
config.client_id = 'INSERT_CLIENT_ID_HERE'
# ... additional configuration
end
Puoi anche modificare la configurazione dopo la creazione dell'istanza (che sostituisce le impostazioni caricate durante l'inizializzazione):
client.configure do |config|
config.login_customer_id = 'INSERT_LOGIN_CUSTOMER_ID_HERE'
# ... additional configuration
end
Campi di configurazione
L'oggetto Config supporta i seguenti campi.
Campi generali:
refresh_token: il token di aggiornamento OAuth (GOOGLE_ADS_REFRESH_TOKEN).client_id: l'ID client OAuth (GOOGLE_ADS_CLIENT_ID).client_secret: il client secret OAuth (GOOGLE_ADS_CLIENT_SECRET).keyfile: il percorso di un file di chiavi JSON del service account (GOOGLE_ADS_JSON_KEY_FILE_PATH).impersonate: l'indirizzo email da rappresentare quando utilizzi un service account con delega a livello di dominio (GOOGLE_ADS_IMPERSONATED_EMAIL).use_application_default_credentials: imposta sutrueper eseguire l'autenticazione utilizzando le credenziali predefinite dell'applicazione (GOOGLE_ADS_USE_APPLICATION_DEFAULT_CREDENTIALS). Supportato ingoogle-ads-googleadsv36.1.0 e versioni successive.authentication: oggetto di autenticazione personalizzato, ad esempio unProc(updater_proc), un percorso del file di chiavi oHashoppureGRPC::Core::Channel/GRPC::Core::ChannelCredentials. Sostituisceclient_id,client_secret,refresh_tokenekeyfile.login_customer_id: consulta la documentazione sull'ID cliente di accesso (GOOGLE_ADS_LOGIN_CUSTOMER_ID).linked_customer_id: l'ID cliente collegato (GOOGLE_ADS_LINKED_CUSTOMER_ID).ads_assistant: identificatore facoltativo per l'intestazione dell'assistente dell'API Google Ads (GOOGLE_ADS_ASSISTANT; aggiunto comegaadanella versione 37.0.0 e rinominato inads_assistantnella versione 39.0.0).http_proxy: URI proxy HTTP o HTTPS facoltativo (GOOGLE_ADS_RUBY_HTTP_PROXY).api_endpoint: override facoltativo dell'endpoint API (GOOGLE_ADS_ENDPOINT).treat_deprecation_warnings_as_errors: genera un'eccezione anziché chiamareWarning#warnquando viene richiamato il codice della libreria deprecato (falseper impostazione predefinita).warn_on_all_deprecations: genera un avviso di ritiro a ogni chiamata anziché una volta per ogni sito di chiamata (falseper impostazione predefinita).
Campi di log (per informazioni dettagliate, consulta la guida alla registrazione):
log_level: il livello di log minimo dei messaggi che vuoi registrare. Ad esempio, se specifichi'DEBUG', vengono registrati tutti i messaggi, mentre se specifichi'INFO', i messaggiDEBUGvengono esclusi e vengono visualizzati tutti gli altri messaggi.log_target: la destinazione in cui vuoi registrare i log, ad esempioSTDERRo un percorso.logger: specifica il tuo logger personalizzato. Se specifichi questo valore, vengono sostituiti sialog_levelchelog_target.
Variabili di ambiente
Puoi configurare la libreria client utilizzando le variabili di ambiente. Non vengono caricate per impostazione predefinita e richiedono una chiamata esplicita dopo la creazione dell'istanza del client per essere caricate. Consulta l'elenco completo delle variabili di ambiente standard.
Per caricare le variabili di ambiente in Config, chiama load_environment_config:
client = Google::Ads::GoogleAds::GoogleAdsClient.new
client.load_environment_config
Ogni volta che viene chiamata load_environment_config, le variabili di ambiente definite sovrascrivono i valori corrispondenti già presenti in Config (le variabili di ambiente non impostate lasciano invariati i valori di configurazione esistenti). Con questo meccanismo, puoi mantenere un file di configurazione predefinito e sostituire valori specifici utilizzando le variabili di ambiente oppure configurare il client interamente con le variabili di ambiente.
Oltre alle variabili di ambiente standard, la libreria Ruby supporta due variabili aggiuntive:
GOOGLE_ADS_RUBY_LOG_LEVEL: equivalente alog_level, come spiegato in precedenza.GOOGLE_ADS_RUBY_HTTP_PROXY: specifica un URL proxy HTTP.