diff --git a/CHANGELOG.md b/CHANGELOG.md index 6dbb7195..a75c69b6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,164 @@ # Changelog -## Unreleased +## [v1.0.0-rc.3] - 2025-12-04 TODO update date + +This release contains a number of changes which are breaking according to the [versioning policy](VERSIONING.md), but in +practice are unlikely to be impactful. These changes generally make implicit assumptions explicit, or require changes +from implementations but not end users. There are a small number of notable breaking changes called out below. + +This release also contains a large number of project tooling improvements aimed at improving consistency and quality. +Notably, the schema is now compiled into a single file +at [opentelemetry_configuration.json](opentelemetry_configuration.json). Please +see [project tooling docs](CONTRIBUTING.md#json-schema-source-and-output) for more details. + +### Schema + +* **BREAKING:** Move certificate configuration under `tls` block and rename to align with collector + ([#331](https://github.com/open-telemetry/opentelemetry-configuration/pull/331), + [#418](https://github.com/open-telemetry/opentelemetry-configuration/pull/418)) + +
+ + Migration steps + + ```yaml + # Before + tracer_provider: # or meter_provider, logger_provider + processors: + - batch: + exporter: + otlp_http: + certificate_file: /app/cert.pem + client_key_file: /app/key.pem + client_certificate_file: /app/client_cert.pem + --- + # After + tracer_provider: + processors: + - batch: + exporter: + otlp_http: + tls: + ca_file: /app/cert.pem + key_file: /app/key.pem + cert_file: /app/client_cert.pem + ``` +
+ +* **BREAKING:** Update .log_level to be enum + ([#447](https://github.com/open-telemetry/opentelemetry-configuration/pull/447)) + +
+ + Migration steps + + ```yaml + # .log_level must now be one of the values in https://github.com/open-telemetry/opentelemetry-configuration/blob/main/schema-docs.md#severitynumber- + # If already conforming to this, no update is necessary, else update to the equivalent level. + log_level: info + ``` +
+ +* **BREAKING:** Delete ZipkinSpanExporter ahead of stabilizing after deprecation in the specification. + See https://opentelemetry.io/blog/2025/deprecating-zipkin-exporters/ for details. If you depend on ZipkinSpanExporter + w/ declarative config, please open an issue to let us know. + ([#453](https://github.com/open-telemetry/opentelemetry-configuration/pull/453)) + +* **BREAKING (low-impact):** Add ConsoleMetricExporter + ([#362](https://github.com/open-telemetry/opentelemetry-configuration/pull/362)) +* **BREAKING (low-impact):** Add [0, 1] bounds for TraceIdRatioBasedSampler ratio + ([#358](https://github.com/open-telemetry/opentelemetry-configuration/pull/358)) +* **BREAKING (low-impact):** Make view selector and stream required + ([#365](https://github.com/open-telemetry/opentelemetry-configuration/pull/365)) +* **BREAKING (low-impact):** Change JaegerRemote to Experimental + ([#363](https://github.com/open-telemetry/opentelemetry-configuration/pull/363)) +* **BREAKING (low-impact):** Fix casing for OpenTelemetryConfiguration + ([#372](https://github.com/open-telemetry/opentelemetry-configuration/pull/372)) +* **BREAKING (low-impact):** Add AttributeLimit constraints + ([#382](https://github.com/open-telemetry/opentelemetry-configuration/pull/382)) +* **BREAKING (low-impact):** Set AttributeLimits additionalProperties: false + ([#381](https://github.com/open-telemetry/opentelemetry-configuration/pull/381)) +* **BREAKING (low-impact):** Update Propagator to disallow additionalProperties + ([#388](https://github.com/open-telemetry/opentelemetry-configuration/pull/388)) +* **BREAKING (low-impact):** Add constraints to Base2ExponentialBucketHistogramAggregation properties + ([#383](https://github.com/open-telemetry/opentelemetry-configuration/pull/383)) +* **BREAKING (low-impact):** Add minItems recommendation for array properties + ([#386](https://github.com/open-telemetry/opentelemetry-configuration/pull/386)) +* **BREAKING (low-impact):** Experimental{Signal}MatcherAndConfig require name and config properties + ([#406](https://github.com/open-telemetry/opentelemetry-configuration/pull/406)) +* **BREAKING (low-impact):** Break out dedicated type for prometheus translation strategy + ([#415](https://github.com/open-telemetry/opentelemetry-configuration/pull/415)) +* **BREAKING (low-impact):** Add schema modeling guidance for enum values as lower_snake_case + ([#445](https://github.com/open-telemetry/opentelemetry-configuration/pull/445)) +* Replace patternProperties with additionalProperties for improved type safety + ([#323](https://github.com/open-telemetry/opentelemetry-configuration/pull/323), + [#347](https://github.com/open-telemetry/opentelemetry-configuration/pull/347)) +* Minor cleanup of SDK extension plugin types + ([#385](https://github.com/open-telemetry/opentelemetry-configuration/pull/385)) +* Add schema for composite sampler + ([#390](https://github.com/open-telemetry/opentelemetry-configuration/pull/390), + [#427](https://github.com/open-telemetry/opentelemetry-configuration/pull/427)) +* Add schema for ProbabilitySampler + ([#339](https://github.com/open-telemetry/opentelemetry-configuration/pull/339)) +* Add new LoggerConfig parameters + ([#392](https://github.com/open-telemetry/opentelemetry-configuration/pull/392)) +* Update `without_target_info` to `ExperimentalPrometheusMetricExporter` + ([#376](https://github.com/open-telemetry/opentelemetry-configuration/pull/376)) +* Clarify .file_format is a string consisting of the major and minor version + ([#455](https://github.com/open-telemetry/opentelemetry-configuration/pull/455)) +* Add schema for rule based sampler + ([#410](https://github.com/open-telemetry/opentelemetry-configuration/pull/410)) +* Add Distribution section for vendor-specific settings + ([#433](https://github.com/open-telemetry/opentelemetry-configuration/pull/433)) + +### Tooling + +* Fix links, use common link checker + ([#319](https://github.com/open-telemetry/opentelemetry-configuration/pull/319), + [#351](https://github.com/open-telemetry/opentelemetry-configuration/pull/351), + [#379](https://github.com/open-telemetry/opentelemetry-configuration/pull/379), + [#434](https://github.com/open-telemetry/opentelemetry-configuration/pull/434)) +* Track additional schema meta data, including default behavior and descriptions. Separate schema source and compile into single output file. Add additional schema validation. Generate documentation from schema. + ([#312](https://github.com/open-telemetry/opentelemetry-configuration/pull/312), + [#350](https://github.com/open-telemetry/opentelemetry-configuration/pull/350), + [#360](https://github.com/open-telemetry/opentelemetry-configuration/pull/360), + [#359](https://github.com/open-telemetry/opentelemetry-configuration/pull/359), + [#361](https://github.com/open-telemetry/opentelemetry-configuration/pull/361), + [#370](https://github.com/open-telemetry/opentelemetry-configuration/pull/370), + [#369](https://github.com/open-telemetry/opentelemetry-configuration/pull/369), + [#367](https://github.com/open-telemetry/opentelemetry-configuration/pull/367), + [#364](https://github.com/open-telemetry/opentelemetry-configuration/pull/364), + [#384](https://github.com/open-telemetry/opentelemetry-configuration/pull/384), + [#380](https://github.com/open-telemetry/opentelemetry-configuration/pull/380), + [#366](https://github.com/open-telemetry/opentelemetry-configuration/pull/366), + [#374](https://github.com/open-telemetry/opentelemetry-configuration/pull/374), + [#414](https://github.com/open-telemetry/opentelemetry-configuration/pull/414), + [#412](https://github.com/open-telemetry/opentelemetry-configuration/pull/412), + [#411](https://github.com/open-telemetry/opentelemetry-configuration/pull/411), + [#424](https://github.com/open-telemetry/opentelemetry-configuration/pull/424), + [#425](https://github.com/open-telemetry/opentelemetry-configuration/pull/425), + [#426](https://github.com/open-telemetry/opentelemetry-configuration/pull/426), + [#436](https://github.com/open-telemetry/opentelemetry-configuration/pull/436), + [#443](https://github.com/open-telemetry/opentelemetry-configuration/pull/443), + [#444](https://github.com/open-telemetry/opentelemetry-configuration/pull/444), + [#442](https://github.com/open-telemetry/opentelemetry-configuration/pull/442), + [#440](https://github.com/open-telemetry/opentelemetry-configuration/pull/440), + [#451](https://github.com/open-telemetry/opentelemetry-configuration/pull/451), + [#450](https://github.com/open-telemetry/opentelemetry-configuration/pull/450)) +* Document what you see is what you get philosophy as schema modeling rule + ([#377](https://github.com/open-telemetry/opentelemetry-configuration/pull/377)) +* Add contributing / release guidance for breaking changes + ([#373](https://github.com/open-telemetry/opentelemetry-configuration/pull/373)) +* Document SDK extension plugin schema modeling rule + ([#378](https://github.com/open-telemetry/opentelemetry-configuration/pull/378)) +* Misc docs updates + ([#423](https://github.com/open-telemetry/opentelemetry-configuration/pull/423)) +* Add getting started config at `/examples/getting-started.yaml` + ([#402](https://github.com/open-telemetry/opentelemetry-configuration/pull/402)) +* Move stability definition to VERSIONING.md, rework README.md for improved focus + ([#454](https://github.com/open-telemetry/opentelemetry-configuration/pull/454)) +* Add tooling for small targeted configuration snippets + ([#397](https://github.com/open-telemetry/opentelemetry-configuration/pull/397)) ### Schema diff --git a/examples/getting-started.yaml b/examples/getting-started.yaml index 30d88f37..448f0e74 100644 --- a/examples/getting-started.yaml +++ b/examples/getting-started.yaml @@ -8,7 +8,7 @@ # For schema documentation, including required properties, semantics, default behavior, etc, # see: https://github.com/open-telemetry/opentelemetry-configuration/blob/main/schema-docs.md -file_format: "1.0-rc.2" +file_format: "1.0-rc.3" resource: # Read resource attributes from the OTEL_RESOURCE_ATTRIBUTES environment variable. diff --git a/examples/kitchen-sink.yaml b/examples/kitchen-sink.yaml index ebe577ac..f7133190 100644 --- a/examples/kitchen-sink.yaml +++ b/examples/kitchen-sink.yaml @@ -7,7 +7,7 @@ # # For schema documentation, including required properties, semantics, default behavior, etc, # see: https://github.com/open-telemetry/opentelemetry-configuration/blob/main/schema-docs.md -file_format: "1.0-rc.2" +file_format: "1.0-rc.3" disabled: false log_level: info attribute_limits: diff --git a/examples/sdk-config.yaml b/examples/sdk-config.yaml index 3c8beebb..0dc80074 100644 --- a/examples/sdk-config.yaml +++ b/examples/sdk-config.yaml @@ -7,7 +7,7 @@ # # For schema documentation, including required properties, semantics, default behavior, etc, # see: https://github.com/open-telemetry/opentelemetry-configuration/blob/main/schema-docs.md -file_format: "1.0-rc.2" +file_format: "1.0-rc.3" disabled: false log_level: info resource: diff --git a/examples/sdk-migration-config.yaml b/examples/sdk-migration-config.yaml index e9ae2e75..b4375879 100644 --- a/examples/sdk-migration-config.yaml +++ b/examples/sdk-migration-config.yaml @@ -35,7 +35,7 @@ # # For schema documentation, including required properties, semantics, default behavior, etc, # see: https://github.com/open-telemetry/opentelemetry-configuration/blob/main/schema-docs.md -file_format: "1.0-rc.2" +file_format: "1.0-rc.3" disabled: ${OTEL_SDK_DISABLED:-false} log_level: info resource: