Skip to content

Commit 76b2033

Browse files
author
Andrei Neagu
committed
fixed tracing setup
1 parent d4d8e65 commit 76b2033

File tree

2 files changed

+8
-17
lines changed
  • packages/service-library/src/servicelib/fastapi
  • services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core

2 files changed

+8
-17
lines changed

packages/service-library/src/servicelib/fastapi/tracing.py

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,8 @@
33
"""
44

55
import logging
6-
from collections.abc import AsyncIterator
76

87
from fastapi import FastAPI
9-
from fastapi_lifespan_manager import State
108
from httpx import AsyncClient, Client
119
from opentelemetry import trace
1210
from opentelemetry.exporter.otlp.proto.http.trace_exporter import (
@@ -17,7 +15,6 @@
1715
from opentelemetry.sdk.resources import Resource
1816
from opentelemetry.sdk.trace import TracerProvider
1917
from opentelemetry.sdk.trace.export import BatchSpanProcessor
20-
from servicelib.fastapi.lifespan_utils import LifespanGenerator
2118
from servicelib.logging_utils import log_context
2219
from settings_library.tracing import TracingSettings
2320
from yarl import URL
@@ -134,14 +131,10 @@ def setup_tracing(
134131
RequestsInstrumentor().instrument()
135132

136133

137-
def get_lifespan_tracing(
138-
tracing_settings: TracingSettings, service_name: str
139-
) -> LifespanGenerator:
140-
async def _(app: FastAPI) -> AsyncIterator[State]:
141-
setup_tracing(app, tracing_settings, service_name)
142-
yield {}
143-
144-
return _
134+
def initialize_tracing(
135+
app: FastAPI, tracing_settings: TracingSettings, service_name: str
136+
):
137+
setup_tracing(app, tracing_settings, service_name)
145138

146139

147140
def setup_httpx_client_tracing(client: AsyncClient | Client):

services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/application.py

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
initialize_prometheus_instrumentation,
1010
lifespan_prometheus_instrumentation,
1111
)
12-
from servicelib.fastapi.tracing import get_lifespan_tracing
12+
from servicelib.fastapi.tracing import initialize_tracing
1313

1414
from .._meta import (
1515
API_VERSION,
@@ -59,11 +59,6 @@ def create_app(settings: ApplicationSettings | None = None) -> FastAPI:
5959
if app_settings.DYNAMIC_SCHEDULER_PROMETHEUS_INSTRUMENTATION_ENABLED:
6060
lifespans.append(lifespan_prometheus_instrumentation)
6161

62-
if app_settings.DYNAMIC_SCHEDULER_TRACING:
63-
lifespans.append(
64-
get_lifespan_tracing(app_settings.DYNAMIC_SCHEDULER_TRACING, APP_NAME)
65-
)
66-
6762
app = FastAPI(
6863
title=f"{PROJECT_NAME} web API",
6964
description=SUMMARY,
@@ -87,6 +82,9 @@ def create_app(settings: ApplicationSettings | None = None) -> FastAPI:
8782

8883
initialize_frontend(app)
8984

85+
if app_settings.DYNAMIC_SCHEDULER_TRACING:
86+
initialize_tracing(app, app_settings.DYNAMIC_SCHEDULER_TRACING, APP_NAME)
87+
9088
if app_settings.DYNAMIC_SCHEDULER_PROFILING:
9189
initialize_profiler(app)
9290

0 commit comments

Comments
 (0)