|
15 | 15 | from pydantic import BaseModel, ConfigDict, Field |
16 | 16 | from uipath.core.serialization import serialize_json |
17 | 17 |
|
| 18 | +from .constants import ( |
| 19 | + ENV_FOLDER_KEY, |
| 20 | + ENV_JOB_KEY, |
| 21 | + ENV_ORGANIZATION_ID, |
| 22 | + ENV_PROCESS_KEY, |
| 23 | + ENV_TENANT_ID, |
| 24 | + ENV_UIPATH_PROCESS_UUID, |
| 25 | + ENV_UIPATH_PROCESS_VERSION, |
| 26 | + ENV_UIPATH_TRACE_ID, |
| 27 | +) |
| 28 | + |
18 | 29 | logger = logging.getLogger(__name__) |
19 | 30 |
|
20 | 31 |
|
@@ -201,25 +212,25 @@ class UiPathSpan: |
201 | 212 | # serializer, and even null fails for the required OrganizationId/FolderKey. |
202 | 213 | # In the platform runtime these are always set to real GUIDs. |
203 | 214 | organization_id: Optional[str] = field( |
204 | | - default_factory=lambda: env.get("UIPATH_ORGANIZATION_ID") or None |
| 215 | + default_factory=lambda: env.get(ENV_ORGANIZATION_ID) or None |
205 | 216 | ) |
206 | 217 | tenant_id: Optional[str] = field( |
207 | | - default_factory=lambda: env.get("UIPATH_TENANT_ID") or None |
| 218 | + default_factory=lambda: env.get(ENV_TENANT_ID) or None |
208 | 219 | ) |
209 | 220 | expiry_time_utc: Optional[str] = None |
210 | 221 | folder_key: Optional[str] = field( |
211 | | - default_factory=lambda: env.get("UIPATH_FOLDER_KEY") or None |
| 222 | + default_factory=lambda: env.get(ENV_FOLDER_KEY) or None |
212 | 223 | ) |
213 | 224 | source: SpanSource = SpanSource.CODED_AGENTS |
214 | 225 | span_type: str = "Coded Agents" |
215 | 226 | process_key: Optional[str] = field( |
216 | | - default_factory=lambda: env.get("UIPATH_PROCESS_UUID") |
| 227 | + default_factory=lambda: env.get(ENV_UIPATH_PROCESS_UUID) |
217 | 228 | ) |
218 | 229 | reference_id: Optional[str] = field( |
219 | 230 | default_factory=lambda: env.get("TRACE_REFERENCE_ID") |
220 | 231 | ) |
221 | 232 |
|
222 | | - job_key: Optional[str] = field(default_factory=lambda: env.get("UIPATH_JOB_KEY")) |
| 233 | + job_key: Optional[str] = field(default_factory=lambda: env.get(ENV_JOB_KEY)) |
223 | 234 |
|
224 | 235 | # Top-level fields for internal tracing schema |
225 | 236 | execution_type: Optional[ExecutionType] = None |
@@ -341,7 +352,7 @@ def otel_span_to_uipath_span( |
341 | 352 | span_id = format(span_context.span_id, "016x") |
342 | 353 |
|
343 | 354 | # Override trace_id if custom or env var provided (supports both UUID and hex format) |
344 | | - trace_id_override = custom_trace_id or os.environ.get("UIPATH_TRACE_ID") |
| 355 | + trace_id_override = custom_trace_id or os.environ.get(ENV_UIPATH_TRACE_ID) |
345 | 356 | if trace_id_override: |
346 | 357 | trace_id = _SpanUtils.normalize_trace_id(trace_id_override) |
347 | 358 |
|
@@ -420,8 +431,8 @@ def otel_span_to_uipath_span( |
420 | 431 |
|
421 | 432 | # Add process context attributes from environment variables |
422 | 433 | for env_key, attr_key in ( |
423 | | - ("UIPATH_PROCESS_KEY", "agentName"), |
424 | | - ("UIPATH_PROCESS_VERSION", "agentVersion"), |
| 434 | + (ENV_PROCESS_KEY, "agentName"), |
| 435 | + (ENV_UIPATH_PROCESS_VERSION, "agentVersion"), |
425 | 436 | ): |
426 | 437 | value = env.get(env_key) |
427 | 438 | if value: |
|
0 commit comments