Skip to content

Commit 405fa86

Browse files
committed
further propagate tracing_data
1 parent 33e2023 commit 405fa86

File tree

10 files changed

+72
-35
lines changed

10 files changed

+72
-35
lines changed

services/api-server/src/simcore_service_api_server/utils/client_base.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import httpx
66
from fastapi import FastAPI
77
from httpx import AsyncClient, Timeout
8-
from servicelib.fastapi.tracing import setup_httpx_client_tracing
8+
from servicelib.fastapi.tracing import get_tracing_data, setup_httpx_client_tracing
99
from settings_library.tracing import TracingSettings
1010

1111
from .app_data import AppDataMixin
@@ -60,7 +60,10 @@ def setup_client_instance(
6060
timeout=Timeout(_DEFAULT_BASE_SERVICE_CLIENT_API_TIMEOUT_SECONDS),
6161
)
6262
if tracing_settings:
63-
setup_httpx_client_tracing(client)
63+
setup_httpx_client_tracing(
64+
client,
65+
tracing_data=get_tracing_data(app, tracing_settings=tracing_settings),
66+
)
6467

6568
# events
6669
def _create_instance() -> None:

services/catalog/src/simcore_service_catalog/clients/director.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
from models_library.services_metadata_published import ServiceMetaDataPublished
1616
from models_library.services_types import ServiceKey, ServiceVersion
1717
from pydantic import NonNegativeInt, TypeAdapter
18-
from servicelib.fastapi.tracing import setup_httpx_client_tracing
18+
from servicelib.fastapi.tracing import get_tracing_data, setup_httpx_client_tracing
1919
from servicelib.logging_utils import log_catch, log_context
2020
from starlette import status
2121
from tenacity.asyncio import AsyncRetrying
@@ -146,7 +146,12 @@ def __init__(self, base_url: str, app: FastAPI):
146146
timeout=settings.CATALOG_CLIENT_REQUEST.HTTP_CLIENT_REQUEST_TOTAL_TIMEOUT,
147147
)
148148
if settings.CATALOG_TRACING:
149-
setup_httpx_client_tracing(self.client)
149+
setup_httpx_client_tracing(
150+
self.client,
151+
tracing_data=get_tracing_data(
152+
app=app, tracing_settings=settings.CATALOG_TRACING
153+
),
154+
)
150155

151156
assert settings.CATALOG_DIRECTOR # nosec
152157
self.vtag = settings.CATALOG_DIRECTOR.DIRECTOR_VTAG

services/director-v2/src/simcore_service_director_v2/modules/catalog.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
from models_library.services_resources import ServiceResourcesDict
1212
from models_library.users import UserID
1313
from pydantic import TypeAdapter
14-
from servicelib.fastapi.tracing import setup_httpx_client_tracing
14+
from servicelib.fastapi.tracing import get_tracing_data, setup_httpx_client_tracing
1515
from settings_library.catalog import CatalogSettings
1616
from settings_library.tracing import TracingSettings
1717

@@ -35,7 +35,10 @@ async def on_startup() -> None:
3535
timeout=app.state.settings.CLIENT_REQUEST.HTTP_CLIENT_REQUEST_TOTAL_TIMEOUT,
3636
)
3737
if tracing_settings:
38-
setup_httpx_client_tracing(client=client)
38+
setup_httpx_client_tracing(
39+
client=client,
40+
tracing_data=get_tracing_data(app, tracing_settings=tracing_settings),
41+
)
3942

4043
CatalogClient.create(
4144
app,

services/director-v2/src/simcore_service_director_v2/modules/director_v0.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
from models_library.projects import ProjectID
1414
from models_library.projects_nodes_io import NodeID
1515
from models_library.users import UserID
16-
from servicelib.fastapi.tracing import setup_httpx_client_tracing
16+
from servicelib.fastapi.tracing import get_tracing_data, setup_httpx_client_tracing
1717
from servicelib.logging_utils import log_decorator
1818
from settings_library.director_v0 import DirectorV0Settings
1919
from settings_library.tracing import TracingSettings
@@ -40,7 +40,10 @@ def on_startup() -> None:
4040
timeout=app.state.settings.CLIENT_REQUEST.HTTP_CLIENT_REQUEST_TOTAL_TIMEOUT,
4141
)
4242
if tracing_settings:
43-
setup_httpx_client_tracing(client=client)
43+
setup_httpx_client_tracing(
44+
client=client,
45+
tracing_data=get_tracing_data(app, tracing_settings=tracing_settings),
46+
)
4447
DirectorV0Client.create(
4548
app,
4649
client=client,

services/director-v2/src/simcore_service_director_v2/modules/dynamic_services.py

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,11 @@
1-
""" Module that takes care of communications with dynamic services v0
2-
3-
4-
"""
1+
"""Module that takes care of communications with dynamic services v0"""
52

63
import logging
74
from dataclasses import dataclass
85

96
import httpx
107
from fastapi import FastAPI
11-
from servicelib.fastapi.tracing import setup_httpx_client_tracing
8+
from servicelib.fastapi.tracing import get_tracing_data, setup_httpx_client_tracing
129
from settings_library.tracing import TracingSettings
1310

1411
from ..utils.client_decorators import handle_errors, handle_retry
@@ -22,7 +19,12 @@ def on_startup() -> None:
2219
timeout=app.state.settings.CLIENT_REQUEST.HTTP_CLIENT_REQUEST_TOTAL_TIMEOUT
2320
)
2421
if tracing_settings:
25-
setup_httpx_client_tracing(client=client)
22+
setup_httpx_client_tracing(
23+
client=client,
24+
tracing_data=get_tracing_data(
25+
app=app, tracing_settings=tracing_settings
26+
),
27+
)
2628
ServicesClient.create(
2729
app,
2830
client=client,

services/director-v2/src/simcore_service_director_v2/modules/resource_usage_tracker_client.py

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
""" Interface to communicate with the resource usage tracker
2-
"""
1+
"""Interface to communicate with the resource usage tracker"""
32

43
import contextlib
54
import logging
@@ -23,7 +22,7 @@
2322
)
2423
from models_library.services import ServiceKey, ServiceVersion
2524
from models_library.wallets import WalletID
26-
from servicelib.fastapi.tracing import setup_httpx_client_tracing
25+
from servicelib.fastapi.tracing import get_tracing_data, setup_httpx_client_tracing
2726

2827
from ..core.errors import PricingPlanUnitNotFoundError
2928
from ..core.settings import AppSettings
@@ -37,12 +36,19 @@ class ResourceUsageTrackerClient:
3736
exit_stack: contextlib.AsyncExitStack
3837

3938
@classmethod
40-
def create(cls, settings: AppSettings) -> "ResourceUsageTrackerClient":
39+
def create(
40+
cls, app: FastAPI, settings: AppSettings
41+
) -> "ResourceUsageTrackerClient":
4142
client = httpx.AsyncClient(
4243
base_url=settings.DIRECTOR_V2_RESOURCE_USAGE_TRACKER.api_base_url,
4344
)
4445
if settings.DIRECTOR_V2_TRACING:
45-
setup_httpx_client_tracing(client=client)
46+
setup_httpx_client_tracing(
47+
client=client,
48+
tracing_data=get_tracing_data(
49+
app=app, tracing_settings=settings.DIRECTOR_V2_TRACING
50+
),
51+
)
4652
exit_stack = contextlib.AsyncExitStack()
4753

4854
return cls(client=client, exit_stack=exit_stack)
@@ -166,7 +172,7 @@ def setup(cls, app: FastAPI):
166172
assert not hasattr(app.state, "resource_usage_api") # nosec
167173
app_settings: AppSettings = app.state.settings
168174

169-
app.state.resource_usage_api = api = cls.create(app_settings)
175+
app.state.resource_usage_api = api = cls.create(app, app_settings)
170176

171177
async def on_startup():
172178
await api.start()

services/director-v2/src/simcore_service_director_v2/modules/storage.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,12 @@
1-
""" Module that takes care of communications with director v0 service
1+
"""Module that takes care of communications with director v0 service"""
22

3-
4-
"""
53
import logging
64
from dataclasses import dataclass
75

86
import httpx
97
from fastapi import FastAPI, HTTPException
108
from models_library.users import UserID
11-
from servicelib.fastapi.tracing import setup_httpx_client_tracing
9+
from servicelib.fastapi.tracing import get_tracing_data, setup_httpx_client_tracing
1210
from servicelib.logging_utils import log_decorator
1311
from settings_library.s3 import S3Settings
1412
from settings_library.storage import StorageSettings
@@ -40,7 +38,10 @@ def on_startup() -> None:
4038
timeout=app.state.settings.CLIENT_REQUEST.HTTP_CLIENT_REQUEST_TOTAL_TIMEOUT,
4139
)
4240
if tracing_settings:
43-
setup_httpx_client_tracing(client=client)
41+
setup_httpx_client_tracing(
42+
client=client,
43+
tracing_data=get_tracing_data(app, tracing_settings=tracing_settings),
44+
)
4445
StorageClient.create(
4546
app,
4647
client=client,

services/payments/src/simcore_service_payments/services/payments_gateway.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
""" Interface to communicate with the payment's gateway
1+
"""Interface to communicate with the payment's gateway
22
33
- httpx client with base_url to PAYMENTS_GATEWAY_URL
44
- Fake gateway service in services/payments/scripts/example_payment_gateway.py
@@ -25,7 +25,7 @@
2525
HealthMixinMixin,
2626
)
2727
from servicelib.fastapi.httpx_utils import to_curl_command
28-
from servicelib.fastapi.tracing import setup_httpx_client_tracing
28+
from servicelib.fastapi.tracing import get_tracing_data, setup_httpx_client_tracing
2929

3030
from ..core.settings import ApplicationSettings
3131
from ..models.payments_gateway import (
@@ -216,6 +216,11 @@ def setup_payments_gateway(app: FastAPI):
216216
),
217217
)
218218
if settings.PAYMENTS_TRACING:
219-
setup_httpx_client_tracing(api.client)
219+
setup_httpx_client_tracing(
220+
api.client,
221+
tracing_data=get_tracing_data(
222+
app, tracing_settings=settings.PAYMENTS_TRACING
223+
),
224+
)
220225
api.attach_lifespan_to(app)
221226
api.set_to_app_state(app)

services/payments/src/simcore_service_payments/services/resource_usage_tracker.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1-
""" Interface to communicate with the Resource Usage Tracker (RUT)
1+
"""Interface to communicate with the Resource Usage Tracker (RUT)
22
33
- httpx client with base_url to PAYMENTS_RESOURCE_USAGE_TRACKER
44
55
"""
66

7-
87
import logging
98
from datetime import datetime
109
from decimal import Decimal
@@ -25,7 +24,7 @@
2524
BaseHTTPApi,
2625
HealthMixinMixin,
2726
)
28-
from servicelib.fastapi.tracing import setup_httpx_client_tracing
27+
from servicelib.fastapi.tracing import get_tracing_data, setup_httpx_client_tracing
2928

3029
from ..core.settings import ApplicationSettings
3130

@@ -75,6 +74,11 @@ def setup_resource_usage_tracker(app: FastAPI):
7574
base_url=settings.PAYMENTS_RESOURCE_USAGE_TRACKER.base_url,
7675
)
7776
if settings.PAYMENTS_TRACING:
78-
setup_httpx_client_tracing(api.client)
77+
setup_httpx_client_tracing(
78+
api.client,
79+
tracing_data=get_tracing_data(
80+
app, tracing_settings=settings.PAYMENTS_TRACING
81+
),
82+
)
7983
api.set_to_app_state(app)
8084
api.attach_lifespan_to(app)

services/payments/src/simcore_service_payments/services/stripe.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
""" Interface to communicate with the Resource Usage Tracker (RUT)
1+
"""Interface to communicate with the Resource Usage Tracker (RUT)
22
33
- httpx client with base_url to PAYMENTS_RESOURCE_USAGE_TRACKER
44
@@ -19,7 +19,7 @@
1919
BaseHTTPApi,
2020
HealthMixinMixin,
2121
)
22-
from servicelib.fastapi.tracing import setup_httpx_client_tracing
22+
from servicelib.fastapi.tracing import get_tracing_data, setup_httpx_client_tracing
2323

2424
from ..core.errors import StripeRuntimeError
2525
from ..core.settings import ApplicationSettings
@@ -93,7 +93,12 @@ def setup_stripe(app: FastAPI):
9393
auth=_StripeBearerAuth(settings.PAYMENTS_STRIPE_API_SECRET.get_secret_value()),
9494
)
9595
if settings.PAYMENTS_TRACING:
96-
setup_httpx_client_tracing(api.client)
96+
setup_httpx_client_tracing(
97+
api.client,
98+
tracing_data=get_tracing_data(
99+
app, tracing_settings=settings.PAYMENTS_TRACING
100+
),
101+
)
97102

98103
api.set_to_app_state(app)
99104
api.attach_lifespan_to(app)

0 commit comments

Comments
 (0)