Saltar a contenido

cloud_logging

app.contrib.gcp.cloud_logging

Clases/funciones para manejar el sistema de logs del BackEnd usando GCP.

Para más información te recomendamos leer la documentación del Proyecto.

GCP Environment variables

Como usar
1
2
3
4
from app.contrib.gcp.cloud_logging import init_gcp_logger

...
my_logger_gcp: bool = init_gcp_logger()

GCPLoggingHandler

Permite configurar la información recibida de loguru para enviarla a Google Cloud Logging.

Examples:

1
2
3
4
logger_name = f"{GCP_PROJECT_NAME}_logger_app"
gcp_format = "{level} » {message} {name}@{function} at {line}"
...
logger.add(GCPLoggingHandler(logger_name), format=gcp_format, diagnose=False)

__init__(logger_name)

Constructor de la clase GCPLoggingHandler.

Parameters:

Name Type Description Default
logger_name str

un nombre descriptivo para el log

required

write(message)

Organiza en log enviado por loguru para ser compatible con GCP.

Parameters:

Name Type Description Default
message Any

un objeto con inforación del log

required
Notes

algunos mensajes de logs utilizados por loguru, no son soportados en GCP, se validan para evitar errores.

init_gcp_logger()

Inicializa y configura el logger para GCP.

Returns:

Type Description
bool

indica si la configuración y carga del logger de GCP fué exitosa

Notes

esta función utiliza internamente a la clase GCPLoggingHandler.

Examples:

...
result: bool = init_gcp_logger()