Configuração

A configuração é feita usando uma classe Config. É possível acessar essa turma de várias maneiras, como gravar um arquivo de configuração, especificar valores na criação ou carregando valores de variáveis de ambiente.

Arquivo de configuração

É possível especificar google_ads_config.rb a ser usado ao instanciar o cliente.

Se você não usar argumentos ao instanciar:

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

a biblioteca procurará no local especificado no GOOGLE_ADS_CONFIGURATION_FILE_PATH. Se essa variável for não estiver definido, a biblioteca vai procurar o arquivo no diretório HOME.

Como alternativa, especifique um caminho:

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

Nesse caso, o cliente irá procurar o arquivo nesse caminho.

A maneira mais fácil de gerar esse arquivo é copiar o google_ads_config.rb de repositório GitHub e modificá-lo para incluir seu token de atualização, ID do cliente, e a chave secreta do cliente.

Configuração dinâmica

É possível definir a configuração de maneira dinâmica ao instanciar a biblioteca, ou mesmo depois:

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

É possível até modificar a configuração após a instanciação:

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

Campos de configuração

O objeto Config é compatível com os campos a seguir.

Campos gerais:

  • refresh_token: seu token de atualização do OAuth.
  • client_id: o ID do cliente OAuth.
  • client_secret: a chave secreta do cliente do OAuth.
  • developer_token: seu token de desenvolvedor para acessar a API.
  • login_customer_id: consulte as documentação do login-customer-id.

do Logging. Consulte o guia de geração de registros para ver os detalhes completos.

  • log_level: as mensagens de nível mínimo de registro que você quer registrar. Por exemplo: especificar 'DEBUG' garante que você veja todas as mensagens de registro e especificar 'INFO' excluirá as mensagens DEBUG, mas mostrará todas as outras mensagens.
  • log_target: onde você quer fazer login, como STDERR.
  • logger: especifique seu próprio registrador personalizado. Se este valor for especificado, log_level e log_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 requerem uma chamada adicional depois de instanciar o cliente para carregar. Veja a lista completa de variáveis de ambiente com o apoio de todos idiomas.

Para carregar as variáveis de ambiente no Config, chame load_environment_config:

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

Cada vez que ele for chamado, o estado atual das variáveis de ambiente será substituirá tudo o que já estiver presente na Config. Com este padrão, é possível ter uma configuração padrão, mas modificar usando variáveis de ambiente. Também é possível configurar com variáveis de ambiente.

Além das variáveis de ambiente com suporte em todas as bibliotecas, a biblioteca Ruby tem duas variáveis adicionais:

  • GOOGLE_ADS_RUBY_LOG_LEVEL: como log_level acima.
  • GOOGLE_ADS_RUBY_HTTP_PROXY: especifica um proxy HTTP.