oss_25_declarative_config_configprovider_create - #45
Conversation
|
🔒 Internal (dash0) — not for upstream.
|
|
📣 Public-facing draft — to be used for the upstream PR in Title: Add pure WhatAdds a stateless
WhySeparates building providers from installing them (enabling embedding and testing without side effects) and gives instrumentation libraries a standard, spec-shaped read view over declarative instrumentation config. Spec / reference
TestsNew |
|
This PR has been automatically marked as stale because it has not had any activity for 14 days. It will be closed if no further activity occurs within 14 days of this comment. |
…config Add a stateless create(model) -> Providers that builds the SDK providers without mutating global state, and have configure_sdk() reuse it (build via create, then install the built providers as the process globals and run instrumentation). Add a ConfigProperties read view over the parsed instrumentation node with typed getters (get_string/get_bool/get_int/get_float/get_config/ get_config_list/get_scalar_list/keys) that return None on missing key or type mismatch, and a global ConfigProvider exposing the instrumentation config.
eb5c2b1 to
078f77b
Compare
Closes #38
Declarative config: add a stateless
create(model) -> Providersthat builds providers without mutating globals (configure_sdk() now delegates to it then installs globals), plusConfigProperties/ConfigProvidertyped read view over the .instrumentation node (Linear OSS-25, finding L8).Validation: scope contained to opentelemetry-configuration + changelog; package suite 392 passed.
Linear issue: https://linear.app/dash0/issue/OSS-25/l8-declarative-config-no-configproviderconfigproperties-api-no-pure