Skip to content

Commit 85309f5

Browse files
committed
additional optional fields
1 parent 32ca2d2 commit 85309f5

1 file changed

Lines changed: 15 additions & 1 deletion

File tree

  • src/agentex/lib/core/temporal/workers

src/agentex/lib/core/temporal/workers/worker.py

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
Interceptor,
1717
UnsandboxedWorkflowRunner,
1818
)
19-
from temporalio.runtime import Runtime, TelemetryConfig, OpenTelemetryConfig
19+
from temporalio.runtime import Runtime, TelemetryConfig, OpenTelemetryConfig, OpenTelemetryMetricTemporality
2020
from temporalio.converter import (
2121
PayloadCodec,
2222
DataConverter,
@@ -99,6 +99,8 @@ async def get_temporal_client(
9999
payload_codec: PayloadCodec | None = None,
100100
data_converter: DataConverter | None = None,
101101
metrics_headers: dict[str, str] | None = None,
102+
metrics_use_http: bool = False,
103+
metrics_temporality_delta: bool = False,
102104
) -> Client:
103105
if plugins != []: # We don't need to validate the plugins if they are empty
104106
_validate_plugins(plugins)
@@ -147,6 +149,12 @@ async def get_temporal_client(
147149
runtime = Runtime(telemetry=TelemetryConfig(metrics=OpenTelemetryConfig(
148150
url=metrics_url,
149151
headers=metrics_headers or {},
152+
http=metrics_use_http,
153+
metric_temporality=(
154+
OpenTelemetryMetricTemporality.DELTA
155+
if metrics_temporality_delta
156+
else OpenTelemetryMetricTemporality.CUMULATIVE
157+
),
150158
)))
151159
connect_kwargs["runtime"] = runtime
152160
client = await Client.connect(**connect_kwargs)
@@ -166,6 +174,8 @@ def __init__(
166174
payload_codec: PayloadCodec | None = None,
167175
data_converter: DataConverter | None = None,
168176
metrics_headers: dict[str, str] | None = None,
177+
metrics_use_http: bool = False,
178+
metrics_temporality_delta: bool = False,
169179
):
170180
self.task_queue = task_queue
171181
self.activity_handles = []
@@ -180,6 +190,8 @@ def __init__(
180190
self.interceptors = interceptors
181191
self.metrics_url = metrics_url
182192
self.metrics_headers = metrics_headers
193+
self.metrics_use_http = metrics_use_http
194+
self.metrics_temporality_delta = metrics_temporality_delta
183195
self.payload_codec = payload_codec
184196
self.data_converter = data_converter
185197

@@ -218,6 +230,8 @@ async def run(
218230
plugins=self.plugins,
219231
metrics_url=self.metrics_url,
220232
metrics_headers=self.metrics_headers,
233+
metrics_use_http=self.metrics_use_http,
234+
metrics_temporality_delta=self.metrics_temporality_delta,
221235
payload_codec=self.payload_codec,
222236
data_converter=self.data_converter,
223237
)

0 commit comments

Comments
 (0)