Configuration

La configuration est effectuée à l'aide d'une classe Config. Vous pouvez accéder à cette classe de différentes manières, par exemple pour écrire un fichier de configuration, spécifier des valeurs lors de la création ou charger des valeurs à partir de variables d'environnement.

Fichier de configuration

Vous pouvez spécifier un fichier google_ads_config.rb à utiliser pour instancier le client.

Si vous n'utilisez aucun argument lors de l'instanciation:

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

la bibliothèque recherchera l'emplacement spécifié dans la variable d'environnement GOOGLE_ADS_CONFIGURATION_FILE_PATH. Si cette variable n'est pas définie, la bibliothèque recherchera le fichier dans votre répertoire HOME.

Vous pouvez également spécifier un chemin d'accès:

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

auquel cas le client recherchera le fichier à l'emplacement correspondant.

Le moyen le plus simple de générer ce fichier consiste à copier l'élément google_ads_config.rb à partir du dépôt GitHub, puis à le modifier pour inclure votre jeton d'actualisation, votre ID client et votre code secret du client.

Configuration dynamique

Vous pouvez configurer la configuration de manière dynamique lors de l'instanciation de la bibliothèque, ou même après:

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

Vous pouvez même modifier la configuration après l'instanciation:

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

Champs de configuration

L'objet Config accepte les champs suivants.

Champs généraux:

  • refresh_token : votre jeton d'actualisation OAuth.
  • client_id : votre ID client OAuth.
  • client_secret: votre code secret client OAuth.
  • developer_token: votre jeton de développeur pour accéder à l'API
  • login_customer_id: consultez la documentation sur l'ID client de connexion.

Champs de journalisation. Pour en savoir plus, consultez le Guide de journalisation.

  • log_level : messages de niveau de journal minimal que vous souhaitez consigner. Par exemple, spécifiez 'DEBUG' pour vous assurer que tous les messages de journal sont affichés, et 'INFO' pour exclure les messages DEBUG, mais afficher tous les autres messages.
  • log_target: emplacement de connexion, par exemple STDERR.
  • logger: permet de spécifier votre propre enregistreur personnalisé. Si vous spécifiez cela, les paramètres log_level et log_target seront remplacés.

Variables d'environnement

Vous pouvez configurer la bibliothèque cliente à l'aide de variables d'environnement. Ils ne sont pas chargés par défaut et nécessitent un appel supplémentaire après l'instanciation du client. Consultez la liste complète des variables d'environnement compatibles avec toutes les langues.

Pour charger les variables d'environnement dans votre Config, appelez load_environment_config:

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

Chaque fois que cette méthode est appelée, l'état actuel des variables d'environnement remplace les éléments déjà présents dans Config. Ce mécanisme vous permet par exemple d'avoir une configuration par défaut, mais de remplacer des valeurs spécifiques par des variables d'environnement ou de les configurer entièrement avec des variables d'environnement.

En plus des variables d'environnement compatibles avec toutes les bibliothèques, celle-ci comporte deux variables supplémentaires:

  • GOOGLE_ADS_RUBY_LOG_LEVEL : comme log_level ci-dessus.
  • GOOGLE_ADS_RUBY_HTTP_PROXY: spécifiez un proxy HTTP.