Journalisation

La bibliothèque peut être configurée pour enregistrer les interactions avec l'API Google Ads de différentes manières. Vous pouvez consigner des requêtes et des réponses détaillées, ainsi que des messages récapitulatifs plus concis. Ces paramètres sont gérés par le configuration de la bibliothèque cliente. Vous trouverez ci-dessous des informations les différents types d'options de configuration disponibles.

La bibliothèque utilise la fonction de journalisation intégrée de Python et les journaux sur stderr par défaut. S'il est inclus, l'objet logging définies dans votre configuration est transmise directement logging.config.dictConfig en tant que dict.

Vous pouvez également configurer la journalisation par programmation en définissant configuration avant d'initialiser le client. Vous pouvez récupérer le client et configurez-la avec l'exemple suivant:

import logging
logging.basicConfig(level=logging.INFO, format='[%(asctime)s - %(levelname)s] %(message).5000s')
logging.getLogger('google.ads.googleads.client').setLevel(logging.INFO)

Notez que l'enregistreur client est configuré lorsque le client est initialisé. N'importe quelle valeur les modifications ultérieures apportées à la configuration de journalisation seront ignorées. Afin de remplacer par programmation la configuration de journalisation dans le fichier YAML, assurez-vous appelez les lignes ci-dessus avant l'initialisation du client.

Niveaux de journalisation

Le client génère des journaux à différents niveaux, et vous pouvez définir configuration pour afficher tout ou partie des éléments ci-dessous:

Niveau Demande réussie Échec de la demande
DEBUG Un journal détaillé avec des objets de requête et de réponse complets au format JSON. Un journal détaillé avec des objets de requête et d'exception complets au format JSON.
INFO Résumé concis avec des champs de requête et de réponse spécifiques. Un journal détaillé avec des objets de requête et d'exception complets au format JSON.
WARNING Aucun Résumé concis contenant des informations spécifiques sur la requête, l'état de l'exception et le message.

Comme le framework de journalisation Python ignore les messages de journal moins graves que le niveau configuré, la valeur WARNING signifie que vous ne verrez des messages concis associés aux requêtes ayant échoué. En revanche, si vous le définissez sur DEBUG, cela signifie vous verrez tous les types de journaux possibles dans le tableau ci-dessus.

Journalisation dans le fichier

Vous pouvez facilement diriger les messages de journal vers un fichier ; par exemple, lors de l'exécution Exemple pour get_campaigns :

python get_campaigns.py -c $CLIENT_ID 2> example.log

Interceptions de journalisation

La bibliothèque cliente Python utilise gRPC intercepteurs pour y accéder et consigner les requêtes et les détails de la réponse. Vous pouvez configurer votre propre journalisation personnalisée en créant un gRPC avec une logique personnalisée. Reportez-vous à la section Journalisation ce guide pour obtenir plus de détails et un exemple d'intercepteur de journalisation personnalisé.