Logging

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

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

Puoi anche configurare il logging in modo programmatico impostando una configurazione di logging prima di inizializzare il 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 al momento dell'inizializzazione del client. Eventuali modifiche successive alla configurazione del logging verranno ignorate. Per eseguire l'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 i 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 breve riepilogo con campi specifici di richiesta e risposta. Un log dettagliato con oggetti di richiesta ed eccezione completi in formato JSON.
WARNING Nessun valore Un breve riepilogo con informazioni specifiche sulla richiesta, lo stato dell'eccezione e il messaggio.

Poiché il framework di logging di Python ignora i messaggi di log meno gravi del livello configurato, l'impostazione su WARNING significa che vedrai solo messaggi concisi relativi alle richieste non riuscite, mentre l'impostazione su DEBUG significa che vedrai tutti i possibili tipi di log nella tabella precedente.

Logging a file

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

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

Intercettatori di logging

La libreria client Python utilizza gli intercetti gRPC per accedere e registrare i dettagli di richieste e risposte. Puoi configurare il logging personalizzato creando un intercettatore gRPC con logica personalizzata. Consulta la Guida a Logging per ulteriori dettagli e per un esempio di intercettatore di logging personalizzato.