fix(adk): set OTLP exporter timeout in milliseconds#1639
Merged
EItanya merged 2 commits intokagent-dev:mainfrom Apr 7, 2026
Merged
fix(adk): set OTLP exporter timeout in milliseconds#1639EItanya merged 2 commits intokagent-dev:mainfrom
EItanya merged 2 commits intokagent-dev:mainfrom
Conversation
Signed-off-by: Jet Chiang <pokyuen.jetchiang-ext@solo.io>
Contributor
There was a problem hiding this comment.
Pull request overview
Updates OTLP exporter timeout handling to align with the OpenTelemetry spec (timeouts specified in milliseconds), while ensuring the Python SDK receives timeouts in seconds as expected.
Changes:
- Added a Python utility to resolve OTLP timeout env vars (ms) into seconds and wired it into trace/log OTLP exporters.
- Added tests validating millisecond-to-second resolution and env var precedence.
- Updated Helm default OTLP timeouts from
15to15000(milliseconds) for traces and logs.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| python/packages/kagent-core/src/kagent/core/tracing/_utils.py | Adds OTLP timeout env parsing (ms→s) and passes computed timeouts into OTLP trace/log exporters. |
| python/packages/kagent-core/tests/test_tracing_configure.py | Adds parametrized coverage for timeout resolution behavior. |
| helm/kagent/values.yaml | Changes default OTLP timeout values to milliseconds to match OTEL spec and avoid unintended 15ms timeouts. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
EItanya
approved these changes
Apr 7, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
OTEL specified that timeout env vars should be in milliseconds: https://opentelemetry.io/docs/languages/sdk-configuration/otlp-exporter/#timeout-configuration
Python SDK's exporter currently expects it in seconds, so this adds a utility function to parse the env var into seconds. Go is not affected because OTEL Go SDK will properly take up the new value in milliseconds properly.
Without changing this to milliseconds, Go ADK was having a timeout configured as 15ms which results in intermittent error like
traces export: exporter export timeout: rpc error: code = DeadlineExceeded desc = context deadline exceeded