콘텐츠로 이동

ASGI

만약 ASGI 프레임워크에는 전용 OpenTelemetry 패키지가 없습니다. OpenTelemetry ASGI 미들웨어.

설치

opentelemetry-instrumentation-asgi 패키지를 설치해야 합니다.

pip install opentelemetry-instrumentation-asgi

사용법

아래에는Uvicorn를 사용하는 최소한의 예가 있습니다.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)

OpenTelemetry ASGI 미들웨어에 대한 자세한 내용은 여기에서를 참조하십시오.

요청 및 응답 헤더 캡처


本文总阅读量次