A configuração é gerenciada usando a classe Config. É possível configurar o cliente usando um arquivo de configuração, especificando valores de forma dinâmica na criação ou carregando valores de variáveis de ambiente.
Arquivo de configuração
É possível especificar um arquivo google_ads_config.rb para usar ao instanciar o cliente.
Se você não transmitir argumentos ao instanciar um objeto GoogleAdsClient, a
biblioteca vai procurar um arquivo de configuração na seguinte ordem:
- O caminho especificado na variável de ambiente
GOOGLE_ADS_CONFIGURATION_FILE_PATH. - Um arquivo chamado
google_ads_config.rbno diretórioHOME(~/google_ads_config.rb).
Como alternativa, transmita um caminho explícito ao instanciar o objeto
GoogleAdsClient:
client = Google::Ads::GoogleAds::GoogleAdsClient.new('path/to/file.rb')
Para gerar esse arquivo, copie google_ads_config.rb do
repositório do GitHub e modifique-o para incluir seu token de atualização, ID do cliente e
chave secreta do cliente.
Configuração dinâmica
É possível configurar dinamicamente ao instanciar a biblioteca:
client = Google::Ads::GoogleAds::GoogleAdsClient.new do |config|
config.client_id = 'INSERT_CLIENT_ID_HERE'
# ... additional configuration
end
Também é possível modificar a configuração após a criação da instância (que substitui as configurações carregadas durante a inicialização):
client.configure do |config|
config.login_customer_id = 'INSERT_LOGIN_CUSTOMER_ID_HERE'
# ... additional configuration
end
Campos de configuração
O objeto Config é compatível com os seguintes campos.
Campos gerais:
refresh_token: seu token de atualização do OAuth (GOOGLE_ADS_REFRESH_TOKEN).client_id: seu ID do cliente OAuth (GOOGLE_ADS_CLIENT_ID).client_secret: sua chave secreta do cliente OAuth (GOOGLE_ADS_CLIENT_SECRET).keyfile: caminho para um arquivo de chave JSON de conta de serviço (GOOGLE_ADS_JSON_KEY_FILE_PATH).impersonate: endereço de e-mail a ser representado ao usar uma conta de serviço com delegação em todo o domínio (GOOGLE_ADS_IMPERSONATED_EMAIL).use_application_default_credentials: defina comotruepara autenticar usando Application Default Credentials (GOOGLE_ADS_USE_APPLICATION_DEFAULT_CREDENTIALS). Compatível comgoogle-ads-googleadsv36.1.0 e versões mais recentes.authentication: objeto de autenticação personalizado, como umProc(updater_proc), caminho do arquivo de chave ouHash, ouGRPC::Core::Channel/GRPC::Core::ChannelCredentials. Substituiclient_id,client_secret,refresh_tokenekeyfile.login_customer_id: consulte a documentação de login-customer-id (GOOGLE_ADS_LOGIN_CUSTOMER_ID).linked_customer_id: o ID de cliente vinculado (GOOGLE_ADS_LINKED_CUSTOMER_ID).ads_assistant: identificador opcional para o cabeçalho do assistente da API Google Ads (GOOGLE_ADS_ASSISTANT; adicionado comogaadana v37.0.0 e renomeado paraads_assistantna v39.0.0).http_proxy: URI de proxy HTTP ou HTTPS opcional (GOOGLE_ADS_RUBY_HTTP_PROXY).api_endpoint: substituição opcional do endpoint de API (GOOGLE_ADS_ENDPOINT).treat_deprecation_warnings_as_errors: gera uma exceção em vez de chamarWarning#warnquando o código da biblioteca descontinuada é invocado (falsepor padrão).warn_on_all_deprecations: emita um aviso de descontinuação em todas as chamadas, em vez de uma vez por site de chamada (falsepor padrão).
Campos de registro (consulte o guia de geração de registros para mais detalhes):
log_level: o nível mínimo de mensagens de registro que você quer registrar. Por exemplo, especificar'DEBUG'registra todas as mensagens, e especificar'INFO'exclui mensagensDEBUGe mostra todas as outras.log_target: onde você quer registrar, comoSTDERRou um caminho.logger: especifique seu próprio gravador de registros personalizado. Especificar isso substituilog_levelelog_target.
Variáveis de ambiente
É possível configurar a biblioteca de cliente usando variáveis de ambiente. Eles não são carregados por padrão e exigem uma chamada explícita após a instanciação do cliente para serem carregados. Confira a lista completa de variáveis de ambiente padrão.
Para carregar as variáveis de ambiente no seu Config, chame
load_environment_config:
client = Google::Ads::GoogleAds::GoogleAdsClient.new
client.load_environment_config
Cada vez que load_environment_config é chamado, todas as variáveis de ambiente definidas substituem os valores correspondentes já presentes no Config. Variáveis de ambiente não definidas deixam os valores de configuração atuais inalterados. Com esse
mecanismo, é possível manter um arquivo de configuração padrão e substituir valores
específicos usando variáveis de ambiente ou configurar o cliente totalmente com
variáveis de ambiente.
Além das variáveis de ambiente padrão, a biblioteca Ruby oferece suporte a duas variáveis adicionais:
GOOGLE_ADS_RUBY_LOG_LEVEL: equivalente alog_level, conforme explicado anteriormente.GOOGLE_ADS_RUBY_HTTP_PROXY: especifique um URL de proxy HTTP.