Zum Inhalt

bei ASGI

Wenn das [asgi] framework kein dedicated OpenTelemetry package hat , können Sie das [OpenTelemetry ASGI Middleware][opentelemetry-asgi].

Installation einrichten

Sie müssen das opentelemetry-instrumentation-asgi-Paket installieren :

pip install opentelemetry-instrumentation-asgi

Nutzung

Below, wir haben ein minimales Beispiel mit [Das Uvicorn][uvicorn] Sie können es mit laufen python main.py:

main.py
import logfire
from opentelemetry.instrumentation.asgi import OpenTelemetryMiddleware


logfire.configure()


async def app(scope, receive, send):
    assert scope["type"] == "http"
    await send(
        {
            "type": "http.response.start",
            "status": 200,
            "headers": [(b"content-type", b"text/plain"), (b"content-length", b"13")],
        }
    )
    await send({"type": "http.response.body", "body": b"Hello, world!"})

app = OpenTelemetryMiddleware(app)

if __name__ == "__main__":
    import uvicorn

    uvicorn.run(app)

Sie können mehr über die OpenTelemetry ASGI Middleware [hier][opentelemetry-asgi] lesen .

Capturing Request and Response Header Bearbeiten

[ Bearbeiten ] :https://asgi.readthedocs.io/en/latest/ [ Opentelemetry-ASGI ] :https://opentelemetry-python-contrib.readthedocs.io/en/latest/instrumentation/asgi/asgi.html [ bearbeiten ] :https://www.uvicorn.org/


本文总阅读量次