Skip to content

Add file configuration types for Tracer, Meter, and Logger#3920

Open
UMMAN2005 wants to merge 2 commits intoopen-telemetry:mainfrom
UMMAN2005:feature/file-config-tracer-meter-logger
Open

Add file configuration types for Tracer, Meter, and Logger#3920
UMMAN2005 wants to merge 2 commits intoopen-telemetry:mainfrom
UMMAN2005:feature/file-config-tracer-meter-logger

Conversation

@UMMAN2005
Copy link

Summary

Implements the file configuration types for Tracer, Meter, and Logger as described in #3915.

Changes

  • 9 new configuration model headers: ExperimentalTracerConfig, ExperimentalTracerMatcherAndConfig, ExperimentalTracerConfigurator (and their Meter/Logger equivalents), following the project's one-class-per-header convention.
  • Updated provider configurations: Replaced FIXME comments in TracerProviderConfiguration, MeterProviderConfiguration, and LoggerProviderConfiguration with the new configurator fields.
  • YAML parsing: Added parsing support for the tracer_configurator/development, meter_configurator/development, and logger_configurator/development sections in ConfigurationParser.
  • SDK builder wiring: Implemented CreateTracerConfigurator, CreateMeterConfigurator, CreateLoggerConfigurator in SdkBuilder to construct ScopeConfigurator<T> objects from parsed configuration, including wildcard name matching (? and *).
  • Unit tests: Added tests for each signal's configurator parsing in yaml_trace_test.cc, yaml_metrics_test.cc, and yaml_logs_test.cc.

Types implemented

ExperimentalTracerConfig
ExperimentalTracerConfigurator
ExperimentalTracerMatcherAndConfig
ExperimentalMeterConfig
ExperimentalMeterConfigurator
ExperimentalMeterMatcherAndConfig
ExperimentalLoggerConfig
ExperimentalLoggerConfigurator
ExperimentalLoggerMatcherAndConfig

Test plan

  • Added unit tests for parsing configurator sections (no configurator, default only, default + matchers)
  • CI builds and tests pass on all supported platforms

Resolves #3915

@UMMAN2005 UMMAN2005 requested a review from a team as a code owner March 8, 2026 17:04
@codecov
Copy link

codecov bot commented Mar 8, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 90.05%. Comparing base (082620c) to head (c6e1553).

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##             main    #3920   +/-   ##
=======================================
  Coverage   90.05%   90.05%           
=======================================
  Files         226      226           
  Lines        7223     7223           
=======================================
  Hits         6504     6504           
  Misses        719      719           
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@UMMAN2005 UMMAN2005 force-pushed the feature/file-config-tracer-meter-logger branch from 61e4ad7 to d71a591 Compare March 9, 2026 08:11
Implement ExperimentalTracerConfig, ExperimentalTracerConfigurator,
ExperimentalTracerMatcherAndConfig and their Meter/Logger equivalents
as defined in the declarative configuration spec.

- Add 9 new configuration model headers (Config, MatcherAndConfig,
  Configurator for each signal)
- Wire configurator fields into TracerProviderConfiguration,
  MeterProviderConfiguration, and LoggerProviderConfiguration
- Implement YAML parsing for the new configuration types in
  ConfigurationParser
- Add ScopeConfigurator creation with wildcard name matching in
  SdkBuilder
- Add unit tests for parsing the new configurator sections

Resolves open-telemetry#3915
@UMMAN2005 UMMAN2005 force-pushed the feature/file-config-tracer-meter-logger branch from d71a591 to a6ad72d Compare March 9, 2026 08:13
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.

[CONFIGURATION] File configuration - Tracer/Meter/Logger config

1 participant