Logging

La libreria può essere configurata per registrare le interazioni con l'API Google Ads in vari modi. Puoi registrare richieste e risposte dettagliate, nonché messaggi di riepilogo più concisi. Queste impostazioni sono gestite dalla configurazione della libreria client. Di seguito sono riportati i dettagli sui diversi tipi di opzioni di configurazione disponibili.

La libreria utilizza il framework di logging integrato di Python e registra i log in stderr per impostazione predefinita. Se incluso, l'oggetto logging definito nella configurazione viene passato direttamente a logging.config.dictConfig come dict.

Puoi anche configurare il logging in modo programmatico impostando una configurazione di logging prima dell'inizializzazione del client. Puoi recuperare l'istanza del logger client e configurarla con il seguente esempio:

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

Tieni presente che il logger del client viene configurato quando il client viene inizializzato. Eventuali modifiche successive alla configurazione di logging verranno ignorate. Per eseguire il override della configurazione di logging nel file YAML in modo programmatico, assicurati di chiamare le righe precedenti prima dell'inizializzazione del client.

Livelli di log

Il client genera log a diversi livelli e puoi impostare la configurazione in modo da visualizzare alcuni o tutti i seguenti elementi:

Livello Richiesta riuscita Richiesta non riuscita
DEBUG Un log dettagliato con oggetti di richiesta e risposta completi in formato JSON. Un log dettagliato con oggetti di richiesta ed eccezione completi in formato JSON.
INFO Un riepilogo conciso con campi di richiesta e risposta specifici. Un log dettagliato con oggetti di richiesta ed eccezione completi in formato JSON.
WARNING Nessuno Un riepilogo conciso con informazioni specifiche sulla richiesta, lo stato e il messaggio dell'eccezione.

Poiché il framework di logging di Python ignora i messaggi di log meno gravi rispetto al livello configurato, se imposti il valore WARNING vedrai solo messaggi concisi relativi alle richieste non riuscite, mentre se imposti il valore DEBUG vedrai tutti i tipi possibili di log nella tabella sopra.

Registrazione in un file

Puoi incanalare facilmente i messaggi di log in un file, ad esempio quando esegui l'esempio get_campaigns:

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

Interceptor di log

La libreria client Python utilizza gli intercettatori gRPC per accedere e registrare i dettagli delle richieste e delle risposte. Puoi configurare il tuo logging personalizzato creando un interruttore gRPC con logica personalizzata. Per ulteriori dettagli ed esempi di intercettatori di log personalizzati, consulta la guida alla registrazione.