Configura Stackdriver Logging para Python

Puedes escribir registros en Stackdriver Logging desde las aplicaciones de Python con el controlador de registro de Python que se incluye con la biblioteca cliente de Stackdriver Logging o mediante la biblioteca cliente para acceder directamente a la API.

Antes de comenzar

  1. Accede a tu Cuenta de Google.

    Si todavía no tienes una cuenta, regístrate para obtener una nueva.

  2. Selecciona o crea un proyecto de GCP.

    Ir a la página Administrar recursos

  3. Asegúrate de tener habilitada la facturación para tu proyecto.

    Aprende a habilitar la facturación

  4. Habilita las Stackdriver Logging API necesarias.

    Habilita las API

  5. Prepara tu entorno para el desarrollo en Python.

    Ir a la guía de configuración de Python

Instala la biblioteca

Si quieres instalar la biblioteca de Stackdriver Logging para Python, consulta Instala la biblioteca cliente.

Una vez instalada, esta biblioteca incluye controladores de registro para conectar el módulo de registro estándar de Python a Stackdriver y, también, una biblioteca cliente de la API que se usa a fin de acceder a Stackdriver Logging de forma manual.

Conecta la biblioteca al registro de Python

Si quieres enviar todas las entradas de registro a Stackdriver y adjuntar el controlador de Stackdriver Logging al registrador raíz de Python, usa el método auxiliar 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()

Usa el registrador raíz de Python

Una vez que se adjunta el controlador, todos los registros que se encuentren en el nivel INFO o superior, de forma predeterminada, y que se emitan en tu aplicación, se enviarán a 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)

Si los mensajes se registran en Stackdriver Logging desde App Engine o Kubernetes Engine, el controlador los enviará a los tipos de recurso respectivos de esos entornos. De lo contrario, los registros aparecerán en el registro “python” en el tipo de recurso Global de forma predeterminada.

Configura el controlador de registro

Si quieres adjuntar el controlador de Stackdriver Logging para seleccionar solo los registradores de Python o, en caso contrario, configurar el controlador de registro, consulta la documentación de la biblioteca de la API.

Si deseas obtener más información sobre la instalación, consulta la documentación de la biblioteca de Stackdriver Logging para Python. También puedes informar sobre problemas con el seguimiento de problemas.

Usa la biblioteca cliente de Cloud directamente

Si deseas obtener información sobre el uso de la biblioteca cliente de Cloud de Stackdriver Logging para Python de forma directa, consulta Bibliotecas cliente de Stackdriver Logging.

Ejecuta en Google Cloud Platform

El uso de la biblioteca de Stackdriver Logging para Python requiere la función Escritor de registros de Cloud IAM en GCP. La mayoría de los entornos de GCP proporcionan esta función de forma predeterminada.

App Engine

App Engine otorga la función de Escritor de registros de forma predeterminada.

La biblioteca de Stackdriver Logging para Python se puede usar sin tener que proporcionar credenciales de forma explícita.

Stackdriver Logging se habilita de forma automática para las aplicaciones de App Engine. No se requiere ninguna configuración adicional.

Google Kubernetes Engine

En Google Kubernetes Engine, debes agregar el nivel de acceso logging.write cuando creas el clúster:

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

Compute Engine

Cuando uses las instancias de VM de Compute Engine, agrega el nivel de acceso cloud-platform a cada instancia. Cuando creas una instancia nueva mediante Google Cloud Platform Console, puedes hacer esto en la sección Identidad y acceso a la API del panel Crear instancia. Usa la cuenta de servicio predeterminada de Compute Engine o una cuenta de servicio diferente y selecciona Permitir acceso total a las API de Cloud en la sección Identidad y acceso a la API. Sin importar la cuenta de servicio que selecciones, asegúrate de que se le otorgue la función de Escritor de registros en la sección IAM y Administración de GCP Console.

Ejecuta de forma local y en otros lugares

Si deseas usar la biblioteca de Stackdriver Logging para Python fuera de GCP, debes suministrarle tu ID del proyecto de GCP y las credenciales correspondientes de tu cuenta de servicio de forma directa. Esto se aplica a la ejecución del agente en tu propia estación de trabajo, en las computadoras de tus centros de datos o en las instancias de VM de otro proveedor de servicios en la nube. Para obtener más información, consulta Obtén y proporciona credenciales de cuenta de servicio de forma manual.

Mira los registros

Después de la implementación, podrás ver los registros en el Visor de registros de GCP Console.

Ir al Visor de registros

Para obtener más información, consulta Visualiza los registros.

¿Te sirvió esta página? Envíanos tu opinión:

Enviar comentarios sobre…

Stackdriver Logging
¿Necesitas ayuda? Visita nuestra página de asistencia.