Geração de registros

A biblioteca pode ser configurada para registrar interações com a API Google Ads de várias maneiras. É possível registrar solicitações e respostas detalhadas, além de mensagens de resumo mais concisas. Essas definições são gerenciadas pela configuração da biblioteca de cliente. Confira abaixo os detalhes sobre os diferentes tipos de opções de configuração disponíveis.

A biblioteca usa o framework de geração de registros integrado do Python e os registros para stderr por padrão. Se incluído, o objeto logging definido na configuração é transmitido diretamente para logging.config.dictConfig como um dict.

Também é possível configurar a geração de registros de maneira programática, definindo uma configuração de geração de registros antes de inicializar o cliente. É possível recuperar a instância de logger do cliente e configurá-la com o seguinte exemplo:

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

O registrador do cliente é configurado quando o cliente é inicializado. Todas as alterações subsequentes na configuração da geração de registros serão ignoradas. Para modificar de maneira programática a configuração de geração de registros no arquivo YAML, chame as linhas acima antes da inicialização do cliente.

Níveis de registro

O cliente gera registros em alguns níveis diferentes, e é possível definir a configuração para ver alguns ou todos os itens abaixo:

Nível Solicitação bem-sucedida Falha na solicitação
DEBUG Um registro detalhado com objetos de solicitação e resposta completos como JSON. Um registro detalhado com objetos completos de solicitação e exceção como JSON.
INFO Um resumo conciso com campos de solicitação e resposta específicos. Um registro detalhado com objetos completos de solicitação e exceção como JSON.
WARNING Nenhuma Um resumo conciso com informações específicas sobre a solicitação, o estado da exceção e a mensagem.

Como o framework de geração de registros do Python ignora as mensagens de registro menos graves do que o nível configurado, definir como WARNING significa que você verá apenas mensagens concisas relacionadas a solicitações com falha, mas definir como DEBUG significa que você verá todos os tipos possíveis de registros na tabela acima.

Fazendo login no arquivo

É fácil canalizar as mensagens de registro para um arquivo. Por exemplo, ao executar o exemplo get_campaigns:

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

Interceptores de geração de registros

A biblioteca de cliente Python usa interceptores gRPC para acessar e registrar detalhes da solicitação e da resposta. É possível configurar sua própria geração de registros personalizada criando um interceptor gRPC com lógica personalizada. Consulte o guia do Logging para ver mais detalhes e um exemplo de interceptador de geração de registros personalizado.