Skip to content

Commit d203575

Browse files
authored
List declarative config supported SDK extension plugin interfaces (#4452)
Explicitly state that declarative configuration should support configuration of all SDK extension plugin interfaces, and list the current status of all of them. This idea came up in a recent [CNCF slack discussion](https://cloud-native.slack.com/archives/C0476L7UJT1/p1742330526645349) with @aabmass.
1 parent 9e424a7 commit d203575

File tree

2 files changed

+28
-0
lines changed

2 files changed

+28
-0
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@ release.
3232

3333
- Convert declarative config env var substitution syntax to ABNF.
3434
([#4448](https://github.com/open-telemetry/opentelemetry-specification/pull/4448))
35+
- List declarative config supported SDK extension plugin interfaces.
36+
([#4452](https://github.com/open-telemetry/opentelemetry-specification/pull/4452))
3537

3638
### Common
3739

specification/configuration/sdk.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
* [ConfigProvider](#configprovider)
1010
* [SDK extension components](#sdk-extension-components)
1111
+ [ComponentProvider](#componentprovider)
12+
- [Supported SDK extension plugins](#supported-sdk-extension-plugins)
1213
- [ComponentsProvider operations](#componentsprovider-operations)
1314
* [Create Plugin](#create-plugin)
1415
* [Config operations](#config-operations)
@@ -120,6 +121,31 @@ mechanism.
120121
See [create](#create), which details `ComponentProvider` usage in
121122
configuration model interpretation.
122123

124+
##### Supported SDK extension plugins
125+
126+
The [configuration data model](./data-model.md) SHOULD support configuration of
127+
all SDK extension plugin interfaces. SDKs SHOULD
128+
support [registration](#register-componentprovider) of custom implementations of
129+
SDK extension plugin interfaces via the `ComponentProvider` mechanism.
130+
131+
The following table lists the current status of all SDK extension plugin
132+
interfaces in the configuration data model:
133+
134+
| SDK extension plugin interface | Status |
135+
|---------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------|
136+
| [resource detector](../resource/sdk.md#detecting-resource-information-from-the-environment) | + |
137+
| [text map propagator](../context/api-propagators.md#textmap-propagator) | + |
138+
| [span exporter](../trace/sdk.md#span-exporter) | + |
139+
| [span processor](../trace/sdk.md#span-processor) | + |
140+
| [sampler](../trace/sdk.md#sampler) | + |
141+
| [id generator](../trace/sdk.md#id-generators) | - [#70](https://github.com/open-telemetry/opentelemetry-configuration/issues/70) |
142+
| [pull metric reader](../metrics/sdk.md#metricreader) | + |
143+
| [push metric exporter](../metrics/sdk.md#metricexporter) | + |
144+
| [metric producer](../metrics/sdk.md#metricproducer) | + |
145+
| [exemplar reservoir](../metrics/sdk.md#exemplarreservoir) | - [#189](https://github.com/open-telemetry/opentelemetry-configuration/issues/189) |
146+
| [log record exporter](../logs/sdk.md#logrecordexporter) | + |
147+
| [log record processor](../logs/sdk.md#logrecordprocessor) | + |
148+
123149
##### ComponentsProvider operations
124150

125151
The `ComponentsProvider` MUST provide the following functions:

0 commit comments

Comments
 (0)