Skip to content

Enhance observability with OTLP timeout and API unification#79

Merged
oschwartz10612 merged 8 commits intodevfrom
observability-update
May 3, 2026
Merged

Enhance observability with OTLP timeout and API unification#79
oschwartz10612 merged 8 commits intodevfrom
observability-update

Conversation

@marcschaeferger
Copy link
Copy Markdown
Member

Community Contribution License Agreement

By creating this pull request, I grant the project maintainers an unlimited,
perpetual license to use, modify, and redistribute these contributions under any terms they
choose, including both the AGPLv3 and the Fossorial Commercial license terms. I
represent that I have the right to grant this license for all contributed content.

Description (generated by Copilot)

This pull request introduces several improvements and updates to the observability and metrics subsystem, focusing on OpenTelemetry (OTel) configuration, validation, and documentation. It also includes dependency updates, minor test improvements, and a new code ownership assignment.

Key highlights:

  • Adds a configurable timeout for OTel exporter initialization, with documentation and validation.
  • Updates the OTel Go dependencies to the latest versions.
  • Improves the validation logic for metrics backends.
  • Updates documentation and examples for clarity and correctness.
  • Refactors metric backend interfaces for better error handling.

Observability & Metrics Configuration

  • Added a Timeout field to the OTelConfig struct, allowing configuration of the OTLP exporter connection setup timeout (default 10s). Updated all related documentation, CLI flags, and environment variable references to include this new option. [1] [2] [3] [4] [5] [6] [7]
  • Enhanced validation logic for the metrics backend: now requires a non-empty backend when metrics are enabled, and validates that the OTel timeout is positive. Added corresponding test cases for invalid configurations. [1] [2] [3] [4]

Dependency & Interface Updates

  • Updated Go OpenTelemetry dependencies and related libraries to the latest versions (1.43.0), ensuring compatibility and bug fixes. [1] [2]
  • Changed the metrics backend interface methods (NewCounter, NewUpDownCounter, etc.) to return errors, propagating error handling from the underlying implementations. [1] [2] [3]

Documentation & Examples

  • Improved documentation for OTel metrics, including new timeout configuration, correct CLI flag defaults, and fixed example commands for Prometheus and OTel backends. [1] [2]
  • Added a missing file_format field to the example OTel collector config.

Testing Improvements

  • Improved test setup and coverage for metrics initialization, shutdown, and validation, including new cases for OTel timeout and backend validation. [1] [2] [3] [4]

Miscellaneous

  • Added code ownership for the internal/observability/** directory. (.github/CODEOWNERS)

How to test?

@oschwartz10612 oschwartz10612 merged commit 1b869c2 into dev May 3, 2026
1 check passed
@oschwartz10612 oschwartz10612 deleted the observability-update branch May 3, 2026 22:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants