Skip to main content

Logging Wrapper for fastapi with Cloud Logging

Project description

Wrapper para trabalhar com a API do Cloud Logging

Procedimento para upload no Pypi

Pré requisitos

Instalar pacotes python python3 -m pip install --upgrade setuptools build wheel twine

Build e enviar ao PYPI

python3 -m build

python3 -m twine upload dist/*

Instalar o pacote no projeto

pip install fastapi-logging

Utilização da biblioteca

Essa biblioteca espera que você passe o schema dos dados da tabela

Aconselho criar um arquivo de schema.py ou model.py onde seja definido a estrutura de dados da tabela.

Instanciar o Middleware

Com o schema definido, você deve instanciar um classe

from starlette.middleware import Middleware
from fastapi.middleware.cors import CORSMiddleware
from starlette_context.middleware.raw_middleware import RawContextMiddleware
from fastapi_logging.logging import LogMidddleware
from fastapi_logging.logging import logging
from fastapi_logging.logging import TracePlugin
from starlette_context import context, plugins

middlewares = [
    Middleware(
        RawContextMiddleware,
        plugins=(
            plugins.CorrelationIdPlugin(),
            TracePlugin(),
            plugins.RequestIdPlugin(),
        ),
    ),
    Middleware(LogMidddleware),
    Middleware(CORSMiddleware,
    
    allow_origins=BACKEND_CORS_ORIGINS,
    allow_credentials=True,
    allow_methods=["*"],
    allow_headers=["*"],)
]

app = FastAPI(
    title='Iris Typification', 
    openapi_url="/api/v1/openapi.json",
    middleware=middlewares
    )

Principais operações

Usando a classe, você pode executar algumas operações para auxiliar no densenvolvimento

Logging

logging.info({"key": "value"})

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page