From dbb27227c7c86d499d2d7cfb0291c7339d2e9b2e Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Tue, 6 May 2025 07:38:10 +0200 Subject: [PATCH 01/24] add aio pika instrumentation dependency --- packages/service-library/requirements/_base.in | 1 + packages/service-library/requirements/_base.txt | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/packages/service-library/requirements/_base.in b/packages/service-library/requirements/_base.in index 027a631287e..24222e414b8 100644 --- a/packages/service-library/requirements/_base.in +++ b/packages/service-library/requirements/_base.in @@ -18,6 +18,7 @@ arrow # date/time faststream opentelemetry-api opentelemetry-exporter-otlp +opentelemetry-instrumentation-aio-pika opentelemetry-instrumentation-logging opentelemetry-instrumentation-redis opentelemetry-instrumentation-requests diff --git a/packages/service-library/requirements/_base.txt b/packages/service-library/requirements/_base.txt index 598db33e994..eff7a60be07 100644 --- a/packages/service-library/requirements/_base.txt +++ b/packages/service-library/requirements/_base.txt @@ -103,6 +103,7 @@ opentelemetry-api==1.30.0 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests @@ -120,9 +121,12 @@ opentelemetry-exporter-otlp-proto-http==1.30.0 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.51b0 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.51b0 + # via -r requirements/_base.in opentelemetry-instrumentation-logging==0.51b0 # via -r requirements/_base.in opentelemetry-instrumentation-redis==0.51b0 @@ -297,6 +301,7 @@ wrapt==1.17.2 # via # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-redis yarl==1.18.3 # via From 245856172aed475631b0842dc451293ecbf3afb3 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Tue, 6 May 2025 08:14:16 +0200 Subject: [PATCH 02/24] upgrade dependency accross entire repo --- packages/aws-library/requirements/_base.txt | 5 +++++ packages/simcore-sdk/requirements/_base.txt | 5 +++++ services/agent/requirements/_base.txt | 5 +++++ services/api-server/requirements/_base.txt | 7 +++++++ services/autoscaling/requirements/_base.txt | 7 +++++++ services/catalog/requirements/_base.txt | 5 +++++ services/clusters-keeper/requirements/_base.txt | 7 +++++++ services/dask-sidecar/requirements/_base.txt | 5 +++++ services/datcore-adapter/requirements/_base.txt | 5 +++++ services/director-v2/requirements/_base.txt | 7 +++++++ services/director/requirements/_base.txt | 5 +++++ services/docker-api-proxy/requirements/_test.txt | 5 +++++ services/dynamic-scheduler/requirements/_base.txt | 5 +++++ services/dynamic-sidecar/requirements/_base.txt | 7 +++++++ services/efs-guardian/requirements/_base.txt | 7 +++++++ services/invitations/requirements/_base.txt | 5 +++++ services/notifications/requirements/_base.txt | 5 +++++ services/payments/requirements/_base.txt | 5 +++++ services/resource-usage-tracker/requirements/_base.txt | 7 +++++++ services/storage/requirements/_base.txt | 7 +++++++ services/web/server/requirements/_base.txt | 7 +++++++ tests/swarm-deploy/requirements/_test.txt | 7 +++++++ 22 files changed, 130 insertions(+) diff --git a/packages/aws-library/requirements/_base.txt b/packages/aws-library/requirements/_base.txt index 4834672e618..447fd444b78 100644 --- a/packages/aws-library/requirements/_base.txt +++ b/packages/aws-library/requirements/_base.txt @@ -145,6 +145,7 @@ opentelemetry-api==1.30.0 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis @@ -164,10 +165,13 @@ opentelemetry-exporter-otlp-proto-http==1.30.0 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.51b0 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.51b0 + # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-botocore==0.51b0 # via -r requirements/_base.in opentelemetry-instrumentation-logging==0.51b0 @@ -431,6 +435,7 @@ wrapt==1.17.2 # aiobotocore # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-redis yarl==1.18.3 # via diff --git a/packages/simcore-sdk/requirements/_base.txt b/packages/simcore-sdk/requirements/_base.txt index 16690f9cea4..7f57a547a5b 100644 --- a/packages/simcore-sdk/requirements/_base.txt +++ b/packages/simcore-sdk/requirements/_base.txt @@ -156,6 +156,7 @@ opentelemetry-api==1.30.0 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis @@ -174,10 +175,13 @@ opentelemetry-exporter-otlp-proto-http==1.30.0 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.51b0 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.51b0 + # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asyncpg==0.51b0 # via -r requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-logging==0.51b0 @@ -469,6 +473,7 @@ wrapt==1.17.2 # via # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-redis yarl==1.18.3 # via diff --git a/services/agent/requirements/_base.txt b/services/agent/requirements/_base.txt index be74471a876..d6c76a09aff 100644 --- a/services/agent/requirements/_base.txt +++ b/services/agent/requirements/_base.txt @@ -157,6 +157,7 @@ opentelemetry-api==1.30.0 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx @@ -177,12 +178,15 @@ opentelemetry-exporter-otlp-proto-http==1.30.0 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.51b0 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.51b0 + # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.51b0 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-fastapi==0.51b0 @@ -461,6 +465,7 @@ wrapt==1.17.2 # via # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis yarl==1.18.3 diff --git a/services/api-server/requirements/_base.txt b/services/api-server/requirements/_base.txt index 806e91abc2e..98c381559b3 100644 --- a/services/api-server/requirements/_base.txt +++ b/services/api-server/requirements/_base.txt @@ -348,6 +348,7 @@ opentelemetry-api==1.28.2 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi @@ -371,6 +372,7 @@ opentelemetry-exporter-otlp-proto-http==1.28.2 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.49b2 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi @@ -378,6 +380,10 @@ opentelemetry-instrumentation==0.49b2 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.49b2 + # via + # -r requirements/../../../packages/service-library/requirements/_base.in + # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.49b2 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-asyncpg==0.49b2 @@ -935,6 +941,7 @@ wrapt==1.17.0 # via # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis yarl==1.18.3 diff --git a/services/autoscaling/requirements/_base.txt b/services/autoscaling/requirements/_base.txt index f9cbe95c27c..91e91dadcae 100644 --- a/services/autoscaling/requirements/_base.txt +++ b/services/autoscaling/requirements/_base.txt @@ -301,6 +301,7 @@ opentelemetry-api==1.28.2 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-fastapi @@ -325,6 +326,7 @@ opentelemetry-exporter-otlp-proto-http==1.28.2 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.49b2 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-fastapi @@ -332,6 +334,10 @@ opentelemetry-instrumentation==0.49b2 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.49b2 + # via + # -r requirements/../../../packages/aws-library/requirements/../../../packages/service-library/requirements/_base.in + # -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.49b2 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-botocore==0.49b2 @@ -818,6 +824,7 @@ wrapt==1.17.0 # aiobotocore # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis yarl==1.18.3 diff --git a/services/catalog/requirements/_base.txt b/services/catalog/requirements/_base.txt index f003df17d88..74220d2b7e5 100644 --- a/services/catalog/requirements/_base.txt +++ b/services/catalog/requirements/_base.txt @@ -223,6 +223,7 @@ opentelemetry-api==1.31.0 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi @@ -244,6 +245,7 @@ opentelemetry-exporter-otlp-proto-http==1.31.0 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.52b0 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi @@ -251,6 +253,8 @@ opentelemetry-instrumentation==0.52b0 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.52b0 + # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.52b0 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-asyncpg==0.52b0 @@ -615,6 +619,7 @@ wrapt==1.17.2 # via # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis yarl==1.18.3 diff --git a/services/clusters-keeper/requirements/_base.txt b/services/clusters-keeper/requirements/_base.txt index fb84b2d55cf..810a047abdc 100644 --- a/services/clusters-keeper/requirements/_base.txt +++ b/services/clusters-keeper/requirements/_base.txt @@ -299,6 +299,7 @@ opentelemetry-api==1.28.2 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-fastapi @@ -323,6 +324,7 @@ opentelemetry-exporter-otlp-proto-http==1.28.2 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.49b2 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-fastapi @@ -330,6 +332,10 @@ opentelemetry-instrumentation==0.49b2 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.49b2 + # via + # -r requirements/../../../packages/aws-library/requirements/../../../packages/service-library/requirements/_base.in + # -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.49b2 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-botocore==0.49b2 @@ -816,6 +822,7 @@ wrapt==1.17.0 # aiobotocore # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis yarl==1.18.3 diff --git a/services/dask-sidecar/requirements/_base.txt b/services/dask-sidecar/requirements/_base.txt index f59d2014f25..bd620bf1bf7 100644 --- a/services/dask-sidecar/requirements/_base.txt +++ b/services/dask-sidecar/requirements/_base.txt @@ -216,6 +216,7 @@ opentelemetry-api==1.28.2 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests @@ -233,9 +234,12 @@ opentelemetry-exporter-otlp-proto-http==1.28.2 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.49b2 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.49b2 + # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-logging==0.49b2 # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-redis==0.49b2 @@ -575,6 +579,7 @@ wrapt==1.17.0 # aiobotocore # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-redis xyzservices==2024.9.0 # via bokeh diff --git a/services/datcore-adapter/requirements/_base.txt b/services/datcore-adapter/requirements/_base.txt index 20ad90c8117..53d1d479835 100644 --- a/services/datcore-adapter/requirements/_base.txt +++ b/services/datcore-adapter/requirements/_base.txt @@ -178,6 +178,7 @@ opentelemetry-api==1.26.0 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx @@ -198,12 +199,15 @@ opentelemetry-exporter-otlp-proto-http==1.26.0 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.47b0 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.47b0 + # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.47b0 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-fastapi==0.47b0 @@ -493,6 +497,7 @@ wrapt==1.16.0 # via # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-redis yarl==1.9.4 # via diff --git a/services/director-v2/requirements/_base.txt b/services/director-v2/requirements/_base.txt index a5ea32be699..17a3f150820 100644 --- a/services/director-v2/requirements/_base.txt +++ b/services/director-v2/requirements/_base.txt @@ -397,6 +397,7 @@ opentelemetry-api==1.30.0 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi @@ -420,6 +421,7 @@ opentelemetry-exporter-otlp-proto-http==1.30.0 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.51b0 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi @@ -427,6 +429,10 @@ opentelemetry-instrumentation==0.51b0 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.51b0 + # via + # -r requirements/../../../packages/service-library/requirements/_base.in + # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.51b0 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-asyncpg==0.51b0 @@ -1122,6 +1128,7 @@ wrapt==1.17.2 # via # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis wsproto==1.2.0 diff --git a/services/director/requirements/_base.txt b/services/director/requirements/_base.txt index f0a9700476e..2b0e2f99842 100644 --- a/services/director/requirements/_base.txt +++ b/services/director/requirements/_base.txt @@ -192,6 +192,7 @@ opentelemetry-api==1.28.1 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx @@ -212,12 +213,15 @@ opentelemetry-exporter-otlp-proto-http==1.28.1 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.49b1 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.49b1 + # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.49b1 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-fastapi==0.49b1 @@ -529,6 +533,7 @@ wrapt==1.16.0 # via # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis yarl==1.17.1 diff --git a/services/docker-api-proxy/requirements/_test.txt b/services/docker-api-proxy/requirements/_test.txt index a30e184bfa9..20fb3cd5d25 100644 --- a/services/docker-api-proxy/requirements/_test.txt +++ b/services/docker-api-proxy/requirements/_test.txt @@ -140,6 +140,7 @@ opentelemetry-api==1.30.0 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests @@ -157,9 +158,12 @@ opentelemetry-exporter-otlp-proto-http==1.30.0 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.51b0 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.51b0 + # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-logging==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-redis==0.51b0 @@ -452,6 +456,7 @@ wrapt==1.17.2 # via # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-redis yarl==1.18.3 # via diff --git a/services/dynamic-scheduler/requirements/_base.txt b/services/dynamic-scheduler/requirements/_base.txt index cf0ac62a608..426fa0c69f3 100644 --- a/services/dynamic-scheduler/requirements/_base.txt +++ b/services/dynamic-scheduler/requirements/_base.txt @@ -230,6 +230,7 @@ opentelemetry-api==1.30.0 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi @@ -251,6 +252,7 @@ opentelemetry-exporter-otlp-proto-http==1.30.0 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.51b0 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi @@ -258,6 +260,8 @@ opentelemetry-instrumentation==0.51b0 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.51b0 + # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.51b0 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-asyncpg==0.51b0 @@ -615,6 +619,7 @@ wrapt==1.17.2 # via # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis wsproto==1.2.0 diff --git a/services/dynamic-sidecar/requirements/_base.txt b/services/dynamic-sidecar/requirements/_base.txt index 5ff8a3fc5ea..c834f8d7727 100644 --- a/services/dynamic-sidecar/requirements/_base.txt +++ b/services/dynamic-sidecar/requirements/_base.txt @@ -279,6 +279,7 @@ opentelemetry-api==1.30.0 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi @@ -302,6 +303,7 @@ opentelemetry-exporter-otlp-proto-http==1.30.0 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.51b0 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi @@ -309,6 +311,10 @@ opentelemetry-instrumentation==0.51b0 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.51b0 + # via + # -r requirements/../../../packages/service-library/requirements/_base.in + # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.51b0 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-asyncpg==0.51b0 @@ -845,6 +851,7 @@ wrapt==1.17.2 # via # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis wsproto==1.2.0 diff --git a/services/efs-guardian/requirements/_base.txt b/services/efs-guardian/requirements/_base.txt index 11e62cdfdf1..2b53a7f66d7 100644 --- a/services/efs-guardian/requirements/_base.txt +++ b/services/efs-guardian/requirements/_base.txt @@ -278,6 +278,7 @@ opentelemetry-api==1.27.0 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore @@ -303,6 +304,7 @@ opentelemetry-exporter-otlp-proto-http==1.27.0 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.48b0 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore @@ -311,6 +313,10 @@ opentelemetry-instrumentation==0.48b0 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.48b0 + # via + # -r requirements/../../../packages/aws-library/requirements/../../../packages/service-library/requirements/_base.in + # -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.48b0 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-asyncpg==0.48b0 @@ -819,6 +825,7 @@ wrapt==1.16.0 # aiobotocore # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-redis yarl==1.15.4 # via diff --git a/services/invitations/requirements/_base.txt b/services/invitations/requirements/_base.txt index 5940608f49a..f69505a88ec 100644 --- a/services/invitations/requirements/_base.txt +++ b/services/invitations/requirements/_base.txt @@ -175,6 +175,7 @@ opentelemetry-api==1.31.0 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx @@ -195,12 +196,15 @@ opentelemetry-exporter-otlp-proto-http==1.31.0 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.52b0 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.52b0 + # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.52b0 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-fastapi==0.52b0 @@ -490,6 +494,7 @@ wrapt==1.17.2 # via # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis yarl==1.18.3 diff --git a/services/notifications/requirements/_base.txt b/services/notifications/requirements/_base.txt index 3e5d8ce47dd..9ddbb34d9d0 100644 --- a/services/notifications/requirements/_base.txt +++ b/services/notifications/requirements/_base.txt @@ -186,6 +186,7 @@ opentelemetry-api==1.31.1 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi @@ -207,6 +208,7 @@ opentelemetry-exporter-otlp-proto-http==1.31.1 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.52b1 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi @@ -214,6 +216,8 @@ opentelemetry-instrumentation==0.52b1 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.52b1 + # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.52b1 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-asyncpg==0.52b1 @@ -539,6 +543,7 @@ wrapt==1.17.2 # via # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis yarl==1.18.3 diff --git a/services/payments/requirements/_base.txt b/services/payments/requirements/_base.txt index 0d9c9bb03a5..d07b7cd7454 100644 --- a/services/payments/requirements/_base.txt +++ b/services/payments/requirements/_base.txt @@ -235,6 +235,7 @@ opentelemetry-api==1.28.2 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi @@ -256,6 +257,7 @@ opentelemetry-exporter-otlp-proto-http==1.28.2 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.49b2 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi @@ -263,6 +265,8 @@ opentelemetry-instrumentation==0.49b2 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.49b2 + # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.49b2 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-asyncpg==0.49b2 @@ -630,6 +634,7 @@ wrapt==1.17.0 # via # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis wsproto==1.2.0 diff --git a/services/resource-usage-tracker/requirements/_base.txt b/services/resource-usage-tracker/requirements/_base.txt index eb25cc58c01..7dbb09c2faf 100644 --- a/services/resource-usage-tracker/requirements/_base.txt +++ b/services/resource-usage-tracker/requirements/_base.txt @@ -300,6 +300,7 @@ opentelemetry-api==1.26.0 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore @@ -325,6 +326,7 @@ opentelemetry-exporter-otlp-proto-http==1.26.0 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.47b0 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore @@ -333,6 +335,10 @@ opentelemetry-instrumentation==0.47b0 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.47b0 + # via + # -r requirements/../../../packages/aws-library/requirements/../../../packages/service-library/requirements/_base.in + # -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.47b0 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-asyncpg==0.47b0 @@ -880,6 +886,7 @@ wrapt==1.16.0 # aiobotocore # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-redis yarl==1.9.4 # via diff --git a/services/storage/requirements/_base.txt b/services/storage/requirements/_base.txt index f5eea0f34d0..d6240d95072 100644 --- a/services/storage/requirements/_base.txt +++ b/services/storage/requirements/_base.txt @@ -347,6 +347,7 @@ opentelemetry-api==1.30.0 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore @@ -372,6 +373,7 @@ opentelemetry-exporter-otlp-proto-http==1.30.0 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.51b0 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore @@ -380,6 +382,10 @@ opentelemetry-instrumentation==0.51b0 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.51b0 + # via + # -r requirements/../../../packages/aws-library/requirements/../../../packages/service-library/requirements/_base.in + # -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.51b0 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-asyncpg==0.51b0 @@ -973,6 +979,7 @@ wrapt==1.17.2 # aiobotocore # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis yarl==1.18.3 diff --git a/services/web/server/requirements/_base.txt b/services/web/server/requirements/_base.txt index 47c5f69c36e..a8f509faa39 100644 --- a/services/web/server/requirements/_base.txt +++ b/services/web/server/requirements/_base.txt @@ -425,6 +425,7 @@ opentelemetry-api==1.27.0 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server # opentelemetry-instrumentation-aiopg @@ -449,6 +450,7 @@ opentelemetry-exporter-otlp-proto-http==1.27.0 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.48b0 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server # opentelemetry-instrumentation-aiopg @@ -457,6 +459,10 @@ opentelemetry-instrumentation==0.48b0 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.48b0 + # via + # -r requirements/../../../../packages/service-library/requirements/_base.in + # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-aiohttp-client==0.48b0 # via -r requirements/../../../../packages/service-library/requirements/_aiohttp.in opentelemetry-instrumentation-aiohttp-server==0.48b0 @@ -1025,6 +1031,7 @@ wrapt==1.16.0 # via # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server # opentelemetry-instrumentation-aiopg diff --git a/tests/swarm-deploy/requirements/_test.txt b/tests/swarm-deploy/requirements/_test.txt index 0aec051d9f7..1ee1ede3f19 100644 --- a/tests/swarm-deploy/requirements/_test.txt +++ b/tests/swarm-deploy/requirements/_test.txt @@ -231,6 +231,7 @@ opentelemetry-api==1.30.0 # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis @@ -251,10 +252,15 @@ opentelemetry-exporter-otlp-proto-http==1.30.0 # via opentelemetry-exporter-otlp opentelemetry-instrumentation==0.51b0 # via + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.51b0 + # via + # -r requirements/../../../packages/service-library/requirements/_base.in + # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asyncpg==0.51b0 # via -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-logging==0.51b0 @@ -748,6 +754,7 @@ wrapt==1.17.2 # via # deprecated # opentelemetry-instrumentation + # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-redis yarl==1.18.3 # via From 8cf4d44d5299237ea5ce45bcdcbf7a128fc62957 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Tue, 6 May 2025 09:11:48 +0200 Subject: [PATCH 03/24] instrument aipika rabbit client --- .../src/servicelib/fastapi/tracing.py | 24 +++++++++++++++---- .../src/servicelib/rabbitmq/_client_base.py | 3 +-- 2 files changed, 21 insertions(+), 6 deletions(-) diff --git a/packages/service-library/src/servicelib/fastapi/tracing.py b/packages/service-library/src/servicelib/fastapi/tracing.py index e26cc367064..5707a650075 100644 --- a/packages/service-library/src/servicelib/fastapi/tracing.py +++ b/packages/service-library/src/servicelib/fastapi/tracing.py @@ -1,6 +1,4 @@ -""" Adds fastapi middleware for tracing using opentelemetry instrumentation. - -""" +"""Adds fastapi middleware for tracing using opentelemetry instrumentation.""" import logging @@ -60,6 +58,15 @@ except ImportError: HAS_REQUESTS = False +try: + from opentelemetry.instrumentation.aio_pika.aio_pika_instrumentor import ( + AioPikaInstrumentor, + ) + + HAS_AIOPIKA_INSTRUMENTOR = True +except ImportError: + HAS_AIOPIKA_INSTRUMENTOR = False + def initialize_tracing( app: FastAPI, tracing_settings: TracingSettings, service_name: str @@ -80,7 +87,9 @@ def initialize_tracing( f"{tracing_settings.TRACING_OPENTELEMETRY_COLLECTOR_ENDPOINT}" ) - tracing_destination: str = f"{URL(opentelemetry_collector_endpoint).with_port(tracing_settings.TRACING_OPENTELEMETRY_COLLECTOR_PORT).with_path('/v1/traces')}" + tracing_destination: str = ( + f"{URL(opentelemetry_collector_endpoint).with_port(tracing_settings.TRACING_OPENTELEMETRY_COLLECTOR_PORT).with_path('/v1/traces')}" + ) _logger.info( "Trying to connect service %s to opentelemetry tracing collector at %s.", @@ -101,6 +110,13 @@ def initialize_tracing( msg="Attempting to add asyncpg opentelemetry autoinstrumentation...", ): AiopgInstrumentor().instrument() + if HAS_AIOPIKA_INSTRUMENTOR: + with log_context( + _logger, + logging.INFO, + msg="Attempting to add aio_pika opentelemetry autoinstrumentation...", + ): + AioPikaInstrumentor().instrument() if HAS_ASYNCPG: with log_context( _logger, diff --git a/packages/service-library/src/servicelib/rabbitmq/_client_base.py b/packages/service-library/src/servicelib/rabbitmq/_client_base.py index 677b08eb9c9..69720659e50 100644 --- a/packages/service-library/src/servicelib/rabbitmq/_client_base.py +++ b/packages/service-library/src/servicelib/rabbitmq/_client_base.py @@ -70,5 +70,4 @@ async def ping(self) -> bool: return False @abstractmethod - async def close(self) -> None: - ... + async def close(self) -> None: ... From d85dcb1b539939454d2dad4e8ffbdff9e575b520 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Tue, 6 May 2025 11:03:47 +0200 Subject: [PATCH 04/24] add opentelemetry instrumentation celery dependency --- services/storage/requirements/_base.in | 1 + services/storage/requirements/_base.txt | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/services/storage/requirements/_base.in b/services/storage/requirements/_base.in index cf0ccfdba89..01b289d845e 100644 --- a/services/storage/requirements/_base.in +++ b/services/storage/requirements/_base.in @@ -20,6 +20,7 @@ asgi_lifespan asyncpg # database celery[redis] httpx +opentelemetry-instrumentation-celery opentelemetry-instrumentation-botocore packaging fastapi[all] diff --git a/services/storage/requirements/_base.txt b/services/storage/requirements/_base.txt index d6240d95072..14bdad51740 100644 --- a/services/storage/requirements/_base.txt +++ b/services/storage/requirements/_base.txt @@ -351,6 +351,7 @@ opentelemetry-api==1.30.0 # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore + # opentelemetry-instrumentation-celery # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -377,6 +378,7 @@ opentelemetry-instrumentation==0.51b0 # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore + # opentelemetry-instrumentation-celery # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -394,6 +396,8 @@ opentelemetry-instrumentation-botocore==0.51b0 # via # -r requirements/../../../packages/aws-library/requirements/_base.in # -r requirements/_base.in +opentelemetry-instrumentation-celery==0.51b0 + # via -r requirements/_base.in opentelemetry-instrumentation-fastapi==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in opentelemetry-instrumentation-httpx==0.51b0 @@ -429,6 +433,7 @@ opentelemetry-semantic-conventions==0.51b0 # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore + # opentelemetry-instrumentation-celery # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis From 0f685de753526c5a781409d06fed858f0e98c484 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Tue, 6 May 2025 14:11:16 +0200 Subject: [PATCH 05/24] autoinstrument aiopika in aihttp case --- .../src/servicelib/aiohttp/tracing.py | 23 +++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/packages/service-library/src/servicelib/aiohttp/tracing.py b/packages/service-library/src/servicelib/aiohttp/tracing.py index 199f4836976..e2cbd97cb47 100644 --- a/packages/service-library/src/servicelib/aiohttp/tracing.py +++ b/packages/service-library/src/servicelib/aiohttp/tracing.py @@ -1,6 +1,4 @@ -""" Adds aiohttp middleware for tracing using opentelemetry instrumentation. - -""" +"""Adds aiohttp middleware for tracing using opentelemetry instrumentation.""" import logging @@ -44,6 +42,13 @@ except ImportError: HAS_REQUESTS = False +try: + from opentelemetry.instrumentation.aio_pika import AioPikaInstrumentor + + HAS_AIO_PIKA = True +except ImportError: + HAS_AIO_PIKA = False + def setup_tracing( app: web.Application, @@ -74,7 +79,9 @@ def setup_tracing( trace.set_tracer_provider(TracerProvider(resource=resource)) tracer_provider: trace.TracerProvider = trace.get_tracer_provider() - tracing_destination: str = f"{URL(opentelemetry_collector_endpoint).with_port(opentelemetry_collector_port).with_path('/v1/traces')}" + tracing_destination: str = ( + f"{URL(opentelemetry_collector_endpoint).with_port(opentelemetry_collector_port).with_path('/v1/traces')}" + ) _logger.info( "Trying to connect service %s to tracing collector at %s.", @@ -128,3 +135,11 @@ def setup_tracing( msg="Attempting to add requests opentelemetry autoinstrumentation...", ): RequestsInstrumentor().instrument() + + if HAS_AIO_PIKA: + with log_context( + _logger, + logging.INFO, + msg="Attempting to add aio_pika opentelemetry autoinstrumentation...", + ): + AioPikaInstrumentor().instrument() From c7c846946a5d4385780ecea6522d2181771aaedf Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Tue, 6 May 2025 14:37:20 +0200 Subject: [PATCH 06/24] remove asyncpg and aiopg instrumentation --- .../requirements/_base.txt | 8 +-- .../postgres-database/requirements/_base.txt | 8 +-- .../service-library/requirements/_aiohttp.in | 1 - .../service-library/requirements/_aiohttp.txt | 11 ---- .../src/servicelib/aiohttp/tracing.py | 14 +---- .../src/servicelib/fastapi/tracing.py | 24 -------- packages/service-library/tests/conftest.py | 12 ---- packages/simcore-sdk/requirements/_base.txt | 30 +++++----- services/api-server/requirements/_base.txt | 36 ++++++------ services/catalog/requirements/_base.txt | 36 ++++++------ services/director-v2/requirements/_base.txt | 36 ++++++------ .../dynamic-scheduler/requirements/_base.txt | 36 ++++++------ .../dynamic-sidecar/requirements/_base.txt | 36 ++++++------ services/notifications/requirements/_base.txt | 36 ++++++------ services/payments/requirements/_base.txt | 36 ++++++------ services/web/server/requirements/_base.in | 1 - services/web/server/requirements/_base.txt | 55 +++++++------------ 17 files changed, 171 insertions(+), 245 deletions(-) diff --git a/packages/notifications-library/requirements/_base.txt b/packages/notifications-library/requirements/_base.txt index 59793cd02df..6752b4a7b73 100644 --- a/packages/notifications-library/requirements/_base.txt +++ b/packages/notifications-library/requirements/_base.txt @@ -68,16 +68,16 @@ mdurl==0.1.2 # via markdown-it-py multidict==6.1.0 # via yarl -opentelemetry-api==1.30.0 +opentelemetry-api==1.32.1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asyncpg # opentelemetry-semantic-conventions -opentelemetry-instrumentation==0.51b0 +opentelemetry-instrumentation==0.53b1 # via opentelemetry-instrumentation-asyncpg -opentelemetry-instrumentation-asyncpg==0.51b0 +opentelemetry-instrumentation-asyncpg==0.53b1 # via -r requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-semantic-conventions==0.51b0 +opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asyncpg diff --git a/packages/postgres-database/requirements/_base.txt b/packages/postgres-database/requirements/_base.txt index b16bdd318cf..5361621f31e 100644 --- a/packages/postgres-database/requirements/_base.txt +++ b/packages/postgres-database/requirements/_base.txt @@ -23,16 +23,16 @@ markupsafe==3.0.2 # via mako multidict==6.1.0 # via yarl -opentelemetry-api==1.30.0 +opentelemetry-api==1.32.1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asyncpg # opentelemetry-semantic-conventions -opentelemetry-instrumentation==0.51b0 +opentelemetry-instrumentation==0.53b1 # via opentelemetry-instrumentation-asyncpg -opentelemetry-instrumentation-asyncpg==0.51b0 +opentelemetry-instrumentation-asyncpg==0.53b1 # via -r requirements/_base.in -opentelemetry-semantic-conventions==0.51b0 +opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asyncpg diff --git a/packages/service-library/requirements/_aiohttp.in b/packages/service-library/requirements/_aiohttp.in index d829728aa81..65f899d1568 100644 --- a/packages/service-library/requirements/_aiohttp.in +++ b/packages/service-library/requirements/_aiohttp.in @@ -11,6 +11,5 @@ attrs jsonschema opentelemetry-instrumentation-aiohttp-client opentelemetry-instrumentation-aiohttp-server -opentelemetry-instrumentation-aiopg prometheus_client werkzeug diff --git a/packages/service-library/requirements/_aiohttp.txt b/packages/service-library/requirements/_aiohttp.txt index 345626fc06b..842dc7d5e46 100644 --- a/packages/service-library/requirements/_aiohttp.txt +++ b/packages/service-library/requirements/_aiohttp.txt @@ -50,29 +50,20 @@ opentelemetry-api==1.30.0 # opentelemetry-instrumentation # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server - # opentelemetry-instrumentation-aiopg - # opentelemetry-instrumentation-dbapi # opentelemetry-semantic-conventions opentelemetry-instrumentation==0.51b0 # via # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server - # opentelemetry-instrumentation-aiopg - # opentelemetry-instrumentation-dbapi opentelemetry-instrumentation-aiohttp-client==0.51b0 # via -r requirements/_aiohttp.in opentelemetry-instrumentation-aiohttp-server==0.51b0 # via -r requirements/_aiohttp.in -opentelemetry-instrumentation-aiopg==0.51b0 - # via -r requirements/_aiohttp.in -opentelemetry-instrumentation-dbapi==0.51b0 - # via opentelemetry-instrumentation-aiopg opentelemetry-semantic-conventions==0.51b0 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server - # opentelemetry-instrumentation-dbapi opentelemetry-util-http==0.51b0 # via # opentelemetry-instrumentation-aiohttp-client @@ -120,8 +111,6 @@ wrapt==1.17.2 # opentelemetry-instrumentation # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server - # opentelemetry-instrumentation-aiopg - # opentelemetry-instrumentation-dbapi yarl==1.18.3 # via aiohttp zipp==3.21.0 diff --git a/packages/service-library/src/servicelib/aiohttp/tracing.py b/packages/service-library/src/servicelib/aiohttp/tracing.py index e2cbd97cb47..c0093988560 100644 --- a/packages/service-library/src/servicelib/aiohttp/tracing.py +++ b/packages/service-library/src/servicelib/aiohttp/tracing.py @@ -29,12 +29,6 @@ HAS_BOTOCORE = True except ImportError: HAS_BOTOCORE = False -try: - from opentelemetry.instrumentation.aiopg import AiopgInstrumentor - - HAS_AIOPG = True -except ImportError: - HAS_AIOPG = False try: from opentelemetry.instrumentation.requests import RequestsInstrumentor @@ -114,13 +108,7 @@ def setup_tracing( # Instrument aiohttp client AioHttpClientInstrumentor().instrument() - if HAS_AIOPG: - with log_context( - _logger, - logging.INFO, - msg="Attempting to add aio-pg opentelemetry autoinstrumentation...", - ): - AiopgInstrumentor().instrument() + if HAS_BOTOCORE: with log_context( _logger, diff --git a/packages/service-library/src/servicelib/fastapi/tracing.py b/packages/service-library/src/servicelib/fastapi/tracing.py index 5707a650075..e980b0c9496 100644 --- a/packages/service-library/src/servicelib/fastapi/tracing.py +++ b/packages/service-library/src/servicelib/fastapi/tracing.py @@ -20,16 +20,6 @@ _logger = logging.getLogger(__name__) try: - from opentelemetry.instrumentation.asyncpg import ( # type: ignore[import-not-found] - AsyncPGInstrumentor, - ) - - HAS_ASYNCPG = True -except ImportError: - HAS_ASYNCPG = False - -try: - from opentelemetry.instrumentation.aiopg import AiopgInstrumentor HAS_AIOPG = True except ImportError: @@ -103,13 +93,6 @@ def initialize_tracing( # Instrument FastAPI FastAPIInstrumentor().instrument_app(app) - if HAS_AIOPG: - with log_context( - _logger, - logging.INFO, - msg="Attempting to add asyncpg opentelemetry autoinstrumentation...", - ): - AiopgInstrumentor().instrument() if HAS_AIOPIKA_INSTRUMENTOR: with log_context( _logger, @@ -117,13 +100,6 @@ def initialize_tracing( msg="Attempting to add aio_pika opentelemetry autoinstrumentation...", ): AioPikaInstrumentor().instrument() - if HAS_ASYNCPG: - with log_context( - _logger, - logging.INFO, - msg="Attempting to add asyncpg opentelemetry autoinstrumentation...", - ): - AsyncPGInstrumentor().instrument() if HAS_REDIS: with log_context( _logger, diff --git a/packages/service-library/tests/conftest.py b/packages/service-library/tests/conftest.py index 979a3731071..e87ac12874c 100644 --- a/packages/service-library/tests/conftest.py +++ b/packages/service-library/tests/conftest.py @@ -127,18 +127,6 @@ def uninstrument_opentelemetry(): RequestsInstrumentor().uninstrument() except ImportError: pass - try: - from opentelemetry.instrumentation.aiopg import AiopgInstrumentor - - AiopgInstrumentor().uninstrument() - except ImportError: - pass - try: - from opentelemetry.instrumentation.asyncpg import AsyncPGInstrumentor - - AsyncPGInstrumentor().uninstrument() - except ImportError: - pass try: from opentelemetry.instrumentation.fastapi import FastAPIInstrumentor diff --git a/packages/simcore-sdk/requirements/_base.txt b/packages/simcore-sdk/requirements/_base.txt index 7f57a547a5b..8628f41b037 100644 --- a/packages/simcore-sdk/requirements/_base.txt +++ b/packages/simcore-sdk/requirements/_base.txt @@ -150,7 +150,7 @@ multidict==6.1.0 # via # aiohttp # yarl -opentelemetry-api==1.30.0 +opentelemetry-api==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc @@ -163,51 +163,51 @@ opentelemetry-api==1.30.0 # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.30.0 +opentelemetry-exporter-otlp==1.32.1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.30.0 +opentelemetry-exporter-otlp-proto-common==1.32.1 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.30.0 +opentelemetry-exporter-otlp-proto-grpc==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.30.0 +opentelemetry-exporter-otlp-proto-http==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.51b0 +opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.51b0 +opentelemetry-instrumentation-aio-pika==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asyncpg==0.51b0 +opentelemetry-instrumentation-asyncpg==0.53b1 # via -r requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-logging==0.51b0 +opentelemetry-instrumentation-logging==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.51b0 +opentelemetry-instrumentation-redis==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.51b0 +opentelemetry-instrumentation-requests==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.30.0 +opentelemetry-proto==1.32.1 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.30.0 +opentelemetry-sdk==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.51b0 +opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.51b0 +opentelemetry-util-http==0.53b1 # via opentelemetry-instrumentation-requests orjson==3.10.15 # via diff --git a/services/api-server/requirements/_base.txt b/services/api-server/requirements/_base.txt index 98c381559b3..3c0870c6744 100644 --- a/services/api-server/requirements/_base.txt +++ b/services/api-server/requirements/_base.txt @@ -341,7 +341,7 @@ multidict==6.1.0 # via # aiohttp # yarl -opentelemetry-api==1.28.2 +opentelemetry-api==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in @@ -358,19 +358,19 @@ opentelemetry-api==1.28.2 # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.28.2 +opentelemetry-exporter-otlp==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.28.2 +opentelemetry-exporter-otlp-proto-common==1.32.1 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.28.2 +opentelemetry-exporter-otlp-proto-grpc==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.28.2 +opentelemetry-exporter-otlp-proto-http==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.49b2 +opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi @@ -380,44 +380,44 @@ opentelemetry-instrumentation==0.49b2 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.49b2 +opentelemetry-instrumentation-aio-pika==0.53b1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asgi==0.49b2 +opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.49b2 +opentelemetry-instrumentation-asyncpg==0.53b1 # via # -r requirements/../../../packages/postgres-database/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-fastapi==0.49b2 +opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-httpx==0.49b2 +opentelemetry-instrumentation-httpx==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-logging==0.49b2 +opentelemetry-instrumentation-logging==0.53b1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.49b2 +opentelemetry-instrumentation-redis==0.53b1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.49b2 +opentelemetry-instrumentation-requests==0.53b1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.28.2 +opentelemetry-proto==1.32.1 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.28.2 +opentelemetry-sdk==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.49b2 +opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi @@ -427,7 +427,7 @@ opentelemetry-semantic-conventions==0.49b2 # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.49b2 +opentelemetry-util-http==0.53b1 # via # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi diff --git a/services/catalog/requirements/_base.txt b/services/catalog/requirements/_base.txt index 74220d2b7e5..8fee59c3a21 100644 --- a/services/catalog/requirements/_base.txt +++ b/services/catalog/requirements/_base.txt @@ -217,7 +217,7 @@ multidict==6.1.0 # via # aiohttp # yarl -opentelemetry-api==1.31.0 +opentelemetry-api==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc @@ -233,17 +233,17 @@ opentelemetry-api==1.31.0 # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.31.0 +opentelemetry-exporter-otlp==1.32.1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.31.0 +opentelemetry-exporter-otlp-proto-common==1.32.1 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.31.0 +opentelemetry-exporter-otlp-proto-grpc==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.31.0 +opentelemetry-exporter-otlp-proto-http==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.52b0 +opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi @@ -253,33 +253,33 @@ opentelemetry-instrumentation==0.52b0 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.52b0 +opentelemetry-instrumentation-aio-pika==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asgi==0.52b0 +opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.52b0 +opentelemetry-instrumentation-asyncpg==0.53b1 # via -r requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-fastapi==0.52b0 +opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-httpx==0.52b0 +opentelemetry-instrumentation-httpx==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-logging==0.52b0 +opentelemetry-instrumentation-logging==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.52b0 +opentelemetry-instrumentation-redis==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.52b0 +opentelemetry-instrumentation-requests==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.31.0 +opentelemetry-proto==1.32.1 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.31.0 +opentelemetry-sdk==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.52b0 +opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi @@ -289,7 +289,7 @@ opentelemetry-semantic-conventions==0.52b0 # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.52b0 +opentelemetry-util-http==0.53b1 # via # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi diff --git a/services/director-v2/requirements/_base.txt b/services/director-v2/requirements/_base.txt index 17a3f150820..41ab17acdb1 100644 --- a/services/director-v2/requirements/_base.txt +++ b/services/director-v2/requirements/_base.txt @@ -390,7 +390,7 @@ networkx==3.4.2 # via -r requirements/_base.in numpy==2.1.3 # via -r requirements/../../../services/dask-sidecar/requirements/_dask-distributed.txt -opentelemetry-api==1.30.0 +opentelemetry-api==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in @@ -407,19 +407,19 @@ opentelemetry-api==1.30.0 # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.30.0 +opentelemetry-exporter-otlp==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.30.0 +opentelemetry-exporter-otlp-proto-common==1.32.1 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.30.0 +opentelemetry-exporter-otlp-proto-grpc==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.30.0 +opentelemetry-exporter-otlp-proto-http==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.51b0 +opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi @@ -429,44 +429,44 @@ opentelemetry-instrumentation==0.51b0 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.51b0 +opentelemetry-instrumentation-aio-pika==0.53b1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asgi==0.51b0 +opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.51b0 +opentelemetry-instrumentation-asyncpg==0.53b1 # via # -r requirements/../../../packages/postgres-database/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-fastapi==0.51b0 +opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-httpx==0.51b0 +opentelemetry-instrumentation-httpx==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-logging==0.51b0 +opentelemetry-instrumentation-logging==0.53b1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.51b0 +opentelemetry-instrumentation-redis==0.53b1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.51b0 +opentelemetry-instrumentation-requests==0.53b1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.30.0 +opentelemetry-proto==1.32.1 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.30.0 +opentelemetry-sdk==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.51b0 +opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi @@ -476,7 +476,7 @@ opentelemetry-semantic-conventions==0.51b0 # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.51b0 +opentelemetry-util-http==0.53b1 # via # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi diff --git a/services/dynamic-scheduler/requirements/_base.txt b/services/dynamic-scheduler/requirements/_base.txt index 426fa0c69f3..a38f547ea4b 100644 --- a/services/dynamic-scheduler/requirements/_base.txt +++ b/services/dynamic-scheduler/requirements/_base.txt @@ -224,7 +224,7 @@ multidict==6.1.0 # yarl nicegui==2.12.1 # via -r requirements/_base.in -opentelemetry-api==1.30.0 +opentelemetry-api==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc @@ -240,17 +240,17 @@ opentelemetry-api==1.30.0 # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.30.0 +opentelemetry-exporter-otlp==1.32.1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.30.0 +opentelemetry-exporter-otlp-proto-common==1.32.1 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.30.0 +opentelemetry-exporter-otlp-proto-grpc==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.30.0 +opentelemetry-exporter-otlp-proto-http==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.51b0 +opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi @@ -260,33 +260,33 @@ opentelemetry-instrumentation==0.51b0 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.51b0 +opentelemetry-instrumentation-aio-pika==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asgi==0.51b0 +opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.51b0 +opentelemetry-instrumentation-asyncpg==0.53b1 # via -r requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-fastapi==0.51b0 +opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-httpx==0.51b0 +opentelemetry-instrumentation-httpx==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-logging==0.51b0 +opentelemetry-instrumentation-logging==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.51b0 +opentelemetry-instrumentation-redis==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.51b0 +opentelemetry-instrumentation-requests==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.30.0 +opentelemetry-proto==1.32.1 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.30.0 +opentelemetry-sdk==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.51b0 +opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi @@ -296,7 +296,7 @@ opentelemetry-semantic-conventions==0.51b0 # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.51b0 +opentelemetry-util-http==0.53b1 # via # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi diff --git a/services/dynamic-sidecar/requirements/_base.txt b/services/dynamic-sidecar/requirements/_base.txt index c834f8d7727..b55f56bb6c4 100644 --- a/services/dynamic-sidecar/requirements/_base.txt +++ b/services/dynamic-sidecar/requirements/_base.txt @@ -272,7 +272,7 @@ multidict==6.1.0 # via # aiohttp # yarl -opentelemetry-api==1.30.0 +opentelemetry-api==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in @@ -289,19 +289,19 @@ opentelemetry-api==1.30.0 # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.30.0 +opentelemetry-exporter-otlp==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.30.0 +opentelemetry-exporter-otlp-proto-common==1.32.1 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.30.0 +opentelemetry-exporter-otlp-proto-grpc==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.30.0 +opentelemetry-exporter-otlp-proto-http==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.51b0 +opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi @@ -311,44 +311,44 @@ opentelemetry-instrumentation==0.51b0 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.51b0 +opentelemetry-instrumentation-aio-pika==0.53b1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asgi==0.51b0 +opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.51b0 +opentelemetry-instrumentation-asyncpg==0.53b1 # via # -r requirements/../../../packages/postgres-database/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-fastapi==0.51b0 +opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-httpx==0.51b0 +opentelemetry-instrumentation-httpx==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-logging==0.51b0 +opentelemetry-instrumentation-logging==0.53b1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.51b0 +opentelemetry-instrumentation-redis==0.53b1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.51b0 +opentelemetry-instrumentation-requests==0.53b1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.30.0 +opentelemetry-proto==1.32.1 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.30.0 +opentelemetry-sdk==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.51b0 +opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi @@ -358,7 +358,7 @@ opentelemetry-semantic-conventions==0.51b0 # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.51b0 +opentelemetry-util-http==0.53b1 # via # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi diff --git a/services/notifications/requirements/_base.txt b/services/notifications/requirements/_base.txt index 9ddbb34d9d0..cd62c139434 100644 --- a/services/notifications/requirements/_base.txt +++ b/services/notifications/requirements/_base.txt @@ -180,7 +180,7 @@ multidict==6.2.0 # via # aiohttp # yarl -opentelemetry-api==1.31.1 +opentelemetry-api==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc @@ -196,17 +196,17 @@ opentelemetry-api==1.31.1 # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.31.1 +opentelemetry-exporter-otlp==1.32.1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.31.1 +opentelemetry-exporter-otlp-proto-common==1.32.1 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.31.1 +opentelemetry-exporter-otlp-proto-grpc==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.31.1 +opentelemetry-exporter-otlp-proto-http==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.52b1 +opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi @@ -216,33 +216,33 @@ opentelemetry-instrumentation==0.52b1 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.52b1 +opentelemetry-instrumentation-aio-pika==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asgi==0.52b1 +opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.52b1 +opentelemetry-instrumentation-asyncpg==0.53b1 # via -r requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-fastapi==0.52b1 +opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-httpx==0.52b1 +opentelemetry-instrumentation-httpx==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-logging==0.52b1 +opentelemetry-instrumentation-logging==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.52b1 +opentelemetry-instrumentation-redis==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.52b1 +opentelemetry-instrumentation-requests==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.31.1 +opentelemetry-proto==1.32.1 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.31.1 +opentelemetry-sdk==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.52b1 +opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi @@ -252,7 +252,7 @@ opentelemetry-semantic-conventions==0.52b1 # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.52b1 +opentelemetry-util-http==0.53b1 # via # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi diff --git a/services/payments/requirements/_base.txt b/services/payments/requirements/_base.txt index d07b7cd7454..23aac4d2676 100644 --- a/services/payments/requirements/_base.txt +++ b/services/payments/requirements/_base.txt @@ -229,7 +229,7 @@ multidict==6.1.0 # via # aiohttp # yarl -opentelemetry-api==1.28.2 +opentelemetry-api==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc @@ -245,17 +245,17 @@ opentelemetry-api==1.28.2 # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.28.2 +opentelemetry-exporter-otlp==1.32.1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.28.2 +opentelemetry-exporter-otlp-proto-common==1.32.1 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.28.2 +opentelemetry-exporter-otlp-proto-grpc==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.28.2 +opentelemetry-exporter-otlp-proto-http==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.49b2 +opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi @@ -265,33 +265,33 @@ opentelemetry-instrumentation==0.49b2 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.49b2 +opentelemetry-instrumentation-aio-pika==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asgi==0.49b2 +opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.49b2 +opentelemetry-instrumentation-asyncpg==0.53b1 # via -r requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-fastapi==0.49b2 +opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-httpx==0.49b2 +opentelemetry-instrumentation-httpx==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-logging==0.49b2 +opentelemetry-instrumentation-logging==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.49b2 +opentelemetry-instrumentation-redis==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.49b2 +opentelemetry-instrumentation-requests==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.28.2 +opentelemetry-proto==1.32.1 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.28.2 +opentelemetry-sdk==1.32.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.49b2 +opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi @@ -301,7 +301,7 @@ opentelemetry-semantic-conventions==0.49b2 # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.49b2 +opentelemetry-util-http==0.53b1 # via # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi diff --git a/services/web/server/requirements/_base.in b/services/web/server/requirements/_base.in index 41887896cd5..ce70df73f51 100644 --- a/services/web/server/requirements/_base.in +++ b/services/web/server/requirements/_base.in @@ -41,7 +41,6 @@ jinja_app_loader # email jsondiff msgpack openpyxl # excel -opentelemetry-instrumentation-aiopg orjson # json packaging passlib diff --git a/services/web/server/requirements/_base.txt b/services/web/server/requirements/_base.txt index a8f509faa39..0d74ceb0d3d 100644 --- a/services/web/server/requirements/_base.txt +++ b/services/web/server/requirements/_base.txt @@ -418,7 +418,7 @@ multidict==6.1.0 # yarl openpyxl==3.0.9 # via -r requirements/_base.in -opentelemetry-api==1.27.0 +opentelemetry-api==1.32.1 # via # -r requirements/../../../../packages/service-library/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in @@ -428,89 +428,79 @@ opentelemetry-api==1.27.0 # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server - # opentelemetry-instrumentation-aiopg # opentelemetry-instrumentation-asyncpg - # opentelemetry-instrumentation-dbapi # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.27.0 +opentelemetry-exporter-otlp==1.32.1 # via # -r requirements/../../../../packages/service-library/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.27.0 +opentelemetry-exporter-otlp-proto-common==1.32.1 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.27.0 +opentelemetry-exporter-otlp-proto-grpc==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.27.0 +opentelemetry-exporter-otlp-proto-http==1.32.1 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.48b0 +opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server - # opentelemetry-instrumentation-aiopg # opentelemetry-instrumentation-asyncpg - # opentelemetry-instrumentation-dbapi # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.48b0 +opentelemetry-instrumentation-aio-pika==0.53b1 # via # -r requirements/../../../../packages/service-library/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-aiohttp-client==0.48b0 +opentelemetry-instrumentation-aiohttp-client==0.53b1 # via -r requirements/../../../../packages/service-library/requirements/_aiohttp.in -opentelemetry-instrumentation-aiohttp-server==0.48b0 +opentelemetry-instrumentation-aiohttp-server==0.53b1 # via -r requirements/../../../../packages/service-library/requirements/_aiohttp.in -opentelemetry-instrumentation-aiopg==0.48b0 - # via - # -r requirements/../../../../packages/service-library/requirements/_aiohttp.in - # -r requirements/_base.in -opentelemetry-instrumentation-asyncpg==0.48b0 +opentelemetry-instrumentation-asyncpg==0.53b1 # via # -r requirements/../../../../packages/notifications-library/requirements/../../../packages/postgres-database/requirements/_base.in # -r requirements/../../../../packages/postgres-database/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-dbapi==0.48b0 - # via opentelemetry-instrumentation-aiopg -opentelemetry-instrumentation-logging==0.48b0 +opentelemetry-instrumentation-logging==0.53b1 # via # -r requirements/../../../../packages/service-library/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.48b0 +opentelemetry-instrumentation-redis==0.53b1 # via # -r requirements/../../../../packages/service-library/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.48b0 +opentelemetry-instrumentation-requests==0.53b1 # via # -r requirements/../../../../packages/service-library/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.27.0 +opentelemetry-proto==1.32.1 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.27.0 +opentelemetry-sdk==1.32.1 # via # -r requirements/../../../../packages/service-library/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.48b0 +opentelemetry-semantic-conventions==0.53b1 # via + # opentelemetry-instrumentation # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server # opentelemetry-instrumentation-asyncpg - # opentelemetry-instrumentation-dbapi # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.48b0 +opentelemetry-util-http==0.53b1 # via # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server @@ -585,6 +575,7 @@ packaging==24.1 # -r requirements/../../../../packages/simcore-sdk/requirements/_base.in # -r requirements/_base.in # gunicorn + # opentelemetry-instrumentation # swagger-ui-py pamqp==3.2.1 # via aiormq @@ -598,7 +589,7 @@ pint==0.24.3 # -r requirements/_base.in prometheus-client==0.14.1 # via -r requirements/../../../../packages/service-library/requirements/_aiohttp.in -protobuf==4.25.4 +protobuf==5.29.4 # via # googleapis-common-protos # opentelemetry-proto @@ -889,9 +880,7 @@ rich==13.4.2 setproctitle==1.3.3 # via gunicorn setuptools==69.1.1 - # via - # jsonschema - # opentelemetry-instrumentation + # via jsonschema shellingham==1.5.4 # via typer six==1.16.0 @@ -1034,8 +1023,6 @@ wrapt==1.16.0 # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server - # opentelemetry-instrumentation-aiopg - # opentelemetry-instrumentation-dbapi # opentelemetry-instrumentation-redis yarl==1.9.4 # via From 8763e94158e2fceda8eb5e4591f3ccb2fe2ec4d2 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Tue, 6 May 2025 14:42:17 +0200 Subject: [PATCH 07/24] remove asyncpg instrumentation --- .../requirements/_base.txt | 27 ------------------- .../requirements/_test.txt | 1 - .../requirements/_tools.txt | 1 - .../postgres-database/requirements/_base.in | 1 - .../postgres-database/requirements/_base.txt | 27 ------------------- .../postgres-database/requirements/_test.txt | 4 +-- .../postgres-database/requirements/_tools.txt | 1 - packages/simcore-sdk/requirements/_base.txt | 5 ---- services/api-server/requirements/_base.txt | 7 ----- services/catalog/requirements/_base.txt | 5 ---- services/director-v2/requirements/_base.txt | 7 ----- .../dynamic-scheduler/requirements/_base.txt | 5 ---- .../dynamic-sidecar/requirements/_base.txt | 7 ----- services/efs-guardian/requirements/_base.txt | 5 ---- services/notifications/requirements/_base.txt | 5 ---- services/payments/requirements/_base.txt | 5 ---- .../requirements/_base.txt | 5 ---- services/storage/requirements/_base.txt | 5 ---- services/web/server/requirements/_base.txt | 8 ------ tests/swarm-deploy/requirements/_test.txt | 5 ---- 20 files changed, 1 insertion(+), 135 deletions(-) diff --git a/packages/notifications-library/requirements/_base.txt b/packages/notifications-library/requirements/_base.txt index 6752b4a7b73..09019d60f9f 100644 --- a/packages/notifications-library/requirements/_base.txt +++ b/packages/notifications-library/requirements/_base.txt @@ -16,10 +16,6 @@ attrs==25.1.0 # referencing click==8.1.8 # via typer -deprecated==1.2.18 - # via - # opentelemetry-api - # opentelemetry-semantic-conventions dnspython==2.7.0 # via email-validator email-validator==2.2.0 @@ -30,8 +26,6 @@ idna==3.10 # via # email-validator # yarl -importlib-metadata==8.5.0 - # via opentelemetry-api jinja2==3.1.5 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -68,19 +62,6 @@ mdurl==0.1.2 # via markdown-it-py multidict==6.1.0 # via yarl -opentelemetry-api==1.32.1 - # via - # opentelemetry-instrumentation - # opentelemetry-instrumentation-asyncpg - # opentelemetry-semantic-conventions -opentelemetry-instrumentation==0.53b1 - # via opentelemetry-instrumentation-asyncpg -opentelemetry-instrumentation-asyncpg==0.53b1 - # via -r requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-semantic-conventions==0.53b1 - # via - # opentelemetry-instrumentation - # opentelemetry-instrumentation-asyncpg orjson==3.10.15 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -96,8 +77,6 @@ orjson==3.10.15 # -r requirements/../../../packages/models-library/requirements/_base.in # -r requirements/../../../packages/postgres-database/requirements/../../../packages/common-library/requirements/_base.in # -r requirements/../../../packages/settings-library/requirements/../../../packages/common-library/requirements/_base.in -packaging==24.2 - # via opentelemetry-instrumentation propcache==0.3.0 # via yarl psycopg2-binary==2.9.10 @@ -195,11 +174,5 @@ typing-extensions==4.12.2 # pydantic-core # pydantic-extra-types # typer -wrapt==1.17.2 - # via - # deprecated - # opentelemetry-instrumentation yarl==1.18.3 # via -r requirements/../../../packages/postgres-database/requirements/_base.in -zipp==3.21.0 - # via importlib-metadata diff --git a/packages/notifications-library/requirements/_test.txt b/packages/notifications-library/requirements/_test.txt index 53aa4b19cad..9bc10ed63b5 100644 --- a/packages/notifications-library/requirements/_test.txt +++ b/packages/notifications-library/requirements/_test.txt @@ -54,7 +54,6 @@ mypy-extensions==1.0.0 # via mypy packaging==24.2 # via - # -c requirements/_base.txt # pytest # pytest-sugar pluggy==1.5.0 diff --git a/packages/notifications-library/requirements/_tools.txt b/packages/notifications-library/requirements/_tools.txt index b5ed94588ea..5681ccd4e60 100644 --- a/packages/notifications-library/requirements/_tools.txt +++ b/packages/notifications-library/requirements/_tools.txt @@ -40,7 +40,6 @@ nodeenv==1.9.1 # via pre-commit packaging==24.2 # via - # -c requirements/_base.txt # -c requirements/_test.txt # black # build diff --git a/packages/postgres-database/requirements/_base.in b/packages/postgres-database/requirements/_base.in index c5aa128b710..0294edf9114 100644 --- a/packages/postgres-database/requirements/_base.in +++ b/packages/postgres-database/requirements/_base.in @@ -6,7 +6,6 @@ --requirement ../../../packages/common-library/requirements/_base.in alembic -opentelemetry-instrumentation-asyncpg pydantic sqlalchemy[postgresql_psycopg2binary,postgresql_asyncpg] # SEE extras in https://github.com/sqlalchemy/sqlalchemy/blob/main/setup.cfg#L43 yarl diff --git a/packages/postgres-database/requirements/_base.txt b/packages/postgres-database/requirements/_base.txt index 5361621f31e..8607f00cb2c 100644 --- a/packages/postgres-database/requirements/_base.txt +++ b/packages/postgres-database/requirements/_base.txt @@ -4,16 +4,10 @@ annotated-types==0.7.0 # via pydantic asyncpg==0.30.0 # via sqlalchemy -deprecated==1.2.18 - # via - # opentelemetry-api - # opentelemetry-semantic-conventions greenlet==3.1.1 # via sqlalchemy idna==3.10 # via yarl -importlib-metadata==8.5.0 - # via opentelemetry-api mako==1.3.9 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -23,26 +17,11 @@ markupsafe==3.0.2 # via mako multidict==6.1.0 # via yarl -opentelemetry-api==1.32.1 - # via - # opentelemetry-instrumentation - # opentelemetry-instrumentation-asyncpg - # opentelemetry-semantic-conventions -opentelemetry-instrumentation==0.53b1 - # via opentelemetry-instrumentation-asyncpg -opentelemetry-instrumentation-asyncpg==0.53b1 - # via -r requirements/_base.in -opentelemetry-semantic-conventions==0.53b1 - # via - # opentelemetry-instrumentation - # opentelemetry-instrumentation-asyncpg orjson==3.10.15 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../requirements/constraints.txt # -r requirements/../../../packages/common-library/requirements/_base.in -packaging==24.2 - # via opentelemetry-instrumentation propcache==0.3.0 # via yarl psycopg2-binary==2.9.10 @@ -70,11 +49,5 @@ typing-extensions==4.12.2 # pydantic # pydantic-core # pydantic-extra-types -wrapt==1.17.2 - # via - # deprecated - # opentelemetry-instrumentation yarl==1.18.3 # via -r requirements/_base.in -zipp==3.21.0 - # via importlib-metadata diff --git a/packages/postgres-database/requirements/_test.txt b/packages/postgres-database/requirements/_test.txt index 1b1be316909..07e31fe0dfe 100644 --- a/packages/postgres-database/requirements/_test.txt +++ b/packages/postgres-database/requirements/_test.txt @@ -24,9 +24,7 @@ mypy==1.15.0 mypy-extensions==1.0.0 # via mypy packaging==24.2 - # via - # -c requirements/_base.txt - # pytest + # via pytest pluggy==1.5.0 # via pytest psycopg2-binary==2.9.10 diff --git a/packages/postgres-database/requirements/_tools.txt b/packages/postgres-database/requirements/_tools.txt index f896126c0b0..9780d0366e3 100644 --- a/packages/postgres-database/requirements/_tools.txt +++ b/packages/postgres-database/requirements/_tools.txt @@ -39,7 +39,6 @@ nodeenv==1.9.1 # via pre-commit packaging==24.2 # via - # -c requirements/_base.txt # -c requirements/_test.txt # black # build diff --git a/packages/simcore-sdk/requirements/_base.txt b/packages/simcore-sdk/requirements/_base.txt index 8628f41b037..b55b8e73f75 100644 --- a/packages/simcore-sdk/requirements/_base.txt +++ b/packages/simcore-sdk/requirements/_base.txt @@ -157,7 +157,6 @@ opentelemetry-api==1.32.1 # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests @@ -176,14 +175,11 @@ opentelemetry-exporter-otlp-proto-http==1.32.1 opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests opentelemetry-instrumentation-aio-pika==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asyncpg==0.53b1 - # via -r requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-logging==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-redis==0.53b1 @@ -203,7 +199,6 @@ opentelemetry-sdk==1.32.1 opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk diff --git a/services/api-server/requirements/_base.txt b/services/api-server/requirements/_base.txt index 3c0870c6744..4d59bec6301 100644 --- a/services/api-server/requirements/_base.txt +++ b/services/api-server/requirements/_base.txt @@ -350,7 +350,6 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -374,7 +373,6 @@ opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -386,10 +384,6 @@ opentelemetry-instrumentation-aio-pika==0.53b1 # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.53b1 - # via - # -r requirements/../../../packages/postgres-database/requirements/_base.in - # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in opentelemetry-instrumentation-httpx==0.53b1 @@ -421,7 +415,6 @@ opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis diff --git a/services/catalog/requirements/_base.txt b/services/catalog/requirements/_base.txt index 8fee59c3a21..36a8f804d88 100644 --- a/services/catalog/requirements/_base.txt +++ b/services/catalog/requirements/_base.txt @@ -225,7 +225,6 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -247,7 +246,6 @@ opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -257,8 +255,6 @@ opentelemetry-instrumentation-aio-pika==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.53b1 - # via -r requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in opentelemetry-instrumentation-httpx==0.53b1 @@ -283,7 +279,6 @@ opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis diff --git a/services/director-v2/requirements/_base.txt b/services/director-v2/requirements/_base.txt index 41ab17acdb1..6f52d14e9e1 100644 --- a/services/director-v2/requirements/_base.txt +++ b/services/director-v2/requirements/_base.txt @@ -399,7 +399,6 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -423,7 +422,6 @@ opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -435,10 +433,6 @@ opentelemetry-instrumentation-aio-pika==0.53b1 # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.53b1 - # via - # -r requirements/../../../packages/postgres-database/requirements/_base.in - # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in opentelemetry-instrumentation-httpx==0.53b1 @@ -470,7 +464,6 @@ opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis diff --git a/services/dynamic-scheduler/requirements/_base.txt b/services/dynamic-scheduler/requirements/_base.txt index a38f547ea4b..959b875421e 100644 --- a/services/dynamic-scheduler/requirements/_base.txt +++ b/services/dynamic-scheduler/requirements/_base.txt @@ -232,7 +232,6 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -254,7 +253,6 @@ opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -264,8 +262,6 @@ opentelemetry-instrumentation-aio-pika==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.53b1 - # via -r requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in opentelemetry-instrumentation-httpx==0.53b1 @@ -290,7 +286,6 @@ opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis diff --git a/services/dynamic-sidecar/requirements/_base.txt b/services/dynamic-sidecar/requirements/_base.txt index b55f56bb6c4..acca1e92700 100644 --- a/services/dynamic-sidecar/requirements/_base.txt +++ b/services/dynamic-sidecar/requirements/_base.txt @@ -281,7 +281,6 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -305,7 +304,6 @@ opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -317,10 +315,6 @@ opentelemetry-instrumentation-aio-pika==0.53b1 # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.53b1 - # via - # -r requirements/../../../packages/postgres-database/requirements/_base.in - # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in opentelemetry-instrumentation-httpx==0.53b1 @@ -352,7 +346,6 @@ opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis diff --git a/services/efs-guardian/requirements/_base.txt b/services/efs-guardian/requirements/_base.txt index 2b53a7f66d7..469a4fb729e 100644 --- a/services/efs-guardian/requirements/_base.txt +++ b/services/efs-guardian/requirements/_base.txt @@ -280,7 +280,6 @@ opentelemetry-api==1.27.0 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx @@ -306,7 +305,6 @@ opentelemetry-instrumentation==0.48b0 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx @@ -319,8 +317,6 @@ opentelemetry-instrumentation-aio-pika==0.48b0 # -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.48b0 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.48b0 - # via -r requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-botocore==0.48b0 # via -r requirements/../../../packages/aws-library/requirements/_base.in opentelemetry-instrumentation-fastapi==0.48b0 @@ -355,7 +351,6 @@ opentelemetry-sdk==1.27.0 opentelemetry-semantic-conventions==0.48b0 # via # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx diff --git a/services/notifications/requirements/_base.txt b/services/notifications/requirements/_base.txt index cd62c139434..68a5f444337 100644 --- a/services/notifications/requirements/_base.txt +++ b/services/notifications/requirements/_base.txt @@ -188,7 +188,6 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -210,7 +209,6 @@ opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -220,8 +218,6 @@ opentelemetry-instrumentation-aio-pika==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.53b1 - # via -r requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in opentelemetry-instrumentation-httpx==0.53b1 @@ -246,7 +242,6 @@ opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis diff --git a/services/payments/requirements/_base.txt b/services/payments/requirements/_base.txt index 23aac4d2676..b2c1c7b89fc 100644 --- a/services/payments/requirements/_base.txt +++ b/services/payments/requirements/_base.txt @@ -237,7 +237,6 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -259,7 +258,6 @@ opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -269,8 +267,6 @@ opentelemetry-instrumentation-aio-pika==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.53b1 - # via -r requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in opentelemetry-instrumentation-httpx==0.53b1 @@ -295,7 +291,6 @@ opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis diff --git a/services/resource-usage-tracker/requirements/_base.txt b/services/resource-usage-tracker/requirements/_base.txt index 7dbb09c2faf..cf8e466894b 100644 --- a/services/resource-usage-tracker/requirements/_base.txt +++ b/services/resource-usage-tracker/requirements/_base.txt @@ -302,7 +302,6 @@ opentelemetry-api==1.26.0 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx @@ -328,7 +327,6 @@ opentelemetry-instrumentation==0.47b0 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx @@ -341,8 +339,6 @@ opentelemetry-instrumentation-aio-pika==0.47b0 # -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.47b0 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.47b0 - # via -r requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-botocore==0.47b0 # via -r requirements/../../../packages/aws-library/requirements/_base.in opentelemetry-instrumentation-fastapi==0.47b0 @@ -377,7 +373,6 @@ opentelemetry-sdk==1.26.0 opentelemetry-semantic-conventions==0.47b0 # via # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx diff --git a/services/storage/requirements/_base.txt b/services/storage/requirements/_base.txt index 14bdad51740..05c3333f8e2 100644 --- a/services/storage/requirements/_base.txt +++ b/services/storage/requirements/_base.txt @@ -349,7 +349,6 @@ opentelemetry-api==1.30.0 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-celery # opentelemetry-instrumentation-fastapi @@ -376,7 +375,6 @@ opentelemetry-instrumentation==0.51b0 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-celery # opentelemetry-instrumentation-fastapi @@ -390,8 +388,6 @@ opentelemetry-instrumentation-aio-pika==0.51b0 # -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.51b0 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.51b0 - # via -r requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-botocore==0.51b0 # via # -r requirements/../../../packages/aws-library/requirements/_base.in @@ -431,7 +427,6 @@ opentelemetry-semantic-conventions==0.51b0 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-celery # opentelemetry-instrumentation-fastapi diff --git a/services/web/server/requirements/_base.txt b/services/web/server/requirements/_base.txt index 0d74ceb0d3d..c7571ec0848 100644 --- a/services/web/server/requirements/_base.txt +++ b/services/web/server/requirements/_base.txt @@ -428,7 +428,6 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests @@ -451,7 +450,6 @@ opentelemetry-instrumentation==0.53b1 # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests @@ -463,11 +461,6 @@ opentelemetry-instrumentation-aiohttp-client==0.53b1 # via -r requirements/../../../../packages/service-library/requirements/_aiohttp.in opentelemetry-instrumentation-aiohttp-server==0.53b1 # via -r requirements/../../../../packages/service-library/requirements/_aiohttp.in -opentelemetry-instrumentation-asyncpg==0.53b1 - # via - # -r requirements/../../../../packages/notifications-library/requirements/../../../packages/postgres-database/requirements/_base.in - # -r requirements/../../../../packages/postgres-database/requirements/_base.in - # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-logging==0.53b1 # via # -r requirements/../../../../packages/service-library/requirements/_base.in @@ -496,7 +489,6 @@ opentelemetry-semantic-conventions==0.53b1 # opentelemetry-instrumentation # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk diff --git a/tests/swarm-deploy/requirements/_test.txt b/tests/swarm-deploy/requirements/_test.txt index 1ee1ede3f19..dbc9e10be9d 100644 --- a/tests/swarm-deploy/requirements/_test.txt +++ b/tests/swarm-deploy/requirements/_test.txt @@ -232,7 +232,6 @@ opentelemetry-api==1.30.0 # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests @@ -253,7 +252,6 @@ opentelemetry-exporter-otlp-proto-http==1.30.0 opentelemetry-instrumentation==0.51b0 # via # opentelemetry-instrumentation-aio-pika - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests @@ -261,8 +259,6 @@ opentelemetry-instrumentation-aio-pika==0.51b0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asyncpg==0.51b0 - # via -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-logging==0.51b0 # via # -r requirements/../../../packages/service-library/requirements/_base.in @@ -289,7 +285,6 @@ opentelemetry-sdk==1.30.0 opentelemetry-semantic-conventions==0.51b0 # via # opentelemetry-instrumentation - # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk From bd45887a7bc86f0fadc42bc99dfed4dd27e2e6cf Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Wed, 7 May 2025 11:00:22 +0200 Subject: [PATCH 08/24] Revert "autoinstrument aiopika in aihttp case" This reverts commit 0f685de753526c5a781409d06fed858f0e98c484. --- .../src/servicelib/aiohttp/tracing.py | 23 ++++--------------- 1 file changed, 4 insertions(+), 19 deletions(-) diff --git a/packages/service-library/src/servicelib/aiohttp/tracing.py b/packages/service-library/src/servicelib/aiohttp/tracing.py index c0093988560..0e7072b2e8c 100644 --- a/packages/service-library/src/servicelib/aiohttp/tracing.py +++ b/packages/service-library/src/servicelib/aiohttp/tracing.py @@ -1,4 +1,6 @@ -"""Adds aiohttp middleware for tracing using opentelemetry instrumentation.""" +""" Adds aiohttp middleware for tracing using opentelemetry instrumentation. + +""" import logging @@ -36,13 +38,6 @@ except ImportError: HAS_REQUESTS = False -try: - from opentelemetry.instrumentation.aio_pika import AioPikaInstrumentor - - HAS_AIO_PIKA = True -except ImportError: - HAS_AIO_PIKA = False - def setup_tracing( app: web.Application, @@ -73,9 +68,7 @@ def setup_tracing( trace.set_tracer_provider(TracerProvider(resource=resource)) tracer_provider: trace.TracerProvider = trace.get_tracer_provider() - tracing_destination: str = ( - f"{URL(opentelemetry_collector_endpoint).with_port(opentelemetry_collector_port).with_path('/v1/traces')}" - ) + tracing_destination: str = f"{URL(opentelemetry_collector_endpoint).with_port(opentelemetry_collector_port).with_path('/v1/traces')}" _logger.info( "Trying to connect service %s to tracing collector at %s.", @@ -123,11 +116,3 @@ def setup_tracing( msg="Attempting to add requests opentelemetry autoinstrumentation...", ): RequestsInstrumentor().instrument() - - if HAS_AIO_PIKA: - with log_context( - _logger, - logging.INFO, - msg="Attempting to add aio_pika opentelemetry autoinstrumentation...", - ): - AioPikaInstrumentor().instrument() From 3755521bfa4068d34eeeeb3edac0e89047aa672d Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Tue, 6 May 2025 14:11:16 +0200 Subject: [PATCH 09/24] autoinstrument aiopika in aihttp case --- .../src/servicelib/aiohttp/tracing.py | 23 +++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/packages/service-library/src/servicelib/aiohttp/tracing.py b/packages/service-library/src/servicelib/aiohttp/tracing.py index 0e7072b2e8c..c0093988560 100644 --- a/packages/service-library/src/servicelib/aiohttp/tracing.py +++ b/packages/service-library/src/servicelib/aiohttp/tracing.py @@ -1,6 +1,4 @@ -""" Adds aiohttp middleware for tracing using opentelemetry instrumentation. - -""" +"""Adds aiohttp middleware for tracing using opentelemetry instrumentation.""" import logging @@ -38,6 +36,13 @@ except ImportError: HAS_REQUESTS = False +try: + from opentelemetry.instrumentation.aio_pika import AioPikaInstrumentor + + HAS_AIO_PIKA = True +except ImportError: + HAS_AIO_PIKA = False + def setup_tracing( app: web.Application, @@ -68,7 +73,9 @@ def setup_tracing( trace.set_tracer_provider(TracerProvider(resource=resource)) tracer_provider: trace.TracerProvider = trace.get_tracer_provider() - tracing_destination: str = f"{URL(opentelemetry_collector_endpoint).with_port(opentelemetry_collector_port).with_path('/v1/traces')}" + tracing_destination: str = ( + f"{URL(opentelemetry_collector_endpoint).with_port(opentelemetry_collector_port).with_path('/v1/traces')}" + ) _logger.info( "Trying to connect service %s to tracing collector at %s.", @@ -116,3 +123,11 @@ def setup_tracing( msg="Attempting to add requests opentelemetry autoinstrumentation...", ): RequestsInstrumentor().instrument() + + if HAS_AIO_PIKA: + with log_context( + _logger, + logging.INFO, + msg="Attempting to add aio_pika opentelemetry autoinstrumentation...", + ): + AioPikaInstrumentor().instrument() From b37c05331cbfbbe6ab3f8ac1b3be050f60675cc6 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Wed, 7 May 2025 11:02:32 +0200 Subject: [PATCH 10/24] Revert "remove asyncpg instrumentation" This reverts commit 8763e94158e2fceda8eb5e4591f3ccb2fe2ec4d2. --- .../requirements/_base.txt | 27 +++++++++++++++++++ .../requirements/_test.txt | 1 + .../requirements/_tools.txt | 1 + .../postgres-database/requirements/_base.in | 1 + .../postgres-database/requirements/_base.txt | 27 +++++++++++++++++++ .../postgres-database/requirements/_test.txt | 4 ++- .../postgres-database/requirements/_tools.txt | 1 + packages/simcore-sdk/requirements/_base.txt | 5 ++++ services/api-server/requirements/_base.txt | 7 +++++ services/catalog/requirements/_base.txt | 5 ++++ services/director-v2/requirements/_base.txt | 7 +++++ .../dynamic-scheduler/requirements/_base.txt | 5 ++++ .../dynamic-sidecar/requirements/_base.txt | 7 +++++ services/efs-guardian/requirements/_base.txt | 5 ++++ services/notifications/requirements/_base.txt | 5 ++++ services/payments/requirements/_base.txt | 5 ++++ .../requirements/_base.txt | 5 ++++ services/storage/requirements/_base.txt | 5 ++++ services/web/server/requirements/_base.txt | 8 ++++++ tests/swarm-deploy/requirements/_test.txt | 5 ++++ 20 files changed, 135 insertions(+), 1 deletion(-) diff --git a/packages/notifications-library/requirements/_base.txt b/packages/notifications-library/requirements/_base.txt index 09019d60f9f..6752b4a7b73 100644 --- a/packages/notifications-library/requirements/_base.txt +++ b/packages/notifications-library/requirements/_base.txt @@ -16,6 +16,10 @@ attrs==25.1.0 # referencing click==8.1.8 # via typer +deprecated==1.2.18 + # via + # opentelemetry-api + # opentelemetry-semantic-conventions dnspython==2.7.0 # via email-validator email-validator==2.2.0 @@ -26,6 +30,8 @@ idna==3.10 # via # email-validator # yarl +importlib-metadata==8.5.0 + # via opentelemetry-api jinja2==3.1.5 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -62,6 +68,19 @@ mdurl==0.1.2 # via markdown-it-py multidict==6.1.0 # via yarl +opentelemetry-api==1.32.1 + # via + # opentelemetry-instrumentation + # opentelemetry-instrumentation-asyncpg + # opentelemetry-semantic-conventions +opentelemetry-instrumentation==0.53b1 + # via opentelemetry-instrumentation-asyncpg +opentelemetry-instrumentation-asyncpg==0.53b1 + # via -r requirements/../../../packages/postgres-database/requirements/_base.in +opentelemetry-semantic-conventions==0.53b1 + # via + # opentelemetry-instrumentation + # opentelemetry-instrumentation-asyncpg orjson==3.10.15 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -77,6 +96,8 @@ orjson==3.10.15 # -r requirements/../../../packages/models-library/requirements/_base.in # -r requirements/../../../packages/postgres-database/requirements/../../../packages/common-library/requirements/_base.in # -r requirements/../../../packages/settings-library/requirements/../../../packages/common-library/requirements/_base.in +packaging==24.2 + # via opentelemetry-instrumentation propcache==0.3.0 # via yarl psycopg2-binary==2.9.10 @@ -174,5 +195,11 @@ typing-extensions==4.12.2 # pydantic-core # pydantic-extra-types # typer +wrapt==1.17.2 + # via + # deprecated + # opentelemetry-instrumentation yarl==1.18.3 # via -r requirements/../../../packages/postgres-database/requirements/_base.in +zipp==3.21.0 + # via importlib-metadata diff --git a/packages/notifications-library/requirements/_test.txt b/packages/notifications-library/requirements/_test.txt index 9bc10ed63b5..53aa4b19cad 100644 --- a/packages/notifications-library/requirements/_test.txt +++ b/packages/notifications-library/requirements/_test.txt @@ -54,6 +54,7 @@ mypy-extensions==1.0.0 # via mypy packaging==24.2 # via + # -c requirements/_base.txt # pytest # pytest-sugar pluggy==1.5.0 diff --git a/packages/notifications-library/requirements/_tools.txt b/packages/notifications-library/requirements/_tools.txt index 5681ccd4e60..b5ed94588ea 100644 --- a/packages/notifications-library/requirements/_tools.txt +++ b/packages/notifications-library/requirements/_tools.txt @@ -40,6 +40,7 @@ nodeenv==1.9.1 # via pre-commit packaging==24.2 # via + # -c requirements/_base.txt # -c requirements/_test.txt # black # build diff --git a/packages/postgres-database/requirements/_base.in b/packages/postgres-database/requirements/_base.in index 0294edf9114..c5aa128b710 100644 --- a/packages/postgres-database/requirements/_base.in +++ b/packages/postgres-database/requirements/_base.in @@ -6,6 +6,7 @@ --requirement ../../../packages/common-library/requirements/_base.in alembic +opentelemetry-instrumentation-asyncpg pydantic sqlalchemy[postgresql_psycopg2binary,postgresql_asyncpg] # SEE extras in https://github.com/sqlalchemy/sqlalchemy/blob/main/setup.cfg#L43 yarl diff --git a/packages/postgres-database/requirements/_base.txt b/packages/postgres-database/requirements/_base.txt index 8607f00cb2c..5361621f31e 100644 --- a/packages/postgres-database/requirements/_base.txt +++ b/packages/postgres-database/requirements/_base.txt @@ -4,10 +4,16 @@ annotated-types==0.7.0 # via pydantic asyncpg==0.30.0 # via sqlalchemy +deprecated==1.2.18 + # via + # opentelemetry-api + # opentelemetry-semantic-conventions greenlet==3.1.1 # via sqlalchemy idna==3.10 # via yarl +importlib-metadata==8.5.0 + # via opentelemetry-api mako==1.3.9 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt @@ -17,11 +23,26 @@ markupsafe==3.0.2 # via mako multidict==6.1.0 # via yarl +opentelemetry-api==1.32.1 + # via + # opentelemetry-instrumentation + # opentelemetry-instrumentation-asyncpg + # opentelemetry-semantic-conventions +opentelemetry-instrumentation==0.53b1 + # via opentelemetry-instrumentation-asyncpg +opentelemetry-instrumentation-asyncpg==0.53b1 + # via -r requirements/_base.in +opentelemetry-semantic-conventions==0.53b1 + # via + # opentelemetry-instrumentation + # opentelemetry-instrumentation-asyncpg orjson==3.10.15 # via # -c requirements/../../../packages/common-library/requirements/../../../requirements/constraints.txt # -c requirements/../../../requirements/constraints.txt # -r requirements/../../../packages/common-library/requirements/_base.in +packaging==24.2 + # via opentelemetry-instrumentation propcache==0.3.0 # via yarl psycopg2-binary==2.9.10 @@ -49,5 +70,11 @@ typing-extensions==4.12.2 # pydantic # pydantic-core # pydantic-extra-types +wrapt==1.17.2 + # via + # deprecated + # opentelemetry-instrumentation yarl==1.18.3 # via -r requirements/_base.in +zipp==3.21.0 + # via importlib-metadata diff --git a/packages/postgres-database/requirements/_test.txt b/packages/postgres-database/requirements/_test.txt index 07e31fe0dfe..1b1be316909 100644 --- a/packages/postgres-database/requirements/_test.txt +++ b/packages/postgres-database/requirements/_test.txt @@ -24,7 +24,9 @@ mypy==1.15.0 mypy-extensions==1.0.0 # via mypy packaging==24.2 - # via pytest + # via + # -c requirements/_base.txt + # pytest pluggy==1.5.0 # via pytest psycopg2-binary==2.9.10 diff --git a/packages/postgres-database/requirements/_tools.txt b/packages/postgres-database/requirements/_tools.txt index 9780d0366e3..f896126c0b0 100644 --- a/packages/postgres-database/requirements/_tools.txt +++ b/packages/postgres-database/requirements/_tools.txt @@ -39,6 +39,7 @@ nodeenv==1.9.1 # via pre-commit packaging==24.2 # via + # -c requirements/_base.txt # -c requirements/_test.txt # black # build diff --git a/packages/simcore-sdk/requirements/_base.txt b/packages/simcore-sdk/requirements/_base.txt index b55b8e73f75..8628f41b037 100644 --- a/packages/simcore-sdk/requirements/_base.txt +++ b/packages/simcore-sdk/requirements/_base.txt @@ -157,6 +157,7 @@ opentelemetry-api==1.32.1 # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests @@ -175,11 +176,14 @@ opentelemetry-exporter-otlp-proto-http==1.32.1 opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests opentelemetry-instrumentation-aio-pika==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in +opentelemetry-instrumentation-asyncpg==0.53b1 + # via -r requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-logging==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-redis==0.53b1 @@ -199,6 +203,7 @@ opentelemetry-sdk==1.32.1 opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk diff --git a/services/api-server/requirements/_base.txt b/services/api-server/requirements/_base.txt index 4d59bec6301..3c0870c6744 100644 --- a/services/api-server/requirements/_base.txt +++ b/services/api-server/requirements/_base.txt @@ -350,6 +350,7 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -373,6 +374,7 @@ opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -384,6 +386,10 @@ opentelemetry-instrumentation-aio-pika==0.53b1 # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi +opentelemetry-instrumentation-asyncpg==0.53b1 + # via + # -r requirements/../../../packages/postgres-database/requirements/_base.in + # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in opentelemetry-instrumentation-httpx==0.53b1 @@ -415,6 +421,7 @@ opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis diff --git a/services/catalog/requirements/_base.txt b/services/catalog/requirements/_base.txt index 36a8f804d88..8fee59c3a21 100644 --- a/services/catalog/requirements/_base.txt +++ b/services/catalog/requirements/_base.txt @@ -225,6 +225,7 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -246,6 +247,7 @@ opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -255,6 +257,8 @@ opentelemetry-instrumentation-aio-pika==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi +opentelemetry-instrumentation-asyncpg==0.53b1 + # via -r requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in opentelemetry-instrumentation-httpx==0.53b1 @@ -279,6 +283,7 @@ opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis diff --git a/services/director-v2/requirements/_base.txt b/services/director-v2/requirements/_base.txt index 6f52d14e9e1..41ab17acdb1 100644 --- a/services/director-v2/requirements/_base.txt +++ b/services/director-v2/requirements/_base.txt @@ -399,6 +399,7 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -422,6 +423,7 @@ opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -433,6 +435,10 @@ opentelemetry-instrumentation-aio-pika==0.53b1 # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi +opentelemetry-instrumentation-asyncpg==0.53b1 + # via + # -r requirements/../../../packages/postgres-database/requirements/_base.in + # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in opentelemetry-instrumentation-httpx==0.53b1 @@ -464,6 +470,7 @@ opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis diff --git a/services/dynamic-scheduler/requirements/_base.txt b/services/dynamic-scheduler/requirements/_base.txt index 959b875421e..a38f547ea4b 100644 --- a/services/dynamic-scheduler/requirements/_base.txt +++ b/services/dynamic-scheduler/requirements/_base.txt @@ -232,6 +232,7 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -253,6 +254,7 @@ opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -262,6 +264,8 @@ opentelemetry-instrumentation-aio-pika==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi +opentelemetry-instrumentation-asyncpg==0.53b1 + # via -r requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in opentelemetry-instrumentation-httpx==0.53b1 @@ -286,6 +290,7 @@ opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis diff --git a/services/dynamic-sidecar/requirements/_base.txt b/services/dynamic-sidecar/requirements/_base.txt index acca1e92700..b55f56bb6c4 100644 --- a/services/dynamic-sidecar/requirements/_base.txt +++ b/services/dynamic-sidecar/requirements/_base.txt @@ -281,6 +281,7 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -304,6 +305,7 @@ opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -315,6 +317,10 @@ opentelemetry-instrumentation-aio-pika==0.53b1 # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi +opentelemetry-instrumentation-asyncpg==0.53b1 + # via + # -r requirements/../../../packages/postgres-database/requirements/_base.in + # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in opentelemetry-instrumentation-httpx==0.53b1 @@ -346,6 +352,7 @@ opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis diff --git a/services/efs-guardian/requirements/_base.txt b/services/efs-guardian/requirements/_base.txt index 469a4fb729e..2b53a7f66d7 100644 --- a/services/efs-guardian/requirements/_base.txt +++ b/services/efs-guardian/requirements/_base.txt @@ -280,6 +280,7 @@ opentelemetry-api==1.27.0 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx @@ -305,6 +306,7 @@ opentelemetry-instrumentation==0.48b0 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx @@ -317,6 +319,8 @@ opentelemetry-instrumentation-aio-pika==0.48b0 # -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.48b0 # via opentelemetry-instrumentation-fastapi +opentelemetry-instrumentation-asyncpg==0.48b0 + # via -r requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-botocore==0.48b0 # via -r requirements/../../../packages/aws-library/requirements/_base.in opentelemetry-instrumentation-fastapi==0.48b0 @@ -351,6 +355,7 @@ opentelemetry-sdk==1.27.0 opentelemetry-semantic-conventions==0.48b0 # via # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx diff --git a/services/notifications/requirements/_base.txt b/services/notifications/requirements/_base.txt index 68a5f444337..cd62c139434 100644 --- a/services/notifications/requirements/_base.txt +++ b/services/notifications/requirements/_base.txt @@ -188,6 +188,7 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -209,6 +210,7 @@ opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -218,6 +220,8 @@ opentelemetry-instrumentation-aio-pika==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi +opentelemetry-instrumentation-asyncpg==0.53b1 + # via -r requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in opentelemetry-instrumentation-httpx==0.53b1 @@ -242,6 +246,7 @@ opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis diff --git a/services/payments/requirements/_base.txt b/services/payments/requirements/_base.txt index b2c1c7b89fc..23aac4d2676 100644 --- a/services/payments/requirements/_base.txt +++ b/services/payments/requirements/_base.txt @@ -237,6 +237,7 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -258,6 +259,7 @@ opentelemetry-instrumentation==0.53b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-logging @@ -267,6 +269,8 @@ opentelemetry-instrumentation-aio-pika==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.53b1 # via opentelemetry-instrumentation-fastapi +opentelemetry-instrumentation-asyncpg==0.53b1 + # via -r requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-fastapi==0.53b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in opentelemetry-instrumentation-httpx==0.53b1 @@ -291,6 +295,7 @@ opentelemetry-semantic-conventions==0.53b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx # opentelemetry-instrumentation-redis diff --git a/services/resource-usage-tracker/requirements/_base.txt b/services/resource-usage-tracker/requirements/_base.txt index cf8e466894b..7dbb09c2faf 100644 --- a/services/resource-usage-tracker/requirements/_base.txt +++ b/services/resource-usage-tracker/requirements/_base.txt @@ -302,6 +302,7 @@ opentelemetry-api==1.26.0 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx @@ -327,6 +328,7 @@ opentelemetry-instrumentation==0.47b0 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx @@ -339,6 +341,8 @@ opentelemetry-instrumentation-aio-pika==0.47b0 # -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.47b0 # via opentelemetry-instrumentation-fastapi +opentelemetry-instrumentation-asyncpg==0.47b0 + # via -r requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-botocore==0.47b0 # via -r requirements/../../../packages/aws-library/requirements/_base.in opentelemetry-instrumentation-fastapi==0.47b0 @@ -373,6 +377,7 @@ opentelemetry-sdk==1.26.0 opentelemetry-semantic-conventions==0.47b0 # via # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-fastapi # opentelemetry-instrumentation-httpx diff --git a/services/storage/requirements/_base.txt b/services/storage/requirements/_base.txt index 05c3333f8e2..14bdad51740 100644 --- a/services/storage/requirements/_base.txt +++ b/services/storage/requirements/_base.txt @@ -349,6 +349,7 @@ opentelemetry-api==1.30.0 # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-celery # opentelemetry-instrumentation-fastapi @@ -375,6 +376,7 @@ opentelemetry-instrumentation==0.51b0 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-celery # opentelemetry-instrumentation-fastapi @@ -388,6 +390,8 @@ opentelemetry-instrumentation-aio-pika==0.51b0 # -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.51b0 # via opentelemetry-instrumentation-fastapi +opentelemetry-instrumentation-asyncpg==0.51b0 + # via -r requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-botocore==0.51b0 # via # -r requirements/../../../packages/aws-library/requirements/_base.in @@ -427,6 +431,7 @@ opentelemetry-semantic-conventions==0.51b0 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-botocore # opentelemetry-instrumentation-celery # opentelemetry-instrumentation-fastapi diff --git a/services/web/server/requirements/_base.txt b/services/web/server/requirements/_base.txt index c7571ec0848..0d74ceb0d3d 100644 --- a/services/web/server/requirements/_base.txt +++ b/services/web/server/requirements/_base.txt @@ -428,6 +428,7 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests @@ -450,6 +451,7 @@ opentelemetry-instrumentation==0.53b1 # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests @@ -461,6 +463,11 @@ opentelemetry-instrumentation-aiohttp-client==0.53b1 # via -r requirements/../../../../packages/service-library/requirements/_aiohttp.in opentelemetry-instrumentation-aiohttp-server==0.53b1 # via -r requirements/../../../../packages/service-library/requirements/_aiohttp.in +opentelemetry-instrumentation-asyncpg==0.53b1 + # via + # -r requirements/../../../../packages/notifications-library/requirements/../../../packages/postgres-database/requirements/_base.in + # -r requirements/../../../../packages/postgres-database/requirements/_base.in + # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-logging==0.53b1 # via # -r requirements/../../../../packages/service-library/requirements/_base.in @@ -489,6 +496,7 @@ opentelemetry-semantic-conventions==0.53b1 # opentelemetry-instrumentation # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk diff --git a/tests/swarm-deploy/requirements/_test.txt b/tests/swarm-deploy/requirements/_test.txt index dbc9e10be9d..1ee1ede3f19 100644 --- a/tests/swarm-deploy/requirements/_test.txt +++ b/tests/swarm-deploy/requirements/_test.txt @@ -232,6 +232,7 @@ opentelemetry-api==1.30.0 # opentelemetry-exporter-otlp-proto-http # opentelemetry-instrumentation # opentelemetry-instrumentation-aio-pika + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests @@ -252,6 +253,7 @@ opentelemetry-exporter-otlp-proto-http==1.30.0 opentelemetry-instrumentation==0.51b0 # via # opentelemetry-instrumentation-aio-pika + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests @@ -259,6 +261,8 @@ opentelemetry-instrumentation-aio-pika==0.51b0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in +opentelemetry-instrumentation-asyncpg==0.51b0 + # via -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in opentelemetry-instrumentation-logging==0.51b0 # via # -r requirements/../../../packages/service-library/requirements/_base.in @@ -285,6 +289,7 @@ opentelemetry-sdk==1.30.0 opentelemetry-semantic-conventions==0.51b0 # via # opentelemetry-instrumentation + # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk From 02523a76b341da1b770e2beaef5cd07501f82e48 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Wed, 7 May 2025 11:02:54 +0200 Subject: [PATCH 11/24] Revert "remove asyncpg and aiopg instrumentation" This reverts commit c7c846946a5d4385780ecea6522d2181771aaedf. --- .../requirements/_base.txt | 8 +-- .../postgres-database/requirements/_base.txt | 8 +-- .../service-library/requirements/_aiohttp.in | 1 + .../service-library/requirements/_aiohttp.txt | 11 ++++ .../src/servicelib/aiohttp/tracing.py | 14 ++++- .../src/servicelib/fastapi/tracing.py | 24 ++++++++ packages/service-library/tests/conftest.py | 12 ++++ packages/simcore-sdk/requirements/_base.txt | 30 +++++----- services/api-server/requirements/_base.txt | 36 ++++++------ services/catalog/requirements/_base.txt | 36 ++++++------ services/director-v2/requirements/_base.txt | 36 ++++++------ .../dynamic-scheduler/requirements/_base.txt | 36 ++++++------ .../dynamic-sidecar/requirements/_base.txt | 36 ++++++------ services/notifications/requirements/_base.txt | 36 ++++++------ services/payments/requirements/_base.txt | 36 ++++++------ services/web/server/requirements/_base.in | 1 + services/web/server/requirements/_base.txt | 55 ++++++++++++------- 17 files changed, 245 insertions(+), 171 deletions(-) diff --git a/packages/notifications-library/requirements/_base.txt b/packages/notifications-library/requirements/_base.txt index 6752b4a7b73..59793cd02df 100644 --- a/packages/notifications-library/requirements/_base.txt +++ b/packages/notifications-library/requirements/_base.txt @@ -68,16 +68,16 @@ mdurl==0.1.2 # via markdown-it-py multidict==6.1.0 # via yarl -opentelemetry-api==1.32.1 +opentelemetry-api==1.30.0 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asyncpg # opentelemetry-semantic-conventions -opentelemetry-instrumentation==0.53b1 +opentelemetry-instrumentation==0.51b0 # via opentelemetry-instrumentation-asyncpg -opentelemetry-instrumentation-asyncpg==0.53b1 +opentelemetry-instrumentation-asyncpg==0.51b0 # via -r requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-semantic-conventions==0.53b1 +opentelemetry-semantic-conventions==0.51b0 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asyncpg diff --git a/packages/postgres-database/requirements/_base.txt b/packages/postgres-database/requirements/_base.txt index 5361621f31e..b16bdd318cf 100644 --- a/packages/postgres-database/requirements/_base.txt +++ b/packages/postgres-database/requirements/_base.txt @@ -23,16 +23,16 @@ markupsafe==3.0.2 # via mako multidict==6.1.0 # via yarl -opentelemetry-api==1.32.1 +opentelemetry-api==1.30.0 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asyncpg # opentelemetry-semantic-conventions -opentelemetry-instrumentation==0.53b1 +opentelemetry-instrumentation==0.51b0 # via opentelemetry-instrumentation-asyncpg -opentelemetry-instrumentation-asyncpg==0.53b1 +opentelemetry-instrumentation-asyncpg==0.51b0 # via -r requirements/_base.in -opentelemetry-semantic-conventions==0.53b1 +opentelemetry-semantic-conventions==0.51b0 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asyncpg diff --git a/packages/service-library/requirements/_aiohttp.in b/packages/service-library/requirements/_aiohttp.in index 65f899d1568..d829728aa81 100644 --- a/packages/service-library/requirements/_aiohttp.in +++ b/packages/service-library/requirements/_aiohttp.in @@ -11,5 +11,6 @@ attrs jsonschema opentelemetry-instrumentation-aiohttp-client opentelemetry-instrumentation-aiohttp-server +opentelemetry-instrumentation-aiopg prometheus_client werkzeug diff --git a/packages/service-library/requirements/_aiohttp.txt b/packages/service-library/requirements/_aiohttp.txt index 842dc7d5e46..345626fc06b 100644 --- a/packages/service-library/requirements/_aiohttp.txt +++ b/packages/service-library/requirements/_aiohttp.txt @@ -50,20 +50,29 @@ opentelemetry-api==1.30.0 # opentelemetry-instrumentation # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server + # opentelemetry-instrumentation-aiopg + # opentelemetry-instrumentation-dbapi # opentelemetry-semantic-conventions opentelemetry-instrumentation==0.51b0 # via # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server + # opentelemetry-instrumentation-aiopg + # opentelemetry-instrumentation-dbapi opentelemetry-instrumentation-aiohttp-client==0.51b0 # via -r requirements/_aiohttp.in opentelemetry-instrumentation-aiohttp-server==0.51b0 # via -r requirements/_aiohttp.in +opentelemetry-instrumentation-aiopg==0.51b0 + # via -r requirements/_aiohttp.in +opentelemetry-instrumentation-dbapi==0.51b0 + # via opentelemetry-instrumentation-aiopg opentelemetry-semantic-conventions==0.51b0 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server + # opentelemetry-instrumentation-dbapi opentelemetry-util-http==0.51b0 # via # opentelemetry-instrumentation-aiohttp-client @@ -111,6 +120,8 @@ wrapt==1.17.2 # opentelemetry-instrumentation # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server + # opentelemetry-instrumentation-aiopg + # opentelemetry-instrumentation-dbapi yarl==1.18.3 # via aiohttp zipp==3.21.0 diff --git a/packages/service-library/src/servicelib/aiohttp/tracing.py b/packages/service-library/src/servicelib/aiohttp/tracing.py index c0093988560..e2cbd97cb47 100644 --- a/packages/service-library/src/servicelib/aiohttp/tracing.py +++ b/packages/service-library/src/servicelib/aiohttp/tracing.py @@ -29,6 +29,12 @@ HAS_BOTOCORE = True except ImportError: HAS_BOTOCORE = False +try: + from opentelemetry.instrumentation.aiopg import AiopgInstrumentor + + HAS_AIOPG = True +except ImportError: + HAS_AIOPG = False try: from opentelemetry.instrumentation.requests import RequestsInstrumentor @@ -108,7 +114,13 @@ def setup_tracing( # Instrument aiohttp client AioHttpClientInstrumentor().instrument() - + if HAS_AIOPG: + with log_context( + _logger, + logging.INFO, + msg="Attempting to add aio-pg opentelemetry autoinstrumentation...", + ): + AiopgInstrumentor().instrument() if HAS_BOTOCORE: with log_context( _logger, diff --git a/packages/service-library/src/servicelib/fastapi/tracing.py b/packages/service-library/src/servicelib/fastapi/tracing.py index e980b0c9496..5707a650075 100644 --- a/packages/service-library/src/servicelib/fastapi/tracing.py +++ b/packages/service-library/src/servicelib/fastapi/tracing.py @@ -20,6 +20,16 @@ _logger = logging.getLogger(__name__) try: + from opentelemetry.instrumentation.asyncpg import ( # type: ignore[import-not-found] + AsyncPGInstrumentor, + ) + + HAS_ASYNCPG = True +except ImportError: + HAS_ASYNCPG = False + +try: + from opentelemetry.instrumentation.aiopg import AiopgInstrumentor HAS_AIOPG = True except ImportError: @@ -93,6 +103,13 @@ def initialize_tracing( # Instrument FastAPI FastAPIInstrumentor().instrument_app(app) + if HAS_AIOPG: + with log_context( + _logger, + logging.INFO, + msg="Attempting to add asyncpg opentelemetry autoinstrumentation...", + ): + AiopgInstrumentor().instrument() if HAS_AIOPIKA_INSTRUMENTOR: with log_context( _logger, @@ -100,6 +117,13 @@ def initialize_tracing( msg="Attempting to add aio_pika opentelemetry autoinstrumentation...", ): AioPikaInstrumentor().instrument() + if HAS_ASYNCPG: + with log_context( + _logger, + logging.INFO, + msg="Attempting to add asyncpg opentelemetry autoinstrumentation...", + ): + AsyncPGInstrumentor().instrument() if HAS_REDIS: with log_context( _logger, diff --git a/packages/service-library/tests/conftest.py b/packages/service-library/tests/conftest.py index e87ac12874c..979a3731071 100644 --- a/packages/service-library/tests/conftest.py +++ b/packages/service-library/tests/conftest.py @@ -127,6 +127,18 @@ def uninstrument_opentelemetry(): RequestsInstrumentor().uninstrument() except ImportError: pass + try: + from opentelemetry.instrumentation.aiopg import AiopgInstrumentor + + AiopgInstrumentor().uninstrument() + except ImportError: + pass + try: + from opentelemetry.instrumentation.asyncpg import AsyncPGInstrumentor + + AsyncPGInstrumentor().uninstrument() + except ImportError: + pass try: from opentelemetry.instrumentation.fastapi import FastAPIInstrumentor diff --git a/packages/simcore-sdk/requirements/_base.txt b/packages/simcore-sdk/requirements/_base.txt index 8628f41b037..7f57a547a5b 100644 --- a/packages/simcore-sdk/requirements/_base.txt +++ b/packages/simcore-sdk/requirements/_base.txt @@ -150,7 +150,7 @@ multidict==6.1.0 # via # aiohttp # yarl -opentelemetry-api==1.32.1 +opentelemetry-api==1.30.0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc @@ -163,51 +163,51 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.32.1 +opentelemetry-exporter-otlp==1.30.0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.32.1 +opentelemetry-exporter-otlp-proto-common==1.30.0 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.32.1 +opentelemetry-exporter-otlp-proto-grpc==1.30.0 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.32.1 +opentelemetry-exporter-otlp-proto-http==1.30.0 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.53b1 +opentelemetry-instrumentation==0.51b0 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.53b1 +opentelemetry-instrumentation-aio-pika==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asyncpg==0.53b1 +opentelemetry-instrumentation-asyncpg==0.51b0 # via -r requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-logging==0.53b1 +opentelemetry-instrumentation-logging==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.53b1 +opentelemetry-instrumentation-redis==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.53b1 +opentelemetry-instrumentation-requests==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.32.1 +opentelemetry-proto==1.30.0 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.32.1 +opentelemetry-sdk==1.30.0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.53b1 +opentelemetry-semantic-conventions==0.51b0 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asyncpg # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.53b1 +opentelemetry-util-http==0.51b0 # via opentelemetry-instrumentation-requests orjson==3.10.15 # via diff --git a/services/api-server/requirements/_base.txt b/services/api-server/requirements/_base.txt index 3c0870c6744..98c381559b3 100644 --- a/services/api-server/requirements/_base.txt +++ b/services/api-server/requirements/_base.txt @@ -341,7 +341,7 @@ multidict==6.1.0 # via # aiohttp # yarl -opentelemetry-api==1.32.1 +opentelemetry-api==1.28.2 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in @@ -358,19 +358,19 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.32.1 +opentelemetry-exporter-otlp==1.28.2 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.32.1 +opentelemetry-exporter-otlp-proto-common==1.28.2 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.32.1 +opentelemetry-exporter-otlp-proto-grpc==1.28.2 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.32.1 +opentelemetry-exporter-otlp-proto-http==1.28.2 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.53b1 +opentelemetry-instrumentation==0.49b2 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi @@ -380,44 +380,44 @@ opentelemetry-instrumentation==0.53b1 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.53b1 +opentelemetry-instrumentation-aio-pika==0.49b2 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asgi==0.53b1 +opentelemetry-instrumentation-asgi==0.49b2 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.53b1 +opentelemetry-instrumentation-asyncpg==0.49b2 # via # -r requirements/../../../packages/postgres-database/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-fastapi==0.53b1 +opentelemetry-instrumentation-fastapi==0.49b2 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-httpx==0.53b1 +opentelemetry-instrumentation-httpx==0.49b2 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-logging==0.53b1 +opentelemetry-instrumentation-logging==0.49b2 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.53b1 +opentelemetry-instrumentation-redis==0.49b2 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.53b1 +opentelemetry-instrumentation-requests==0.49b2 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.32.1 +opentelemetry-proto==1.28.2 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.32.1 +opentelemetry-sdk==1.28.2 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.53b1 +opentelemetry-semantic-conventions==0.49b2 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi @@ -427,7 +427,7 @@ opentelemetry-semantic-conventions==0.53b1 # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.53b1 +opentelemetry-util-http==0.49b2 # via # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi diff --git a/services/catalog/requirements/_base.txt b/services/catalog/requirements/_base.txt index 8fee59c3a21..74220d2b7e5 100644 --- a/services/catalog/requirements/_base.txt +++ b/services/catalog/requirements/_base.txt @@ -217,7 +217,7 @@ multidict==6.1.0 # via # aiohttp # yarl -opentelemetry-api==1.32.1 +opentelemetry-api==1.31.0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc @@ -233,17 +233,17 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.32.1 +opentelemetry-exporter-otlp==1.31.0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.32.1 +opentelemetry-exporter-otlp-proto-common==1.31.0 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.32.1 +opentelemetry-exporter-otlp-proto-grpc==1.31.0 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.32.1 +opentelemetry-exporter-otlp-proto-http==1.31.0 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.53b1 +opentelemetry-instrumentation==0.52b0 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi @@ -253,33 +253,33 @@ opentelemetry-instrumentation==0.53b1 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.53b1 +opentelemetry-instrumentation-aio-pika==0.52b0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asgi==0.53b1 +opentelemetry-instrumentation-asgi==0.52b0 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.53b1 +opentelemetry-instrumentation-asyncpg==0.52b0 # via -r requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-fastapi==0.53b1 +opentelemetry-instrumentation-fastapi==0.52b0 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-httpx==0.53b1 +opentelemetry-instrumentation-httpx==0.52b0 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-logging==0.53b1 +opentelemetry-instrumentation-logging==0.52b0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.53b1 +opentelemetry-instrumentation-redis==0.52b0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.53b1 +opentelemetry-instrumentation-requests==0.52b0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.32.1 +opentelemetry-proto==1.31.0 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.32.1 +opentelemetry-sdk==1.31.0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.53b1 +opentelemetry-semantic-conventions==0.52b0 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi @@ -289,7 +289,7 @@ opentelemetry-semantic-conventions==0.53b1 # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.53b1 +opentelemetry-util-http==0.52b0 # via # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi diff --git a/services/director-v2/requirements/_base.txt b/services/director-v2/requirements/_base.txt index 41ab17acdb1..17a3f150820 100644 --- a/services/director-v2/requirements/_base.txt +++ b/services/director-v2/requirements/_base.txt @@ -390,7 +390,7 @@ networkx==3.4.2 # via -r requirements/_base.in numpy==2.1.3 # via -r requirements/../../../services/dask-sidecar/requirements/_dask-distributed.txt -opentelemetry-api==1.32.1 +opentelemetry-api==1.30.0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in @@ -407,19 +407,19 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.32.1 +opentelemetry-exporter-otlp==1.30.0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.32.1 +opentelemetry-exporter-otlp-proto-common==1.30.0 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.32.1 +opentelemetry-exporter-otlp-proto-grpc==1.30.0 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.32.1 +opentelemetry-exporter-otlp-proto-http==1.30.0 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.53b1 +opentelemetry-instrumentation==0.51b0 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi @@ -429,44 +429,44 @@ opentelemetry-instrumentation==0.53b1 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.53b1 +opentelemetry-instrumentation-aio-pika==0.51b0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asgi==0.53b1 +opentelemetry-instrumentation-asgi==0.51b0 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.53b1 +opentelemetry-instrumentation-asyncpg==0.51b0 # via # -r requirements/../../../packages/postgres-database/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-fastapi==0.53b1 +opentelemetry-instrumentation-fastapi==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-httpx==0.53b1 +opentelemetry-instrumentation-httpx==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-logging==0.53b1 +opentelemetry-instrumentation-logging==0.51b0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.53b1 +opentelemetry-instrumentation-redis==0.51b0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.53b1 +opentelemetry-instrumentation-requests==0.51b0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.32.1 +opentelemetry-proto==1.30.0 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.32.1 +opentelemetry-sdk==1.30.0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.53b1 +opentelemetry-semantic-conventions==0.51b0 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi @@ -476,7 +476,7 @@ opentelemetry-semantic-conventions==0.53b1 # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.53b1 +opentelemetry-util-http==0.51b0 # via # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi diff --git a/services/dynamic-scheduler/requirements/_base.txt b/services/dynamic-scheduler/requirements/_base.txt index a38f547ea4b..426fa0c69f3 100644 --- a/services/dynamic-scheduler/requirements/_base.txt +++ b/services/dynamic-scheduler/requirements/_base.txt @@ -224,7 +224,7 @@ multidict==6.1.0 # yarl nicegui==2.12.1 # via -r requirements/_base.in -opentelemetry-api==1.32.1 +opentelemetry-api==1.30.0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc @@ -240,17 +240,17 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.32.1 +opentelemetry-exporter-otlp==1.30.0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.32.1 +opentelemetry-exporter-otlp-proto-common==1.30.0 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.32.1 +opentelemetry-exporter-otlp-proto-grpc==1.30.0 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.32.1 +opentelemetry-exporter-otlp-proto-http==1.30.0 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.53b1 +opentelemetry-instrumentation==0.51b0 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi @@ -260,33 +260,33 @@ opentelemetry-instrumentation==0.53b1 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.53b1 +opentelemetry-instrumentation-aio-pika==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asgi==0.53b1 +opentelemetry-instrumentation-asgi==0.51b0 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.53b1 +opentelemetry-instrumentation-asyncpg==0.51b0 # via -r requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-fastapi==0.53b1 +opentelemetry-instrumentation-fastapi==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-httpx==0.53b1 +opentelemetry-instrumentation-httpx==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-logging==0.53b1 +opentelemetry-instrumentation-logging==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.53b1 +opentelemetry-instrumentation-redis==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.53b1 +opentelemetry-instrumentation-requests==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.32.1 +opentelemetry-proto==1.30.0 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.32.1 +opentelemetry-sdk==1.30.0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.53b1 +opentelemetry-semantic-conventions==0.51b0 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi @@ -296,7 +296,7 @@ opentelemetry-semantic-conventions==0.53b1 # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.53b1 +opentelemetry-util-http==0.51b0 # via # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi diff --git a/services/dynamic-sidecar/requirements/_base.txt b/services/dynamic-sidecar/requirements/_base.txt index b55f56bb6c4..c834f8d7727 100644 --- a/services/dynamic-sidecar/requirements/_base.txt +++ b/services/dynamic-sidecar/requirements/_base.txt @@ -272,7 +272,7 @@ multidict==6.1.0 # via # aiohttp # yarl -opentelemetry-api==1.32.1 +opentelemetry-api==1.30.0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in @@ -289,19 +289,19 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.32.1 +opentelemetry-exporter-otlp==1.30.0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.32.1 +opentelemetry-exporter-otlp-proto-common==1.30.0 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.32.1 +opentelemetry-exporter-otlp-proto-grpc==1.30.0 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.32.1 +opentelemetry-exporter-otlp-proto-http==1.30.0 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.53b1 +opentelemetry-instrumentation==0.51b0 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi @@ -311,44 +311,44 @@ opentelemetry-instrumentation==0.53b1 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.53b1 +opentelemetry-instrumentation-aio-pika==0.51b0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asgi==0.53b1 +opentelemetry-instrumentation-asgi==0.51b0 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.53b1 +opentelemetry-instrumentation-asyncpg==0.51b0 # via # -r requirements/../../../packages/postgres-database/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-fastapi==0.53b1 +opentelemetry-instrumentation-fastapi==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-httpx==0.53b1 +opentelemetry-instrumentation-httpx==0.51b0 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-logging==0.53b1 +opentelemetry-instrumentation-logging==0.51b0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.53b1 +opentelemetry-instrumentation-redis==0.51b0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.53b1 +opentelemetry-instrumentation-requests==0.51b0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.32.1 +opentelemetry-proto==1.30.0 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.32.1 +opentelemetry-sdk==1.30.0 # via # -r requirements/../../../packages/service-library/requirements/_base.in # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.53b1 +opentelemetry-semantic-conventions==0.51b0 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi @@ -358,7 +358,7 @@ opentelemetry-semantic-conventions==0.53b1 # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.53b1 +opentelemetry-util-http==0.51b0 # via # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi diff --git a/services/notifications/requirements/_base.txt b/services/notifications/requirements/_base.txt index cd62c139434..9ddbb34d9d0 100644 --- a/services/notifications/requirements/_base.txt +++ b/services/notifications/requirements/_base.txt @@ -180,7 +180,7 @@ multidict==6.2.0 # via # aiohttp # yarl -opentelemetry-api==1.32.1 +opentelemetry-api==1.31.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc @@ -196,17 +196,17 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.32.1 +opentelemetry-exporter-otlp==1.31.1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.32.1 +opentelemetry-exporter-otlp-proto-common==1.31.1 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.32.1 +opentelemetry-exporter-otlp-proto-grpc==1.31.1 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.32.1 +opentelemetry-exporter-otlp-proto-http==1.31.1 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.53b1 +opentelemetry-instrumentation==0.52b1 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi @@ -216,33 +216,33 @@ opentelemetry-instrumentation==0.53b1 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.53b1 +opentelemetry-instrumentation-aio-pika==0.52b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asgi==0.53b1 +opentelemetry-instrumentation-asgi==0.52b1 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.53b1 +opentelemetry-instrumentation-asyncpg==0.52b1 # via -r requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-fastapi==0.53b1 +opentelemetry-instrumentation-fastapi==0.52b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-httpx==0.53b1 +opentelemetry-instrumentation-httpx==0.52b1 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-logging==0.53b1 +opentelemetry-instrumentation-logging==0.52b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.53b1 +opentelemetry-instrumentation-redis==0.52b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.53b1 +opentelemetry-instrumentation-requests==0.52b1 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.32.1 +opentelemetry-proto==1.31.1 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.32.1 +opentelemetry-sdk==1.31.1 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.53b1 +opentelemetry-semantic-conventions==0.52b1 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi @@ -252,7 +252,7 @@ opentelemetry-semantic-conventions==0.53b1 # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.53b1 +opentelemetry-util-http==0.52b1 # via # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi diff --git a/services/payments/requirements/_base.txt b/services/payments/requirements/_base.txt index 23aac4d2676..d07b7cd7454 100644 --- a/services/payments/requirements/_base.txt +++ b/services/payments/requirements/_base.txt @@ -229,7 +229,7 @@ multidict==6.1.0 # via # aiohttp # yarl -opentelemetry-api==1.32.1 +opentelemetry-api==1.28.2 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc @@ -245,17 +245,17 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.32.1 +opentelemetry-exporter-otlp==1.28.2 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.32.1 +opentelemetry-exporter-otlp-proto-common==1.28.2 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.32.1 +opentelemetry-exporter-otlp-proto-grpc==1.28.2 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.32.1 +opentelemetry-exporter-otlp-proto-http==1.28.2 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.53b1 +opentelemetry-instrumentation==0.49b2 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-asgi @@ -265,33 +265,33 @@ opentelemetry-instrumentation==0.53b1 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.53b1 +opentelemetry-instrumentation-aio-pika==0.49b2 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-asgi==0.53b1 +opentelemetry-instrumentation-asgi==0.49b2 # via opentelemetry-instrumentation-fastapi -opentelemetry-instrumentation-asyncpg==0.53b1 +opentelemetry-instrumentation-asyncpg==0.49b2 # via -r requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-fastapi==0.53b1 +opentelemetry-instrumentation-fastapi==0.49b2 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-httpx==0.53b1 +opentelemetry-instrumentation-httpx==0.49b2 # via -r requirements/../../../packages/service-library/requirements/_fastapi.in -opentelemetry-instrumentation-logging==0.53b1 +opentelemetry-instrumentation-logging==0.49b2 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.53b1 +opentelemetry-instrumentation-redis==0.49b2 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.53b1 +opentelemetry-instrumentation-requests==0.49b2 # via -r requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.32.1 +opentelemetry-proto==1.28.2 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.32.1 +opentelemetry-sdk==1.28.2 # via # -r requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.53b1 +opentelemetry-semantic-conventions==0.49b2 # via # opentelemetry-instrumentation # opentelemetry-instrumentation-asgi @@ -301,7 +301,7 @@ opentelemetry-semantic-conventions==0.53b1 # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.53b1 +opentelemetry-util-http==0.49b2 # via # opentelemetry-instrumentation-asgi # opentelemetry-instrumentation-fastapi diff --git a/services/web/server/requirements/_base.in b/services/web/server/requirements/_base.in index ce70df73f51..41887896cd5 100644 --- a/services/web/server/requirements/_base.in +++ b/services/web/server/requirements/_base.in @@ -41,6 +41,7 @@ jinja_app_loader # email jsondiff msgpack openpyxl # excel +opentelemetry-instrumentation-aiopg orjson # json packaging passlib diff --git a/services/web/server/requirements/_base.txt b/services/web/server/requirements/_base.txt index 0d74ceb0d3d..a8f509faa39 100644 --- a/services/web/server/requirements/_base.txt +++ b/services/web/server/requirements/_base.txt @@ -418,7 +418,7 @@ multidict==6.1.0 # yarl openpyxl==3.0.9 # via -r requirements/_base.in -opentelemetry-api==1.32.1 +opentelemetry-api==1.27.0 # via # -r requirements/../../../../packages/service-library/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in @@ -428,79 +428,89 @@ opentelemetry-api==1.32.1 # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server + # opentelemetry-instrumentation-aiopg # opentelemetry-instrumentation-asyncpg + # opentelemetry-instrumentation-dbapi # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk # opentelemetry-semantic-conventions -opentelemetry-exporter-otlp==1.32.1 +opentelemetry-exporter-otlp==1.27.0 # via # -r requirements/../../../../packages/service-library/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-exporter-otlp-proto-common==1.32.1 +opentelemetry-exporter-otlp-proto-common==1.27.0 # via # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-exporter-otlp-proto-grpc==1.32.1 +opentelemetry-exporter-otlp-proto-grpc==1.27.0 # via opentelemetry-exporter-otlp -opentelemetry-exporter-otlp-proto-http==1.32.1 +opentelemetry-exporter-otlp-proto-http==1.27.0 # via opentelemetry-exporter-otlp -opentelemetry-instrumentation==0.53b1 +opentelemetry-instrumentation==0.48b0 # via # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server + # opentelemetry-instrumentation-aiopg # opentelemetry-instrumentation-asyncpg + # opentelemetry-instrumentation-dbapi # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests -opentelemetry-instrumentation-aio-pika==0.53b1 +opentelemetry-instrumentation-aio-pika==0.48b0 # via # -r requirements/../../../../packages/service-library/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-aiohttp-client==0.53b1 +opentelemetry-instrumentation-aiohttp-client==0.48b0 # via -r requirements/../../../../packages/service-library/requirements/_aiohttp.in -opentelemetry-instrumentation-aiohttp-server==0.53b1 +opentelemetry-instrumentation-aiohttp-server==0.48b0 # via -r requirements/../../../../packages/service-library/requirements/_aiohttp.in -opentelemetry-instrumentation-asyncpg==0.53b1 +opentelemetry-instrumentation-aiopg==0.48b0 + # via + # -r requirements/../../../../packages/service-library/requirements/_aiohttp.in + # -r requirements/_base.in +opentelemetry-instrumentation-asyncpg==0.48b0 # via # -r requirements/../../../../packages/notifications-library/requirements/../../../packages/postgres-database/requirements/_base.in # -r requirements/../../../../packages/postgres-database/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.in -opentelemetry-instrumentation-logging==0.53b1 +opentelemetry-instrumentation-dbapi==0.48b0 + # via opentelemetry-instrumentation-aiopg +opentelemetry-instrumentation-logging==0.48b0 # via # -r requirements/../../../../packages/service-library/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-redis==0.53b1 +opentelemetry-instrumentation-redis==0.48b0 # via # -r requirements/../../../../packages/service-library/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-instrumentation-requests==0.53b1 +opentelemetry-instrumentation-requests==0.48b0 # via # -r requirements/../../../../packages/service-library/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in -opentelemetry-proto==1.32.1 +opentelemetry-proto==1.27.0 # via # opentelemetry-exporter-otlp-proto-common # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-sdk==1.32.1 +opentelemetry-sdk==1.27.0 # via # -r requirements/../../../../packages/service-library/requirements/_base.in # -r requirements/../../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in # opentelemetry-exporter-otlp-proto-grpc # opentelemetry-exporter-otlp-proto-http -opentelemetry-semantic-conventions==0.53b1 +opentelemetry-semantic-conventions==0.48b0 # via - # opentelemetry-instrumentation # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server # opentelemetry-instrumentation-asyncpg + # opentelemetry-instrumentation-dbapi # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests # opentelemetry-sdk -opentelemetry-util-http==0.53b1 +opentelemetry-util-http==0.48b0 # via # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server @@ -575,7 +585,6 @@ packaging==24.1 # -r requirements/../../../../packages/simcore-sdk/requirements/_base.in # -r requirements/_base.in # gunicorn - # opentelemetry-instrumentation # swagger-ui-py pamqp==3.2.1 # via aiormq @@ -589,7 +598,7 @@ pint==0.24.3 # -r requirements/_base.in prometheus-client==0.14.1 # via -r requirements/../../../../packages/service-library/requirements/_aiohttp.in -protobuf==5.29.4 +protobuf==4.25.4 # via # googleapis-common-protos # opentelemetry-proto @@ -880,7 +889,9 @@ rich==13.4.2 setproctitle==1.3.3 # via gunicorn setuptools==69.1.1 - # via jsonschema + # via + # jsonschema + # opentelemetry-instrumentation shellingham==1.5.4 # via typer six==1.16.0 @@ -1023,6 +1034,8 @@ wrapt==1.16.0 # opentelemetry-instrumentation-aio-pika # opentelemetry-instrumentation-aiohttp-client # opentelemetry-instrumentation-aiohttp-server + # opentelemetry-instrumentation-aiopg + # opentelemetry-instrumentation-dbapi # opentelemetry-instrumentation-redis yarl==1.9.4 # via From d762da508698efcd36f3f1ac437a11029597eb27 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Mon, 12 May 2025 13:52:03 +0200 Subject: [PATCH 12/24] attempt to solve issue by fixing otel fixture --- packages/service-library/tests/aiohttp/test_tracing.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/packages/service-library/tests/aiohttp/test_tracing.py b/packages/service-library/tests/aiohttp/test_tracing.py index 6dc6c8647f0..bc83c403659 100644 --- a/packages/service-library/tests/aiohttp/test_tracing.py +++ b/packages/service-library/tests/aiohttp/test_tracing.py @@ -24,14 +24,23 @@ def tracing_settings_in(request): def set_and_clean_settings_env_vars( monkeypatch: pytest.MonkeyPatch, tracing_settings_in ): + added_endpoint = False if tracing_settings_in[0]: + added_endpoint = True monkeypatch.setenv( "TRACING_OPENTELEMETRY_COLLECTOR_ENDPOINT", f"{tracing_settings_in[0]}" ) + added_port = False if tracing_settings_in[1]: + added_port = True monkeypatch.setenv( "TRACING_OPENTELEMETRY_COLLECTOR_PORT", f"{tracing_settings_in[1]}" ) + yield + if added_endpoint: + monkeypatch.delenv("TRACING_OPENTELEMETRY_COLLECTOR_ENDPOINT") + if added_port: + monkeypatch.delenv("TRACING_OPENTELEMETRY_COLLECTOR_PORT") @pytest.mark.parametrize( From 72fa33926f85c3b5ef6a20dba014b8c75d0d2615 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Mon, 12 May 2025 15:01:47 +0200 Subject: [PATCH 13/24] ensure to delete env --- .../service-library/tests/aiohttp/test_tracing.py | 12 ++++++------ .../service-library/tests/fastapi/test_tracing.py | 9 +++++++++ 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/packages/service-library/tests/aiohttp/test_tracing.py b/packages/service-library/tests/aiohttp/test_tracing.py index bc83c403659..7c62fc56ada 100644 --- a/packages/service-library/tests/aiohttp/test_tracing.py +++ b/packages/service-library/tests/aiohttp/test_tracing.py @@ -24,22 +24,22 @@ def tracing_settings_in(request): def set_and_clean_settings_env_vars( monkeypatch: pytest.MonkeyPatch, tracing_settings_in ): - added_endpoint = False + endpoint_mocked = False if tracing_settings_in[0]: - added_endpoint = True + endpoint_mocked = True monkeypatch.setenv( "TRACING_OPENTELEMETRY_COLLECTOR_ENDPOINT", f"{tracing_settings_in[0]}" ) - added_port = False + port_mocked = False if tracing_settings_in[1]: - added_port = True + port_mocked = True monkeypatch.setenv( "TRACING_OPENTELEMETRY_COLLECTOR_PORT", f"{tracing_settings_in[1]}" ) yield - if added_endpoint: + if endpoint_mocked: monkeypatch.delenv("TRACING_OPENTELEMETRY_COLLECTOR_ENDPOINT") - if added_port: + if port_mocked: monkeypatch.delenv("TRACING_OPENTELEMETRY_COLLECTOR_PORT") diff --git a/packages/service-library/tests/fastapi/test_tracing.py b/packages/service-library/tests/fastapi/test_tracing.py index 994d9810cde..db3cf33e50c 100644 --- a/packages/service-library/tests/fastapi/test_tracing.py +++ b/packages/service-library/tests/fastapi/test_tracing.py @@ -29,14 +29,23 @@ def tracing_settings_in(request: pytest.FixtureRequest) -> dict[str, Any]: def set_and_clean_settings_env_vars( monkeypatch: pytest.MonkeyPatch, tracing_settings_in: Callable[[], dict[str, Any]] ) -> None: + endpoint_mocked = False if tracing_settings_in[0]: + endpoint_mocked = True monkeypatch.setenv( "TRACING_OPENTELEMETRY_COLLECTOR_ENDPOINT", f"{tracing_settings_in[0]}" ) + port_mocked = False if tracing_settings_in[1]: + port_mocked = True monkeypatch.setenv( "TRACING_OPENTELEMETRY_COLLECTOR_PORT", f"{tracing_settings_in[1]}" ) + yield + if endpoint_mocked: + monkeypatch.delenv("TRACING_OPENTELEMETRY_COLLECTOR_ENDPOINT") + if port_mocked: + monkeypatch.delenv("TRACING_OPENTELEMETRY_COLLECTOR_PORT") @pytest.mark.parametrize( From 91a0f9934325c32b3df0520aa80134bfeed679b8 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Fri, 23 May 2025 07:18:33 +0200 Subject: [PATCH 14/24] upgrade aiopika instrumentation lib after merging master --- services/autoscaling/requirements/_base.txt | 4 ++++ services/clusters-keeper/requirements/_base.txt | 4 ++++ services/dask-sidecar/requirements/_base.txt | 2 ++ services/director-v2/requirements/_base.txt | 4 ++++ 4 files changed, 14 insertions(+) diff --git a/services/autoscaling/requirements/_base.txt b/services/autoscaling/requirements/_base.txt index 6d8ae0bd2fe..b14b6a2b408 100644 --- a/services/autoscaling/requirements/_base.txt +++ b/services/autoscaling/requirements/_base.txt @@ -334,6 +334,10 @@ opentelemetry-instrumentation==0.54b1 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.54b1 + # via + # -r requirements/../../../packages/aws-library/requirements/../../../packages/service-library/requirements/_base.in + # -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.54b1 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-botocore==0.54b1 diff --git a/services/clusters-keeper/requirements/_base.txt b/services/clusters-keeper/requirements/_base.txt index 3c5d13485fa..aecdfcddd0a 100644 --- a/services/clusters-keeper/requirements/_base.txt +++ b/services/clusters-keeper/requirements/_base.txt @@ -332,6 +332,10 @@ opentelemetry-instrumentation==0.54b1 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.54b1 + # via + # -r requirements/../../../packages/aws-library/requirements/../../../packages/service-library/requirements/_base.in + # -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.54b1 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-botocore==0.54b1 diff --git a/services/dask-sidecar/requirements/_base.txt b/services/dask-sidecar/requirements/_base.txt index 1b6afa71eee..d38bf44ab71 100644 --- a/services/dask-sidecar/requirements/_base.txt +++ b/services/dask-sidecar/requirements/_base.txt @@ -240,6 +240,8 @@ opentelemetry-instrumentation==0.54b1 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.54b1 + # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-logging==0.54b1 # via -r requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-redis==0.54b1 diff --git a/services/director-v2/requirements/_base.txt b/services/director-v2/requirements/_base.txt index 97f089d2984..bb2bca78431 100644 --- a/services/director-v2/requirements/_base.txt +++ b/services/director-v2/requirements/_base.txt @@ -429,6 +429,10 @@ opentelemetry-instrumentation==0.54b1 # opentelemetry-instrumentation-logging # opentelemetry-instrumentation-redis # opentelemetry-instrumentation-requests +opentelemetry-instrumentation-aio-pika==0.54b1 + # via + # -r requirements/../../../packages/service-library/requirements/_base.in + # -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in opentelemetry-instrumentation-asgi==0.54b1 # via opentelemetry-instrumentation-fastapi opentelemetry-instrumentation-asyncpg==0.54b1 From efa751c42bb98373bc0d905cf8739c7c42fa2f8b Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Fri, 23 May 2025 10:46:06 +0200 Subject: [PATCH 15/24] add lifespan to tracing in fastapi case --- .../src/servicelib/fastapi/tracing.py | 65 ++++++++++++++++++- .../tests/fastapi/test_tracing.py | 53 ++++++++------- .../simcore_service_agent/core/application.py | 8 +-- .../core/application.py | 8 +-- .../core/application.py | 7 +- .../core/application.py | 10 +-- .../core/application.py | 8 +-- .../core/application.py | 8 +-- .../core/application.py | 8 +-- .../core/application.py | 8 +-- .../core/application.py | 8 +-- .../core/application.py | 10 ++- .../core/application.py | 4 +- .../core/application.py | 6 +- .../core/application.py | 10 ++- .../core/application.py | 7 +- .../core/application.py | 15 ++--- .../core/application.py | 7 +- 18 files changed, 159 insertions(+), 91 deletions(-) diff --git a/packages/service-library/src/servicelib/fastapi/tracing.py b/packages/service-library/src/servicelib/fastapi/tracing.py index 5707a650075..0fb5a05cb31 100644 --- a/packages/service-library/src/servicelib/fastapi/tracing.py +++ b/packages/service-library/src/servicelib/fastapi/tracing.py @@ -1,8 +1,10 @@ """Adds fastapi middleware for tracing using opentelemetry instrumentation.""" import logging +from collections.abc import AsyncIterator from fastapi import FastAPI +from fastapi_lifespan_manager import State from httpx import AsyncClient, Client from opentelemetry import trace from opentelemetry.exporter.otlp.proto.http.trace_exporter import ( @@ -68,7 +70,7 @@ HAS_AIOPIKA_INSTRUMENTOR = False -def initialize_tracing( +def _startup( app: FastAPI, tracing_settings: TracingSettings, service_name: str ) -> None: if ( @@ -147,5 +149,66 @@ def initialize_tracing( RequestsInstrumentor().instrument() +def _shutdown() -> None: + """Uninstruments all opentelemetry instrumentors that were instrumented.""" + if HAS_AIOPG: + try: + AiopgInstrumentor().uninstrument() + except Exception: + _logger.exception("Failed to uninstrument AiopgInstrumentor") + if HAS_AIOPIKA_INSTRUMENTOR: + try: + AioPikaInstrumentor().uninstrument() + except Exception: + _logger.exception("Failed to uninstrument AioPikaInstrumentor") + if HAS_ASYNCPG: + try: + AsyncPGInstrumentor().uninstrument() + except Exception: + _logger.exception("Failed to uninstrument AsyncPGInstrumentor") + if HAS_REDIS: + try: + RedisInstrumentor().uninstrument() + except Exception: + _logger.exception("Failed to uninstrument RedisInstrumentor") + if HAS_BOTOCORE: + try: + BotocoreInstrumentor().uninstrument() + except Exception: + _logger.exception("Failed to uninstrument BotocoreInstrumentor") + if HAS_REQUESTS: + try: + RequestsInstrumentor().uninstrument() + except Exception: + _logger.exception("Failed to uninstrument RequestsInstrumentor") + + def setup_httpx_client_tracing(client: AsyncClient | Client): HTTPXClientInstrumentor.instrument_client(client) + + +def setup_tracing( + app: FastAPI, tracing_settings: TracingSettings, service_name: str +) -> None: + + _startup(app, tracing_settings, service_name) + + def _on_shutdown() -> None: + _shutdown() + + app.add_event_handler("shutdown", _on_shutdown) + + +async def tracing_instrumentation_lifespan( + *, + app: FastAPI, + state: State, + tracing_settings: TracingSettings, + service_name: str, +) -> AsyncIterator[State]: + + _startup(app, tracing_settings, service_name) + + yield state + + _shutdown() diff --git a/packages/service-library/tests/fastapi/test_tracing.py b/packages/service-library/tests/fastapi/test_tracing.py index db3cf33e50c..bd88334a2f6 100644 --- a/packages/service-library/tests/fastapi/test_tracing.py +++ b/packages/service-library/tests/fastapi/test_tracing.py @@ -11,7 +11,7 @@ import pytest from fastapi import FastAPI from pydantic import ValidationError -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import tracing_instrumentation_lifespan from settings_library.tracing import TracingSettings @@ -63,17 +63,19 @@ async def test_valid_tracing_settings( uninstrument_opentelemetry: Iterator[None], ): tracing_settings = TracingSettings() - initialize_tracing( - mocked_app, + async for state in tracing_instrumentation_lifespan( + app=mocked_app, + state={}, tracing_settings=tracing_settings, service_name="Mock-Openetlemetry-Pytest", - ) - # idempotency - initialize_tracing( - mocked_app, - tracing_settings=tracing_settings, - service_name="Mock-Openetlemetry-Pytest", - ) + ): + async for _ in tracing_instrumentation_lifespan( + app=mocked_app, + state=state, + tracing_settings=tracing_settings, + service_name="Mock-Openetlemetry-Pytest", + ): + pass @pytest.mark.parametrize( @@ -101,11 +103,13 @@ async def test_invalid_tracing_settings( app = mocked_app with pytest.raises((BaseException, ValidationError, TypeError)): # noqa: PT012 tracing_settings = TracingSettings() - initialize_tracing( - app, + async for _ in tracing_instrumentation_lifespan( + app=app, + state={}, tracing_settings=tracing_settings, service_name="Mock-Openetlemetry-Pytest", - ) + ): + pass def install_package(package): @@ -156,16 +160,19 @@ async def test_tracing_setup_package_detection( ): package_name = manage_package importlib.import_module(package_name) - # tracing_settings = TracingSettings() - initialize_tracing( - mocked_app, + # Use tracing_instrumentation_lifespan instead of _startup + async for _ in tracing_instrumentation_lifespan( + app=mocked_app, + state={}, tracing_settings=tracing_settings, service_name="Mock-Openetlemetry-Pytest", - ) - # idempotency - initialize_tracing( - mocked_app, - tracing_settings=tracing_settings, - service_name="Mock-Openetlemetry-Pytest", - ) + ): + # idempotency: call again + async for _ in tracing_instrumentation_lifespan( + app=mocked_app, + state={}, + tracing_settings=tracing_settings, + service_name="Mock-Openetlemetry-Pytest", + ): + pass diff --git a/services/agent/src/simcore_service_agent/core/application.py b/services/agent/src/simcore_service_agent/core/application.py index b4a5ce8cd48..d251418e085 100644 --- a/services/agent/src/simcore_service_agent/core/application.py +++ b/services/agent/src/simcore_service_agent/core/application.py @@ -5,7 +5,7 @@ get_common_oas_options, override_fastapi_openapi_method, ) -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import setup_tracing from servicelib.logging_utils import config_all_loggers from .._meta import ( @@ -55,6 +55,9 @@ def create_app() -> FastAPI: override_fastapi_openapi_method(app) app.state.settings = settings + if settings.AGENT_TRACING: + setup_tracing(app, settings.AGENT_TRACING, APP_NAME) + setup_instrumentation(app) setup_rabbitmq(app) @@ -63,9 +66,6 @@ def create_app() -> FastAPI: setup_rest_api(app) setup_rpc_api_routes(app) - if settings.AGENT_TRACING: - initialize_tracing(app, settings.AGENT_TRACING, APP_NAME) - async def _on_startup() -> None: print(APP_STARTED_BANNER_MSG, flush=True) # noqa: T201 diff --git a/services/api-server/src/simcore_service_api_server/core/application.py b/services/api-server/src/simcore_service_api_server/core/application.py index bc319bb09a0..c15a506d9b0 100644 --- a/services/api-server/src/simcore_service_api_server/core/application.py +++ b/services/api-server/src/simcore_service_api_server/core/application.py @@ -5,7 +5,7 @@ from models_library.basic_types import BootModeEnum from packaging.version import Version from servicelib.fastapi.profiler import initialize_profiler -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import setup_tracing from servicelib.logging_utils import config_all_loggers from .. import exceptions @@ -82,6 +82,9 @@ def init_app(settings: ApplicationSettings | None = None) -> FastAPI: app.state.settings = settings + if settings.API_SERVER_TRACING: + setup_tracing(app, settings.API_SERVER_TRACING, APP_NAME) + if settings.API_SERVER_POSTGRES: setup_postgres(app) @@ -90,9 +93,6 @@ def init_app(settings: ApplicationSettings | None = None) -> FastAPI: if app.state.settings.API_SERVER_PROMETHEUS_INSTRUMENTATION_ENABLED: setup_prometheus_instrumentation(app) - if settings.API_SERVER_TRACING: - initialize_tracing(app, settings.API_SERVER_TRACING, APP_NAME) - if settings.API_SERVER_WEBSERVER: webserver.setup( app, diff --git a/services/autoscaling/src/simcore_service_autoscaling/core/application.py b/services/autoscaling/src/simcore_service_autoscaling/core/application.py index f70a8be583c..c023795a71b 100644 --- a/services/autoscaling/src/simcore_service_autoscaling/core/application.py +++ b/services/autoscaling/src/simcore_service_autoscaling/core/application.py @@ -1,7 +1,7 @@ import logging from fastapi import FastAPI -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import setup_tracing from .._meta import ( API_VERSION, @@ -60,6 +60,9 @@ def create_app(settings: ApplicationSettings) -> FastAPI: assert app.state.settings.API_VERSION == API_VERSION # nosec # PLUGINS SETUP + if app.state.settings.AUTOSCALING_TRACING: + setup_tracing(app, app.state.settings.AUTOSCALING_TRACING, APP_NAME) + setup_instrumentation(app) setup_api_routes(app) setup_docker(app) @@ -70,8 +73,6 @@ def create_app(settings: ApplicationSettings) -> FastAPI: setup_auto_scaler_background_task(app) setup_buffer_machines_pool_task(app) - if app.state.settings.AUTOSCALING_TRACING: - initialize_tracing(app, app.state.settings.AUTOSCALING_TRACING, APP_NAME) # ERROR HANDLERS diff --git a/services/catalog/src/simcore_service_catalog/core/application.py b/services/catalog/src/simcore_service_catalog/core/application.py index 0ff4deb86d8..d353f35eabd 100644 --- a/services/catalog/src/simcore_service_catalog/core/application.py +++ b/services/catalog/src/simcore_service_catalog/core/application.py @@ -5,10 +5,10 @@ from models_library.basic_types import BootModeEnum from servicelib.fastapi import timing_middleware from servicelib.fastapi.monitoring import ( - initialize_prometheus_instrumentation, + setup_prometheus_instrumentation, ) from servicelib.fastapi.openapi import override_fastapi_openapi_method -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import setup_tracing from starlette.middleware.base import BaseHTTPMiddleware from .._meta import ( @@ -63,10 +63,10 @@ def create_app() -> FastAPI: app.state.settings = settings # MIDDLEWARES - if settings.CATALOG_PROMETHEUS_INSTRUMENTATION_ENABLED: - initialize_prometheus_instrumentation(app) if settings.CATALOG_TRACING: - initialize_tracing(app, settings.CATALOG_TRACING, APP_NAME) + setup_tracing(app, settings.CATALOG_TRACING, APP_NAME) + if settings.CATALOG_PROMETHEUS_INSTRUMENTATION_ENABLED: + setup_prometheus_instrumentation(app) if settings.SC_BOOT_MODE != BootModeEnum.PRODUCTION: # middleware to time requests (ONLY for development) diff --git a/services/clusters-keeper/src/simcore_service_clusters_keeper/core/application.py b/services/clusters-keeper/src/simcore_service_clusters_keeper/core/application.py index ceb6413b00f..979a618f126 100644 --- a/services/clusters-keeper/src/simcore_service_clusters_keeper/core/application.py +++ b/services/clusters-keeper/src/simcore_service_clusters_keeper/core/application.py @@ -4,7 +4,7 @@ from servicelib.fastapi.monitoring import ( setup_prometheus_instrumentation, ) -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import setup_tracing from .._meta import ( API_VERSION, @@ -58,14 +58,14 @@ def create_app(settings: ApplicationSettings) -> FastAPI: app.state.settings = settings assert app.state.settings.API_VERSION == API_VERSION # nosec - if app.state.settings.CLUSTERS_KEEPER_PROMETHEUS_INSTRUMENTATION_ENABLED: - setup_prometheus_instrumentation(app) if app.state.settings.CLUSTERS_KEEPER_TRACING: - initialize_tracing( + setup_tracing( app, app.state.settings.CLUSTERS_KEEPER_TRACING, APP_NAME, ) + if app.state.settings.CLUSTERS_KEEPER_PROMETHEUS_INSTRUMENTATION_ENABLED: + setup_prometheus_instrumentation(app) # PLUGINS SETUP setup_api_routes(app) diff --git a/services/datcore-adapter/src/simcore_service_datcore_adapter/core/application.py b/services/datcore-adapter/src/simcore_service_datcore_adapter/core/application.py index fab6b65d746..dfc4b95ef3e 100644 --- a/services/datcore-adapter/src/simcore_service_datcore_adapter/core/application.py +++ b/services/datcore-adapter/src/simcore_service_datcore_adapter/core/application.py @@ -10,7 +10,7 @@ setup_prometheus_instrumentation, ) from servicelib.fastapi.openapi import override_fastapi_openapi_method -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import setup_tracing from starlette.middleware.base import BaseHTTPMiddleware from .._meta import API_VERSION, API_VTAG, APP_NAME @@ -60,14 +60,14 @@ def create_app(settings: ApplicationSettings) -> FastAPI: app.state.settings = settings - if app.state.settings.DATCORE_ADAPTER_PROMETHEUS_INSTRUMENTATION_ENABLED: - setup_prometheus_instrumentation(app) if app.state.settings.DATCORE_ADAPTER_TRACING: - initialize_tracing( + setup_tracing( app, app.state.settings.DATCORE_ADAPTER_TRACING, APP_NAME, ) + if app.state.settings.DATCORE_ADAPTER_PROMETHEUS_INSTRUMENTATION_ENABLED: + setup_prometheus_instrumentation(app) if settings.SC_BOOT_MODE != BootModeEnum.PRODUCTION: # middleware to time requests (ONLY for development) diff --git a/services/director-v2/src/simcore_service_director_v2/core/application.py b/services/director-v2/src/simcore_service_director_v2/core/application.py index dd04fb355d3..f3f1cdaf145 100644 --- a/services/director-v2/src/simcore_service_director_v2/core/application.py +++ b/services/director-v2/src/simcore_service_director_v2/core/application.py @@ -7,7 +7,7 @@ override_fastapi_openapi_method, ) from servicelib.fastapi.profiler import initialize_profiler -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import setup_tracing from servicelib.logging_utils import config_all_loggers from .._meta import API_VERSION, API_VTAG, APP_NAME, PROJECT_NAME, SUMMARY @@ -145,12 +145,12 @@ def init_app(settings: AppSettings | None = None) -> FastAPI: substitutions.setup(app) + if settings.DIRECTOR_V2_TRACING: + setup_tracing(app, settings.DIRECTOR_V2_TRACING, APP_NAME) + if settings.DIRECTOR_V2_PROMETHEUS_INSTRUMENTATION_ENABLED: instrumentation.setup(app) - if settings.DIRECTOR_V2_TRACING: - initialize_tracing(app, settings.DIRECTOR_V2_TRACING, APP_NAME) - if settings.DIRECTOR_V0.DIRECTOR_ENABLED: director_v0.setup( app, diff --git a/services/director/src/simcore_service_director/core/application.py b/services/director/src/simcore_service_director/core/application.py index f9ff1a0391d..0ec5b577a85 100644 --- a/services/director/src/simcore_service_director/core/application.py +++ b/services/director/src/simcore_service_director/core/application.py @@ -4,7 +4,7 @@ from fastapi import FastAPI from servicelib.async_utils import cancel_sequential_workers from servicelib.fastapi.client_session import setup_client_session -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import setup_tracing from .._meta import ( API_VERSION, @@ -48,13 +48,13 @@ def create_app(settings: ApplicationSettings) -> FastAPI: assert app.state.settings.API_VERSION == API_VERSION # nosec # PLUGINS SETUP + if app.state.settings.DIRECTOR_TRACING: + setup_tracing(app, app.state.settings.DIRECTOR_TRACING, APP_NAME) + setup_api_routes(app) setup_instrumentation(app) - if app.state.settings.DIRECTOR_TRACING: - initialize_tracing(app, app.state.settings.DIRECTOR_TRACING, APP_NAME) - setup_client_session( app, max_keepalive_connections=settings.DIRECTOR_REGISTRY_CLIENT_MAX_KEEPALIVE_CONNECTIONS, diff --git a/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/application.py b/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/application.py index 83d361a2155..f0984b373fb 100644 --- a/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/application.py +++ b/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/application.py @@ -4,7 +4,7 @@ ) from servicelib.fastapi.openapi import override_fastapi_openapi_method from servicelib.fastapi.profiler import initialize_profiler -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import setup_tracing from .._meta import API_VERSION, API_VTAG, APP_NAME, PROJECT_NAME, SUMMARY from ..api.frontend import initialize_frontend @@ -33,6 +33,9 @@ def create_app(settings: ApplicationSettings | None = None) -> FastAPI: app.state.settings = app_settings assert app.state.settings.API_VERSION == API_VERSION # nosec + if app_settings.DYNAMIC_SCHEDULER_TRACING: + setup_tracing(app, app_settings.DYNAMIC_SCHEDULER_TRACING, APP_NAME) + initialize_rest_api(app) if app_settings.DYNAMIC_SCHEDULER_PROMETHEUS_INSTRUMENTATION_ENABLED: @@ -40,9 +43,6 @@ def create_app(settings: ApplicationSettings | None = None) -> FastAPI: initialize_frontend(app) - if app_settings.DYNAMIC_SCHEDULER_TRACING: - initialize_tracing(app, app_settings.DYNAMIC_SCHEDULER_TRACING, APP_NAME) - if app_settings.DYNAMIC_SCHEDULER_PROFILING: initialize_profiler(app) diff --git a/services/dynamic-sidecar/src/simcore_service_dynamic_sidecar/core/application.py b/services/dynamic-sidecar/src/simcore_service_dynamic_sidecar/core/application.py index ddb26e0e3a7..42827a3d5f7 100644 --- a/services/dynamic-sidecar/src/simcore_service_dynamic_sidecar/core/application.py +++ b/services/dynamic-sidecar/src/simcore_service_dynamic_sidecar/core/application.py @@ -9,7 +9,7 @@ get_common_oas_options, override_fastapi_openapi_method, ) -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import setup_tracing from servicelib.logging_utils import config_all_loggers from simcore_sdk.node_ports_common.exceptions import NodeNotFound @@ -175,6 +175,9 @@ def create_app(): app.state.application_health = ApplicationHealth() application_settings: ApplicationSettings = app.state.settings + if application_settings.DYNAMIC_SIDECAR_TRACING: + setup_tracing(app, application_settings.DYNAMIC_SIDECAR_TRACING, PROJECT_NAME) + setup_rabbitmq(app) setup_rpc_api_routes(app) setup_background_log_fetcher(app) @@ -193,11 +196,6 @@ def create_app(): if application_settings.are_prometheus_metrics_enabled: setup_prometheus_metrics(app) - if application_settings.DYNAMIC_SIDECAR_TRACING: - initialize_tracing( - app, application_settings.DYNAMIC_SIDECAR_TRACING, PROJECT_NAME - ) - # ERROR HANDLERS ------------ app.add_exception_handler( NodeNotFound, diff --git a/services/efs-guardian/src/simcore_service_efs_guardian/core/application.py b/services/efs-guardian/src/simcore_service_efs_guardian/core/application.py index 956a3c891de..217a3d0a1bd 100644 --- a/services/efs-guardian/src/simcore_service_efs_guardian/core/application.py +++ b/services/efs-guardian/src/simcore_service_efs_guardian/core/application.py @@ -1,7 +1,7 @@ import logging from fastapi import FastAPI -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import setup_tracing from .._meta import ( API_VERSION, @@ -43,7 +43,7 @@ def create_app(settings: ApplicationSettings | None = None) -> FastAPI: app.state.settings = app_settings assert app.state.settings.API_VERSION == API_VERSION # nosec if app.state.settings.EFS_GUARDIAN_TRACING: - initialize_tracing(app, app.state.settings.EFS_GUARDIAN_TRACING, APP_NAME) + setup_tracing(app, app.state.settings.EFS_GUARDIAN_TRACING, APP_NAME) # PLUGINS SETUP setup_rabbitmq(app) diff --git a/services/invitations/src/simcore_service_invitations/core/application.py b/services/invitations/src/simcore_service_invitations/core/application.py index 02e0cac84d4..acc5137fbc2 100644 --- a/services/invitations/src/simcore_service_invitations/core/application.py +++ b/services/invitations/src/simcore_service_invitations/core/application.py @@ -3,7 +3,7 @@ setup_prometheus_instrumentation, ) from servicelib.fastapi.openapi import override_fastapi_openapi_method -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import setup_tracing from .._meta import ( API_VERSION, @@ -38,10 +38,10 @@ def create_app(settings: ApplicationSettings | None = None) -> FastAPI: # PLUGINS SETUP setup_api_routes(app) + if app.state.settings.INVITATIONS_TRACING: + setup_tracing(app, app.state.settings.INVITATIONS_TRACING, APP_NAME) if app.state.settings.INVITATIONS_PROMETHEUS_INSTRUMENTATION_ENABLED: setup_prometheus_instrumentation(app) - if app.state.settings.INVITATIONS_TRACING: - initialize_tracing(app, app.state.settings.INVITATIONS_TRACING, APP_NAME) # ERROR HANDLERS exceptions_handlers.setup(app) diff --git a/services/notifications/src/simcore_service_notifications/core/application.py b/services/notifications/src/simcore_service_notifications/core/application.py index 9c1465c9a02..0c59ebf76fb 100644 --- a/services/notifications/src/simcore_service_notifications/core/application.py +++ b/services/notifications/src/simcore_service_notifications/core/application.py @@ -8,7 +8,7 @@ get_common_oas_options, override_fastapi_openapi_method, ) -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import setup_tracing from servicelib.logging_utils import config_all_loggers from .._meta import API_VTAG, APP_NAME, SUMMARY, VERSION @@ -49,14 +49,12 @@ def create_app() -> FastAPI: override_fastapi_openapi_method(app) app.state.settings = settings + if settings.NOTIFICATIONS_TRACING: + setup_tracing(app, settings.NOTIFICATIONS_TRACING, APP_NAME) # pragma: no cover + initialize_rest_api(app) if settings.NOTIFICATIONS_PROMETHEUS_INSTRUMENTATION_ENABLED: initialize_prometheus_instrumentation(app) - if settings.NOTIFICATIONS_TRACING: - initialize_tracing( - app, settings.NOTIFICATIONS_TRACING, APP_NAME - ) # pragma: no cover - return app diff --git a/services/payments/src/simcore_service_payments/core/application.py b/services/payments/src/simcore_service_payments/core/application.py index eb8169f2a80..92429d674db 100644 --- a/services/payments/src/simcore_service_payments/core/application.py +++ b/services/payments/src/simcore_service_payments/core/application.py @@ -3,7 +3,7 @@ setup_prometheus_instrumentation, ) from servicelib.fastapi.openapi import override_fastapi_openapi_method -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import setup_tracing from .._meta import ( API_VERSION, @@ -46,6 +46,9 @@ def create_app(settings: ApplicationSettings | None = None) -> FastAPI: assert app.state.settings.API_VERSION == API_VERSION # nosec # PLUGINS SETUP + if app.state.settings.PAYMENTS_TRACING: + setup_tracing(app, app.state.settings.PAYMENTS_TRACING, APP_NAME) + # API w/ postgres db setup_postgres(app) @@ -70,8 +73,6 @@ def create_app(settings: ApplicationSettings | None = None) -> FastAPI: if app.state.settings.PAYMENTS_PROMETHEUS_INSTRUMENTATION_ENABLED: setup_prometheus_instrumentation(app) - if app.state.settings.PAYMENTS_TRACING: - initialize_tracing(app, app.state.settings.PAYMENTS_TRACING, APP_NAME) # ERROR HANDLERS # ... add here ... diff --git a/services/resource-usage-tracker/src/simcore_service_resource_usage_tracker/core/application.py b/services/resource-usage-tracker/src/simcore_service_resource_usage_tracker/core/application.py index ca07c55f20c..a0c2334321b 100644 --- a/services/resource-usage-tracker/src/simcore_service_resource_usage_tracker/core/application.py +++ b/services/resource-usage-tracker/src/simcore_service_resource_usage_tracker/core/application.py @@ -2,7 +2,7 @@ from fastapi import FastAPI from servicelib.fastapi.openapi import override_fastapi_openapi_method -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import setup_tracing from .._meta import ( API_VERSION, @@ -50,6 +50,12 @@ def create_app(settings: ApplicationSettings) -> FastAPI: assert app.state.settings.API_VERSION == API_VERSION # nosec # PLUGINS SETUP + if app.state.settings.RESOURCE_USAGE_TRACKER_TRACING: + setup_tracing( + app, + app.state.settings.RESOURCE_USAGE_TRACKER_TRACING, + app.state.settings.APP_NAME, + ) setup_api_routes(app) fire_and_forget_setup(app) @@ -66,13 +72,6 @@ def create_app(settings: ApplicationSettings) -> FastAPI: setup_process_message_running_service(app) # Requires Rabbit - if app.state.settings.RESOURCE_USAGE_TRACKER_TRACING: - initialize_tracing( - app, - app.state.settings.RESOURCE_USAGE_TRACKER_TRACING, - app.state.settings.APP_NAME, - ) - # ERROR HANDLERS setup_exception_handlers(app) diff --git a/services/storage/src/simcore_service_storage/core/application.py b/services/storage/src/simcore_service_storage/core/application.py index 4ef671e2a13..7b308a5107a 100644 --- a/services/storage/src/simcore_service_storage/core/application.py +++ b/services/storage/src/simcore_service_storage/core/application.py @@ -17,7 +17,7 @@ ) from servicelib.fastapi.openapi import override_fastapi_openapi_method from servicelib.fastapi.profiler import ProfilerMiddleware -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import setup_tracing from starlette.middleware.base import BaseHTTPMiddleware from .._meta import ( @@ -80,6 +80,9 @@ def create_app(settings: ApplicationSettings) -> FastAPI: # noqa: C901 # STATE app.state.settings = settings + if settings.STORAGE_TRACING: + setup_tracing(app, settings.STORAGE_TRACING, APP_NAME) + setup_db(app) setup_s3(app) setup_client_session(app) @@ -113,8 +116,6 @@ def create_app(settings: ApplicationSettings) -> FastAPI: # noqa: C901 if settings.STORAGE_MONITORING_ENABLED: setup_prometheus_instrumentation(app) - if settings.STORAGE_TRACING: - initialize_tracing(app, settings.STORAGE_TRACING, APP_NAME) async def _on_startup() -> None: if settings.STORAGE_WORKER_MODE: From 3840e07b356047dec97f82f3dc7af6872784c47a Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Fri, 23 May 2025 11:09:06 +0200 Subject: [PATCH 16/24] use lifespan manager approach --- .../src/servicelib/fastapi/tracing.py | 14 +++----- .../tests/fastapi/test_tracing.py | 36 +++++++++++++------ .../core/application.py | 6 ++-- .../core/events.py | 6 +++- 4 files changed, 38 insertions(+), 24 deletions(-) diff --git a/packages/service-library/src/servicelib/fastapi/tracing.py b/packages/service-library/src/servicelib/fastapi/tracing.py index 0fb5a05cb31..a5cac074773 100644 --- a/packages/service-library/src/servicelib/fastapi/tracing.py +++ b/packages/service-library/src/servicelib/fastapi/tracing.py @@ -70,7 +70,7 @@ HAS_AIOPIKA_INSTRUMENTOR = False -def _startup( +def initialize_tracing( app: FastAPI, tracing_settings: TracingSettings, service_name: str ) -> None: if ( @@ -191,7 +191,7 @@ def setup_tracing( app: FastAPI, tracing_settings: TracingSettings, service_name: str ) -> None: - _startup(app, tracing_settings, service_name) + initialize_tracing(app, tracing_settings, service_name) def _on_shutdown() -> None: _shutdown() @@ -200,15 +200,11 @@ def _on_shutdown() -> None: async def tracing_instrumentation_lifespan( - *, app: FastAPI, - state: State, - tracing_settings: TracingSettings, - service_name: str, ) -> AsyncIterator[State]: + # initialize tracing must be called (typically right after the app is created) + assert app # nosec - _startup(app, tracing_settings, service_name) - - yield state + yield {} _shutdown() diff --git a/packages/service-library/tests/fastapi/test_tracing.py b/packages/service-library/tests/fastapi/test_tracing.py index bd88334a2f6..1c071f1c02b 100644 --- a/packages/service-library/tests/fastapi/test_tracing.py +++ b/packages/service-library/tests/fastapi/test_tracing.py @@ -11,7 +11,10 @@ import pytest from fastapi import FastAPI from pydantic import ValidationError -from servicelib.fastapi.tracing import tracing_instrumentation_lifespan +from servicelib.fastapi.tracing import ( + initialize_tracing, + tracing_instrumentation_lifespan, +) from settings_library.tracing import TracingSettings @@ -63,17 +66,21 @@ async def test_valid_tracing_settings( uninstrument_opentelemetry: Iterator[None], ): tracing_settings = TracingSettings() - async for state in tracing_instrumentation_lifespan( + initialize_tracing( app=mocked_app, - state={}, tracing_settings=tracing_settings, service_name="Mock-Openetlemetry-Pytest", + ) + async for state in tracing_instrumentation_lifespan( + app=mocked_app, ): - async for _ in tracing_instrumentation_lifespan( + initialize_tracing( app=mocked_app, - state=state, tracing_settings=tracing_settings, service_name="Mock-Openetlemetry-Pytest", + ) + async for _ in tracing_instrumentation_lifespan( + app=mocked_app, ): pass @@ -103,11 +110,14 @@ async def test_invalid_tracing_settings( app = mocked_app with pytest.raises((BaseException, ValidationError, TypeError)): # noqa: PT012 tracing_settings = TracingSettings() - async for _ in tracing_instrumentation_lifespan( + initialize_tracing( app=app, - state={}, tracing_settings=tracing_settings, service_name="Mock-Openetlemetry-Pytest", + ) + + async for _ in tracing_instrumentation_lifespan( + app=app, ): pass @@ -162,17 +172,21 @@ async def test_tracing_setup_package_detection( importlib.import_module(package_name) tracing_settings = TracingSettings() # Use tracing_instrumentation_lifespan instead of _startup - async for _ in tracing_instrumentation_lifespan( + initialize_tracing( app=mocked_app, - state={}, tracing_settings=tracing_settings, service_name="Mock-Openetlemetry-Pytest", + ) + async for _ in tracing_instrumentation_lifespan( + app=mocked_app, ): # idempotency: call again - async for _ in tracing_instrumentation_lifespan( + initialize_tracing( app=mocked_app, - state={}, tracing_settings=tracing_settings, service_name="Mock-Openetlemetry-Pytest", + ) + async for _ in tracing_instrumentation_lifespan( + app=mocked_app, ): pass diff --git a/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/application.py b/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/application.py index f0984b373fb..cc0e7b8cbd3 100644 --- a/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/application.py +++ b/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/application.py @@ -4,7 +4,7 @@ ) from servicelib.fastapi.openapi import override_fastapi_openapi_method from servicelib.fastapi.profiler import initialize_profiler -from servicelib.fastapi.tracing import setup_tracing +from servicelib.fastapi.tracing import initialize_tracing from .._meta import API_VERSION, API_VTAG, APP_NAME, PROJECT_NAME, SUMMARY from ..api.frontend import initialize_frontend @@ -25,7 +25,7 @@ def create_app(settings: ApplicationSettings | None = None) -> FastAPI: "/doc" if app_settings.DYNAMIC_SCHEDULER_SWAGGER_API_DOC_ENABLED else None ), redoc_url=None, - lifespan=events.create_app_lifespan(), + lifespan=events.create_app_lifespan(settings=app_settings), ) override_fastapi_openapi_method(app) @@ -34,7 +34,7 @@ def create_app(settings: ApplicationSettings | None = None) -> FastAPI: assert app.state.settings.API_VERSION == API_VERSION # nosec if app_settings.DYNAMIC_SCHEDULER_TRACING: - setup_tracing(app, app_settings.DYNAMIC_SCHEDULER_TRACING, APP_NAME) + initialize_tracing(app, app_settings.DYNAMIC_SCHEDULER_TRACING, APP_NAME) initialize_rest_api(app) diff --git a/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/events.py b/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/events.py index 14745c70731..f3136eecda3 100644 --- a/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/events.py +++ b/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/events.py @@ -13,6 +13,7 @@ from servicelib.fastapi.postgres_lifespan import ( create_postgres_database_input_state, ) +from servicelib.fastapi.tracing import tracing_instrumentation_lifespan from .._meta import APP_FINISHED_BANNER_MSG, APP_STARTED_BANNER_MSG from ..api.rpc.routes import rpc_api_routes_lifespan @@ -50,10 +51,13 @@ async def _settings_lifespan(app: FastAPI) -> AsyncIterator[State]: } -def create_app_lifespan() -> LifespanManager: +def create_app_lifespan(settings: ApplicationSettings) -> LifespanManager: app_lifespan = LifespanManager() app_lifespan.add(_settings_lifespan) + if settings.DYNAMIC_SCHEDULER_TRACING: + app_lifespan.add(tracing_instrumentation_lifespan) + app_lifespan.include(repository_lifespan_manager) app_lifespan.add(director_v2_lifespan) app_lifespan.add(director_v0_lifespan) From 90c14eabc1cf0cdd93fb792d01f8ea28e4f29179 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Fri, 23 May 2025 11:10:02 +0200 Subject: [PATCH 17/24] disable pylint bare expose --- .../src/servicelib/fastapi/tracing.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/service-library/src/servicelib/fastapi/tracing.py b/packages/service-library/src/servicelib/fastapi/tracing.py index a5cac074773..e119afaf807 100644 --- a/packages/service-library/src/servicelib/fastapi/tracing.py +++ b/packages/service-library/src/servicelib/fastapi/tracing.py @@ -154,32 +154,32 @@ def _shutdown() -> None: if HAS_AIOPG: try: AiopgInstrumentor().uninstrument() - except Exception: + except Exception: # pylint:disable=bare-except _logger.exception("Failed to uninstrument AiopgInstrumentor") if HAS_AIOPIKA_INSTRUMENTOR: try: AioPikaInstrumentor().uninstrument() - except Exception: + except Exception: # pylint:disable=bare-except _logger.exception("Failed to uninstrument AioPikaInstrumentor") if HAS_ASYNCPG: try: AsyncPGInstrumentor().uninstrument() - except Exception: + except Exception: # pylint:disable=bare-except _logger.exception("Failed to uninstrument AsyncPGInstrumentor") if HAS_REDIS: try: RedisInstrumentor().uninstrument() - except Exception: + except Exception: # pylint:disable=bare-except _logger.exception("Failed to uninstrument RedisInstrumentor") if HAS_BOTOCORE: try: BotocoreInstrumentor().uninstrument() - except Exception: + except Exception: # pylint:disable=bare-except _logger.exception("Failed to uninstrument BotocoreInstrumentor") if HAS_REQUESTS: try: RequestsInstrumentor().uninstrument() - except Exception: + except Exception: # pylint:disable=bare-except _logger.exception("Failed to uninstrument RequestsInstrumentor") From c5e4c1b67afcf9138474eddd7dd156fd2ddf68e6 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Fri, 23 May 2025 11:32:37 +0200 Subject: [PATCH 18/24] add getter for tracing instrumentation lifespan --- .../src/servicelib/fastapi/tracing.py | 33 ++++++++----- .../tests/fastapi/test_tracing.py | 47 +++++-------------- .../core/application.py | 4 +- .../core/events.py | 11 +++-- 4 files changed, 42 insertions(+), 53 deletions(-) diff --git a/packages/service-library/src/servicelib/fastapi/tracing.py b/packages/service-library/src/servicelib/fastapi/tracing.py index e119afaf807..94298163144 100644 --- a/packages/service-library/src/servicelib/fastapi/tracing.py +++ b/packages/service-library/src/servicelib/fastapi/tracing.py @@ -70,9 +70,7 @@ HAS_AIOPIKA_INSTRUMENTOR = False -def initialize_tracing( - app: FastAPI, tracing_settings: TracingSettings, service_name: str -) -> None: +def _startup(tracing_settings: TracingSettings, service_name: str) -> None: if ( not tracing_settings.TRACING_OPENTELEMETRY_COLLECTOR_ENDPOINT and not tracing_settings.TRACING_OPENTELEMETRY_COLLECTOR_PORT @@ -102,8 +100,6 @@ def initialize_tracing( otlp_exporter = OTLPSpanExporterHTTP(endpoint=tracing_destination) span_processor = BatchSpanProcessor(otlp_exporter) global_tracer_provider.add_span_processor(span_processor) - # Instrument FastAPI - FastAPIInstrumentor().instrument_app(app) if HAS_AIOPG: with log_context( @@ -191,20 +187,31 @@ def setup_tracing( app: FastAPI, tracing_settings: TracingSettings, service_name: str ) -> None: - initialize_tracing(app, tracing_settings, service_name) + _startup(tracing_settings=tracing_settings, service_name=service_name) + + def _on_startup() -> None: + FastAPIInstrumentor().instrument_app(app) def _on_shutdown() -> None: _shutdown() + app.add_event_handler("startup", _on_startup) app.add_event_handler("shutdown", _on_shutdown) -async def tracing_instrumentation_lifespan( - app: FastAPI, -) -> AsyncIterator[State]: - # initialize tracing must be called (typically right after the app is created) - assert app # nosec +def get_tracing_instrumentation_lifespan( + tracing_settings: TracingSettings, service_name: str +): + + _startup(tracing_settings=tracing_settings, service_name=service_name) - yield {} + async def tracing_instrumentation_lifespan( + app: FastAPI, + ) -> AsyncIterator[State]: + FastAPIInstrumentor().instrument_app(app) + + yield {} + + _shutdown() - _shutdown() + return tracing_instrumentation_lifespan diff --git a/packages/service-library/tests/fastapi/test_tracing.py b/packages/service-library/tests/fastapi/test_tracing.py index 1c071f1c02b..8e58dfd75dd 100644 --- a/packages/service-library/tests/fastapi/test_tracing.py +++ b/packages/service-library/tests/fastapi/test_tracing.py @@ -12,8 +12,7 @@ from fastapi import FastAPI from pydantic import ValidationError from servicelib.fastapi.tracing import ( - initialize_tracing, - tracing_instrumentation_lifespan, + get_tracing_instrumentation_lifespan, ) from settings_library.tracing import TracingSettings @@ -66,22 +65,14 @@ async def test_valid_tracing_settings( uninstrument_opentelemetry: Iterator[None], ): tracing_settings = TracingSettings() - initialize_tracing( - app=mocked_app, + async for _ in get_tracing_instrumentation_lifespan( tracing_settings=tracing_settings, service_name="Mock-Openetlemetry-Pytest", - ) - async for state in tracing_instrumentation_lifespan( - app=mocked_app, - ): - initialize_tracing( - app=mocked_app, + )(app=mocked_app): + async for _ in get_tracing_instrumentation_lifespan( tracing_settings=tracing_settings, service_name="Mock-Openetlemetry-Pytest", - ) - async for _ in tracing_instrumentation_lifespan( - app=mocked_app, - ): + )(app=mocked_app): pass @@ -110,15 +101,10 @@ async def test_invalid_tracing_settings( app = mocked_app with pytest.raises((BaseException, ValidationError, TypeError)): # noqa: PT012 tracing_settings = TracingSettings() - initialize_tracing( - app=app, + async for _ in get_tracing_instrumentation_lifespan( tracing_settings=tracing_settings, service_name="Mock-Openetlemetry-Pytest", - ) - - async for _ in tracing_instrumentation_lifespan( - app=app, - ): + )(app=app): pass @@ -171,22 +157,13 @@ async def test_tracing_setup_package_detection( package_name = manage_package importlib.import_module(package_name) tracing_settings = TracingSettings() - # Use tracing_instrumentation_lifespan instead of _startup - initialize_tracing( - app=mocked_app, + async for _ in get_tracing_instrumentation_lifespan( tracing_settings=tracing_settings, service_name="Mock-Openetlemetry-Pytest", - ) - async for _ in tracing_instrumentation_lifespan( - app=mocked_app, - ): - # idempotency: call again - initialize_tracing( - app=mocked_app, + )(app=mocked_app): + # idempotency check + async for _ in get_tracing_instrumentation_lifespan( tracing_settings=tracing_settings, service_name="Mock-Openetlemetry-Pytest", - ) - async for _ in tracing_instrumentation_lifespan( - app=mocked_app, - ): + )(app=mocked_app): pass diff --git a/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/application.py b/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/application.py index cc0e7b8cbd3..8f57af4714c 100644 --- a/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/application.py +++ b/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/application.py @@ -4,7 +4,7 @@ ) from servicelib.fastapi.openapi import override_fastapi_openapi_method from servicelib.fastapi.profiler import initialize_profiler -from servicelib.fastapi.tracing import initialize_tracing +from servicelib.fastapi.tracing import _startup from .._meta import API_VERSION, API_VTAG, APP_NAME, PROJECT_NAME, SUMMARY from ..api.frontend import initialize_frontend @@ -34,7 +34,7 @@ def create_app(settings: ApplicationSettings | None = None) -> FastAPI: assert app.state.settings.API_VERSION == API_VERSION # nosec if app_settings.DYNAMIC_SCHEDULER_TRACING: - initialize_tracing(app, app_settings.DYNAMIC_SCHEDULER_TRACING, APP_NAME) + _startup(app, app_settings.DYNAMIC_SCHEDULER_TRACING, APP_NAME) initialize_rest_api(app) diff --git a/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/events.py b/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/events.py index f3136eecda3..492834a99e3 100644 --- a/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/events.py +++ b/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/events.py @@ -13,9 +13,9 @@ from servicelib.fastapi.postgres_lifespan import ( create_postgres_database_input_state, ) -from servicelib.fastapi.tracing import tracing_instrumentation_lifespan +from servicelib.fastapi.tracing import get_tracing_instrumentation_lifespan -from .._meta import APP_FINISHED_BANNER_MSG, APP_STARTED_BANNER_MSG +from .._meta import APP_FINISHED_BANNER_MSG, APP_NAME, APP_STARTED_BANNER_MSG from ..api.rpc.routes import rpc_api_routes_lifespan from ..repository.events import repository_lifespan_manager from ..services.catalog import catalog_lifespan @@ -56,7 +56,12 @@ def create_app_lifespan(settings: ApplicationSettings) -> LifespanManager: app_lifespan.add(_settings_lifespan) if settings.DYNAMIC_SCHEDULER_TRACING: - app_lifespan.add(tracing_instrumentation_lifespan) + app_lifespan.add( + get_tracing_instrumentation_lifespan( + tracing_settings=settings.DYNAMIC_SCHEDULER_TRACING, + service_name=APP_NAME, + ) + ) app_lifespan.include(repository_lifespan_manager) app_lifespan.add(director_v2_lifespan) From dabc522d11feb68a4cfeb8e797f465240d3b6eb5 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Fri, 23 May 2025 11:33:44 +0200 Subject: [PATCH 19/24] fix pylint --- .../src/servicelib/fastapi/tracing.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/service-library/src/servicelib/fastapi/tracing.py b/packages/service-library/src/servicelib/fastapi/tracing.py index 94298163144..87d7d5efd5f 100644 --- a/packages/service-library/src/servicelib/fastapi/tracing.py +++ b/packages/service-library/src/servicelib/fastapi/tracing.py @@ -150,32 +150,32 @@ def _shutdown() -> None: if HAS_AIOPG: try: AiopgInstrumentor().uninstrument() - except Exception: # pylint:disable=bare-except + except Exception: # pylint:disable=broad-exception-caught _logger.exception("Failed to uninstrument AiopgInstrumentor") if HAS_AIOPIKA_INSTRUMENTOR: try: AioPikaInstrumentor().uninstrument() - except Exception: # pylint:disable=bare-except + except Exception: # pylint:disable=broad-exception-caught _logger.exception("Failed to uninstrument AioPikaInstrumentor") if HAS_ASYNCPG: try: AsyncPGInstrumentor().uninstrument() - except Exception: # pylint:disable=bare-except + except Exception: # pylint:disable=broad-exception-caught _logger.exception("Failed to uninstrument AsyncPGInstrumentor") if HAS_REDIS: try: RedisInstrumentor().uninstrument() - except Exception: # pylint:disable=bare-except + except Exception: # pylint:disable=broad-exception-caught _logger.exception("Failed to uninstrument RedisInstrumentor") if HAS_BOTOCORE: try: BotocoreInstrumentor().uninstrument() - except Exception: # pylint:disable=bare-except + except Exception: # pylint:disable=broad-exception-caught _logger.exception("Failed to uninstrument BotocoreInstrumentor") if HAS_REQUESTS: try: RequestsInstrumentor().uninstrument() - except Exception: # pylint:disable=bare-except + except Exception: # pylint:disable=broad-exception-caught _logger.exception("Failed to uninstrument RequestsInstrumentor") From e7ae16761ce99198649c0d00e09dad56a55238d8 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Fri, 23 May 2025 11:42:30 +0200 Subject: [PATCH 20/24] remove call to private method --- .../simcore_service_dynamic_scheduler/core/application.py | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/application.py b/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/application.py index 8f57af4714c..407be0711d8 100644 --- a/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/application.py +++ b/services/dynamic-scheduler/src/simcore_service_dynamic_scheduler/core/application.py @@ -4,9 +4,8 @@ ) from servicelib.fastapi.openapi import override_fastapi_openapi_method from servicelib.fastapi.profiler import initialize_profiler -from servicelib.fastapi.tracing import _startup -from .._meta import API_VERSION, API_VTAG, APP_NAME, PROJECT_NAME, SUMMARY +from .._meta import API_VERSION, API_VTAG, PROJECT_NAME, SUMMARY from ..api.frontend import initialize_frontend from ..api.rest.routes import initialize_rest_api from . import events @@ -33,9 +32,6 @@ def create_app(settings: ApplicationSettings | None = None) -> FastAPI: app.state.settings = app_settings assert app.state.settings.API_VERSION == API_VERSION # nosec - if app_settings.DYNAMIC_SCHEDULER_TRACING: - _startup(app, app_settings.DYNAMIC_SCHEDULER_TRACING, APP_NAME) - initialize_rest_api(app) if app_settings.DYNAMIC_SCHEDULER_PROMETHEUS_INSTRUMENTATION_ENABLED: From 9b7bd1a65ad5c4a4def683d5426d4cffa40252d8 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Fri, 23 May 2025 11:55:01 +0200 Subject: [PATCH 21/24] add lifespan management to tracing instrumentation in aiohttp --- .../src/servicelib/aiohttp/tracing.py | 43 ++++++++++++++++++- .../tests/aiohttp/test_tracing.py | 28 ++++++------ .../src/simcore_service_webserver/tracing.py | 12 +++--- 3 files changed, 63 insertions(+), 20 deletions(-) diff --git a/packages/service-library/src/servicelib/aiohttp/tracing.py b/packages/service-library/src/servicelib/aiohttp/tracing.py index e2cbd97cb47..70f3eac88b9 100644 --- a/packages/service-library/src/servicelib/aiohttp/tracing.py +++ b/packages/service-library/src/servicelib/aiohttp/tracing.py @@ -1,6 +1,7 @@ """Adds aiohttp middleware for tracing using opentelemetry instrumentation.""" import logging +from collections.abc import AsyncIterator, Callable from aiohttp import web from opentelemetry import trace @@ -50,7 +51,7 @@ HAS_AIO_PIKA = False -def setup_tracing( +def _startup( app: web.Application, tracing_settings: TracingSettings, service_name: str, @@ -143,3 +144,43 @@ def setup_tracing( msg="Attempting to add aio_pika opentelemetry autoinstrumentation...", ): AioPikaInstrumentor().instrument() + + +def _shutdown() -> None: + """Uninstruments all opentelemetry instrumentors that were instrumented.""" + try: + AioHttpClientInstrumentor().uninstrument() + except Exception: + _logger.exception("Failed to uninstrument AioHttpClientInstrumentor") + if HAS_AIOPG: + try: + AiopgInstrumentor().uninstrument() + except Exception: + _logger.exception("Failed to uninstrument AiopgInstrumentor") + if HAS_BOTOCORE: + try: + BotocoreInstrumentor().uninstrument() + except Exception: + _logger.exception("Failed to uninstrument BotocoreInstrumentor") + if HAS_REQUESTS: + try: + RequestsInstrumentor().uninstrument() + except Exception: + _logger.exception("Failed to uninstrument RequestsInstrumentor") + if HAS_AIO_PIKA: + try: + AioPikaInstrumentor().uninstrument() + except Exception: + _logger.exception("Failed to uninstrument AioPikaInstrumentor") + + +def get_tracing_lifespan( + app: web.Application, tracing_settings: TracingSettings, service_name: str +) -> Callable[[web.Application], AsyncIterator]: + _startup(app=app, tracing_settings=tracing_settings, service_name=service_name) + + async def tracing_lifespan(app: web.Application): + yield + _shutdown() + + return tracing_lifespan diff --git a/packages/service-library/tests/aiohttp/test_tracing.py b/packages/service-library/tests/aiohttp/test_tracing.py index 7c62fc56ada..2621751f344 100644 --- a/packages/service-library/tests/aiohttp/test_tracing.py +++ b/packages/service-library/tests/aiohttp/test_tracing.py @@ -11,7 +11,7 @@ from aiohttp import web from aiohttp.test_utils import TestClient from pydantic import ValidationError -from servicelib.aiohttp.tracing import setup_tracing +from servicelib.aiohttp.tracing import get_tracing_lifespan from settings_library.tracing import TracingSettings @@ -59,11 +59,10 @@ async def test_valid_tracing_settings( app = web.Application() service_name = "simcore_service_webserver" tracing_settings = TracingSettings() - setup_tracing( - app, - service_name=service_name, - tracing_settings=tracing_settings, - ) + async for _ in get_tracing_lifespan( + app, service_name=service_name, tracing_settings=tracing_settings + )(app): + pass @pytest.mark.parametrize( @@ -137,14 +136,15 @@ async def test_tracing_setup_package_detection( app = web.Application() service_name = "simcore_service_webserver" tracing_settings = TracingSettings() - setup_tracing( - app, - service_name=service_name, - tracing_settings=tracing_settings, - ) - # idempotency - setup_tracing( + async for _ in get_tracing_lifespan( app, service_name=service_name, tracing_settings=tracing_settings, - ) + )(app): + # idempotency + async for _ in get_tracing_lifespan( + app, + service_name=service_name, + tracing_settings=tracing_settings, + )(app): + pass diff --git a/services/web/server/src/simcore_service_webserver/tracing.py b/services/web/server/src/simcore_service_webserver/tracing.py index d07757106e8..ffbb8f404a0 100644 --- a/services/web/server/src/simcore_service_webserver/tracing.py +++ b/services/web/server/src/simcore_service_webserver/tracing.py @@ -2,7 +2,7 @@ from aiohttp import web from servicelib.aiohttp.application_setup import ModuleCategory, app_module_setup -from servicelib.aiohttp.tracing import setup_tracing +from servicelib.aiohttp.tracing import get_tracing_lifespan from settings_library.tracing import TracingSettings from ._meta import APP_NAME @@ -23,8 +23,10 @@ def get_plugin_settings(app: web.Application) -> TracingSettings: ) def setup_app_tracing(app: web.Application): tracing_settings: TracingSettings = get_plugin_settings(app) - setup_tracing( - app, - tracing_settings=tracing_settings, - service_name=APP_NAME, + app.cleanup_ctx.append( + get_tracing_lifespan( + app, + tracing_settings=tracing_settings, + service_name=APP_NAME, + ) ) From bd817532df55e74e2b01841b5d0e120a67a1d426 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Fri, 23 May 2025 12:24:34 +0200 Subject: [PATCH 22/24] make pylint happy --- .../service-library/src/servicelib/aiohttp/tracing.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/service-library/src/servicelib/aiohttp/tracing.py b/packages/service-library/src/servicelib/aiohttp/tracing.py index 70f3eac88b9..ed04d88b9fd 100644 --- a/packages/service-library/src/servicelib/aiohttp/tracing.py +++ b/packages/service-library/src/servicelib/aiohttp/tracing.py @@ -150,27 +150,27 @@ def _shutdown() -> None: """Uninstruments all opentelemetry instrumentors that were instrumented.""" try: AioHttpClientInstrumentor().uninstrument() - except Exception: + except Exception: # pylint:disable=broad-exception-caught _logger.exception("Failed to uninstrument AioHttpClientInstrumentor") if HAS_AIOPG: try: AiopgInstrumentor().uninstrument() - except Exception: + except Exception: # pylint:disable=broad-exception-caught _logger.exception("Failed to uninstrument AiopgInstrumentor") if HAS_BOTOCORE: try: BotocoreInstrumentor().uninstrument() - except Exception: + except Exception: # pylint:disable=broad-exception-caught _logger.exception("Failed to uninstrument BotocoreInstrumentor") if HAS_REQUESTS: try: RequestsInstrumentor().uninstrument() - except Exception: + except Exception: # pylint:disable=broad-exception-caught _logger.exception("Failed to uninstrument RequestsInstrumentor") if HAS_AIO_PIKA: try: AioPikaInstrumentor().uninstrument() - except Exception: + except Exception: # pylint:disable=broad-exception-caught _logger.exception("Failed to uninstrument AioPikaInstrumentor") From 6466494420022b590c68ec61573852d40658d914 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Fri, 23 May 2025 12:29:52 +0200 Subject: [PATCH 23/24] assert app --- packages/service-library/src/servicelib/aiohttp/tracing.py | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/service-library/src/servicelib/aiohttp/tracing.py b/packages/service-library/src/servicelib/aiohttp/tracing.py index ed04d88b9fd..1e41aab20f0 100644 --- a/packages/service-library/src/servicelib/aiohttp/tracing.py +++ b/packages/service-library/src/servicelib/aiohttp/tracing.py @@ -180,6 +180,7 @@ def get_tracing_lifespan( _startup(app=app, tracing_settings=tracing_settings, service_name=service_name) async def tracing_lifespan(app: web.Application): + assert app # nosec yield _shutdown() From 845840406b2b47d79c73d9a5027d2f44dc8bf094 Mon Sep 17 00:00:00 2001 From: Mads Bisgaard Date: Fri, 23 May 2025 13:40:00 +0200 Subject: [PATCH 24/24] ensure lifespan manager works for fastapi --- .../service-library/src/servicelib/fastapi/tracing.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/packages/service-library/src/servicelib/fastapi/tracing.py b/packages/service-library/src/servicelib/fastapi/tracing.py index 87d7d5efd5f..79247746656 100644 --- a/packages/service-library/src/servicelib/fastapi/tracing.py +++ b/packages/service-library/src/servicelib/fastapi/tracing.py @@ -101,6 +101,7 @@ def _startup(tracing_settings: TracingSettings, service_name: str) -> None: span_processor = BatchSpanProcessor(otlp_exporter) global_tracer_provider.add_span_processor(span_processor) + FastAPIInstrumentor().instrument() if HAS_AIOPG: with log_context( _logger, @@ -147,6 +148,7 @@ def _startup(tracing_settings: TracingSettings, service_name: str) -> None: def _shutdown() -> None: """Uninstruments all opentelemetry instrumentors that were instrumented.""" + FastAPIInstrumentor().uninstrument() if HAS_AIOPG: try: AiopgInstrumentor().uninstrument() @@ -189,13 +191,9 @@ def setup_tracing( _startup(tracing_settings=tracing_settings, service_name=service_name) - def _on_startup() -> None: - FastAPIInstrumentor().instrument_app(app) - def _on_shutdown() -> None: _shutdown() - app.add_event_handler("startup", _on_startup) app.add_event_handler("shutdown", _on_shutdown) @@ -208,7 +206,7 @@ def get_tracing_instrumentation_lifespan( async def tracing_instrumentation_lifespan( app: FastAPI, ) -> AsyncIterator[State]: - FastAPIInstrumentor().instrument_app(app) + assert app # nosec yield {}