diff --git a/function/fastapi_app.py b/function/fastapi_app.py index 3b8d2cf..c9126f9 100644 --- a/function/fastapi_app.py +++ b/function/fastapi_app.py @@ -2,6 +2,7 @@ import fastapi from azure.monitor.opentelemetry.exporter import AzureMonitorTraceExporter +from opentelemetry import trace from opentelemetry.instrumentation.fastapi import FastAPIInstrumentor from opentelemetry.sdk.resources import SERVICE_NAME, Resource from opentelemetry.sdk.trace import TracerProvider @@ -16,7 +17,10 @@ def create_app(): exporter = AzureMonitorTraceExporter.from_connection_string(conn_str) tracer = TracerProvider(resource=Resource({SERVICE_NAME: "api"})) tracer.add_span_processor(BatchSpanProcessor(exporter)) - FastAPIInstrumentor.instrument_app(app, tracer_provider=tracer) + trace.set_tracer_provider(tracer) + + # Use the newer instrumentation pattern + FastAPIInstrumentor().instrument() app.include_router(fastapi_routes.router) diff --git a/requirements.txt b/requirements.txt index ca1aab5..ae8bc24 100644 --- a/requirements.txt +++ b/requirements.txt @@ -7,5 +7,5 @@ py-staticmaps==0.4.0 fastapi==0.111.0 Pillow==9.5.0 nest-asyncio==1.6.0 -opentelemetry-instrumentation-fastapi==0.46b0 +opentelemetry-instrumentation-fastapi==0.48b0 azure-monitor-opentelemetry-exporter==1.0.0b26