La configuración se administra con la clase Config. Puedes configurar el cliente
con un archivo de configuración, especificando valores de forma dinámica durante la creación o
cargando valores desde variables de entorno.
Archivo de configuración
Puedes especificar un archivo google_ads_config.rb para usar cuando
crees una instancia del cliente.
Si no pasas ningún argumento cuando creas una instancia de un objeto GoogleAdsClient, la biblioteca busca un archivo de configuración en el siguiente orden:
- La ruta de acceso especificada en la variable de entorno
GOOGLE_ADS_CONFIGURATION_FILE_PATH. - Un archivo llamado
google_ads_config.rben tu directorioHOME(~/google_ads_config.rb)
Como alternativa, puedes pasar una ruta de acceso explícita cuando crees una instancia del objeto GoogleAdsClient:
client = Google::Ads::GoogleAds::GoogleAdsClient.new('path/to/file.rb')
Para generar este archivo, copia google_ads_config.rb del
repositorio de GitHub y modifícalo para incluir tu token de actualización, ID de cliente y
secreto del cliente.
Configuración dinámica
Puedes establecer la configuración de forma dinámica cuando crees una instancia de la biblioteca:
client = Google::Ads::GoogleAds::GoogleAdsClient.new do |config|
config.client_id = 'INSERT_CLIENT_ID_HERE'
# ... additional configuration
end
También puedes modificar la configuración después de crear una instancia (lo que anula los parámetros de configuración cargados durante la inicialización):
client.configure do |config|
config.login_customer_id = 'INSERT_LOGIN_CUSTOMER_ID_HERE'
# ... additional configuration
end
Campos de configuración
El objeto Config admite los siguientes campos.
Campos generales:
refresh_token: Es tu token de actualización de OAuth (GOOGLE_ADS_REFRESH_TOKEN).client_id: Es tu ID de cliente de OAuth (GOOGLE_ADS_CLIENT_ID).client_secret: Es el secreto del cliente de OAuth (GOOGLE_ADS_CLIENT_SECRET).keyfile: Es la ruta de acceso a un archivo de claves JSON de la cuenta de servicio (GOOGLE_ADS_JSON_KEY_FILE_PATH).impersonate: Es la dirección de correo electrónico que se usará para la identidad temporal cuando se use una cuenta de servicio con delegación en todo el dominio (GOOGLE_ADS_IMPERSONATED_EMAIL).use_application_default_credentials: Se establece entruepara autenticar con las credenciales predeterminadas de la aplicación (GOOGLE_ADS_USE_APPLICATION_DEFAULT_CREDENTIALS). Se admite engoogle-ads-googleadsv36.1.0 y versiones posteriores.authentication: Es el objeto de autenticación personalizado, como unProc(updater_proc), una ruta de acceso de archivo de claves oHash, oGRPC::Core::Channel/GRPC::Core::ChannelCredentials. Anulaclient_id,client_secret,refresh_tokenykeyfile.login_customer_id: Consulta la documentación de login-customer-id (GOOGLE_ADS_LOGIN_CUSTOMER_ID).linked_customer_id: Es el ID de cliente vinculado (GOOGLE_ADS_LINKED_CUSTOMER_ID).ads_assistant: Es un identificador opcional para el encabezado del asistente de la API de Google Ads (GOOGLE_ADS_ASSISTANT; se agregó comogaadaen la versión 37.0.0 y se cambió el nombre aads_assistanten la versión 39.0.0).http_proxy: Es el URI del proxy HTTP o HTTPS opcional (GOOGLE_ADS_RUBY_HTTP_PROXY).api_endpoint: Anulación opcional del endpoint de API (GOOGLE_ADS_ENDPOINT).treat_deprecation_warnings_as_errors: Genera una excepción en lugar de llamar aWarning#warncuando se invoca el código de la biblioteca obsoleta (falsede forma predeterminada).warn_on_all_deprecations: Emite una advertencia de baja en cada llamada, en lugar de una vez por sitio de llamada (falsede forma predeterminada).
Campos de registro (consulta la guía de registro para obtener todos los detalles):
log_level: Es el nivel mínimo de mensajes de registro que deseas registrar. Por ejemplo, si especificas'DEBUG', se registran todos los mensajes, y si especificas'INFO', se excluyen los mensajesDEBUG, mientras que se muestran todos los demás mensajes.log_target: Es la ubicación en la que deseas registrar, comoSTDERRo una ruta de acceso.logger: Especifica tu propio registrador personalizado. Si especificas esto, se anularánlog_levelylog_target.
Variables de entorno
Puedes configurar la biblioteca cliente con variables de entorno. No se cargan de forma predeterminada y requieren una llamada explícita después de crear una instancia del cliente para cargarse. Consulta la lista completa de variables de entorno estándar.
Para cargar las variables de entorno en tu Config, llama a
load_environment_config:
client = Google::Ads::GoogleAds::GoogleAdsClient.new
client.load_environment_config
Cada vez que se llama a load_environment_config, las variables de entorno definidas
reemplazan los valores correspondientes que ya están presentes en Config (las variables de entorno
sin configurar dejan sin cambios los valores de configuración existentes). Con este
mecanismo, puedes mantener un archivo de configuración predeterminado y anular valores
específicos con variables de entorno, o configurar el cliente por completo con
variables de entorno.
Además de las variables de entorno estándar, la biblioteca de Ruby admite dos variables adicionales:
GOOGLE_ADS_RUBY_LOG_LEVEL: Es equivalente alog_level, como se explicó anteriormente.GOOGLE_ADS_RUBY_HTTP_PROXY: Especifica una URL de proxy HTTP.