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'APIlogin_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 exempleSTDERR
.logger
: permet de spécifier votre propre enregistreur personnalisé. Si vous spécifiez cela, les paramètreslog_level
etlog_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
: commelog_level
ci-dessus.GOOGLE_ADS_RUBY_HTTP_PROXY
: spécifiez un proxy HTTP.