Como configurar o Stackdriver Logging para Python

Você pode gravar registros de aplicativos do Python no Stackdriver Logging usando o gerenciador de geração de registros do Python com a biblioteca de cliente do Stackdriver Logging. Também é possível usar a biblioteca de cliente para acessar a API diretamente.

Antes de começar

  1. Faça login na sua Conta do Google.

    Se você ainda não tiver uma, inscreva-se.

  2. Selecione ou crie um projeto do Google Cloud Platform.

    Acessar a página Gerenciar recursos

  3. Verifique se o faturamento foi ativado no projeto do Google Cloud Platform.

    Saiba como ativar o faturamento

  4. Ativar Stackdriver Logging API.

    Ativar a API

  5. Prepare o ambiente para o desenvolvimento do Python.

    Ir para o guia de configuração do Python

Como instalar a biblioteca

Para instalar a biblioteca do Stackdriver Logging para Python, consulte Como instalar a biblioteca de cliente.

Depois de instalada, essa biblioteca inclui gerenciadores de geração de registros para conectar o módulo de geração de registros padrão do Python ao Stackdriver, bem como uma biblioteca de cliente da API para acessar o Stackdriver Logging manualmente.

Como conectar a biblioteca à geração de registros do Python

Para enviar todas as entradas de registro para o Stackdriver, por meio de anexação do gerenciador do Stackdriver Logging ao registrador de raiz do Python, use o método de ajuda setup_logging:

# Imports the Google Cloud client library
import google.cloud.logging

# Instantiates a client
client = google.cloud.logging.Client()

# Connects the logger to the root logging handler; by default this captures
# all logs at INFO level and higher
client.setup_logging()

Como usar o registrador de raiz do Python

Depois que o gerenciador estiver conectado, todos os registros, por padrão, no nível de INFO ou superior que são emitidos no seu aplicativo serão enviados para o Stackdriver Logging:

# Imports Python standard library logging
import logging

# The data to log
text = 'Hello, world!'

# Emits the data using the standard logging module
logging.warn(text)

Se as mensagens estiverem com geração de registros para o Stackdriver Logging do App Engine ou do Kubernetes Engine, o gerenciador as enviará para os respectivos tipos de recurso desses ambientes. Caso contrário, os registros aparecerão, por padrão, sob o registro "python" no tipo de recurso Global.

Como configurar o gerenciador da geração de registros

Para anexar o gerenciador de registros do Stackdriver logging a fim de selecionar apenas registradores de Python ou, de outra forma, configurar o gerenciador da geração de registros, consulte a documentação da biblioteca da API

Para mais informações sobre a instalação, consulte a documentação da biblioteca do Stackdriver Logging para Python. Além disso, use o rastreador de problemas para informá-los.

Como usar a biblioteca de cliente do Cloud diretamente

Para informações sobre como usar a biblioteca de cliente do Cloud do Stackdriver Logging para Python diretamente, consulte Bibliotecas de cliente do Stackdriver Logging.

Como executar no Google Cloud Platform

O uso da biblioteca do Stackdriver Logging para Python exige o papel de gravador de registros do Cloud IAM no GCP. A maioria dos ambientes do GCP disponibiliza esse papel por padrão.

App Engine

O App Engine concede o papel de gravador de registros por padrão.

A biblioteca do Stackdriver Logging para Python pode ser usada sem a necessidade de fornecer credenciais explicitamente.

O Stackdriver Logging é ativado automaticamente para aplicativos do App Engine. Nenhuma outra configuração é necessária.

Google Kubernetes Engine

No Google Kubernetes Engine, adicione o escopo de acesso logging.write ao criar o cluster:

gcloud container clusters create example-cluster-name --scopes https://www.googleapis.com/auth/logging.write

Compute Engine

Ao usar instâncias de VM do Compute Engine, adicione o escopo de acesso cloud-platform a cada instância. Ao criar uma nova instância por meio do Console do Google Cloud Platform, faça isso na seção de Identidade e acesso à API do painel Criar instância. Use a conta de serviço padrão do Compute Engine ou outra de sua escolha e selecione Permitir acesso completo a todas as APIs do Cloud na seção Identidade e acesso à API. Seja qual for a conta de serviço selecionada, verifique se o papel Gravador de registros foi concedido na seção IAM e administrador do Console do GCP.

Como executar localmente e em outro local

Para usar a biblioteca do Stackdriver Logging para Python fora do GCP, você precisa fornecer o código do projeto no GCP e as credenciais da conta de serviço apropriadas diretamente à biblioteca do Stackdriver Logging para Python. Isso se aplica à execução do agente na própria estação de trabalho, nos computadores dos data centers ou nas instâncias de VM de outro provedor de nuvem. Para mais informações, consulte Como receber e fornecer credenciais da conta de serviço manualmente.

Como visualizar os registros

Após a implantação, você pode consultar os registros no Visualizador de registros do Console do GCP.

Acessar o Visualizador de registros

No Visualizador de registros, é preciso especificar um ou mais recursos, mas a escolha de recursos pode não ser óbvia. Veja a seguir algumas dicas para ajudar você a começar:

  • Se você estiver implantando seu aplicativo no App Engine ou usando as bibliotecas específicas dele, defina seu recurso como aplicativo do GAE.

  • Se você estiver implantando seu aplicativo no Compute Engine, defina o recurso como Instância de VM do GCE.

  • Se você estiver implantando seu aplicativo no Google Kubernetes Engine, a configuração de geração de registros do cluster determinará o tipo de recurso das entradas de registro. Para ver uma discussão detalhada sobre as soluções do Stackdriver legado e do Stackdriver Kubernetes Monitoring e como essas opções afetam o tipo de recurso, consulte Como migrar para o Kubernetes Monitoring.

  • Se seu aplicativo estiver usando a API do Stackdriver Logging diretamente, o recurso dependerá da API e da sua configuração. Por exemplo, no seu aplicativo, é possível especificar um recurso ou usar um recurso padrão.

  • Se você não vir nenhum registro no Visualizador de registros, para ver todas as entradas de registro, alterne para o modo de filtro avançado e use um filtro vazio.

    1. Para alternar para o modo de filtro avançado, clique no menu (▾) na parte superior do Visualizador de registros e selecione Converter para filtro avançado.
    2. Limpe o conteúdo que aparece na caixa de filtro.
    3. Clique em Enviar filtro.

    É possível examinar as entradas individuais para identificar seus recursos.

Para mais informações, consulte as páginas Como ver registros e Filtros de registro avançados.

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Stackdriver Logging
Precisa de ajuda? Acesse nossa página de suporte.