diff --git a/api/app/observability.py b/api/app/observability.py index 38cb8bb..e79dc82 100644 --- a/api/app/observability.py +++ b/api/app/observability.py @@ -14,16 +14,14 @@ from opentelemetry.sdk.trace.export import ( ) from prometheus_client import start_http_server - _observability_initialized = False + def setup_observability(app: FastAPI) -> None: global _observability_initialized if _observability_initialized: return - - service_name = os.getenv("OTEL_SERVICE_NAME", "language-learning-api") metrics_host = os.getenv("OTEL_EXPORTER_PROMETHEUS_HOST", "0.0.0.0") metrics_port = int(os.getenv("OTEL_EXPORTER_PROMETHEUS_PORT", "9464")) @@ -40,10 +38,9 @@ def setup_observability(app: FastAPI) -> None: metrics.set_meter_provider(meter_provider) LoggingInstrumentor().instrument(set_logging_format=True) + FastAPIInstrumentor.instrument_app(app) # Expose OTel metrics for Prometheus scraping on the standard endpoint. start_http_server(port=metrics_port, addr=metrics_host) - - - _observability_initialized = True \ No newline at end of file + _observability_initialized = True