Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.122.0
End User Changelog
🛑 Breaking changes 🛑
-
service
: Batch processor telemetry is no longer emitted at "basic" verbosity level (#7890)
According to the guidelines, basic-level telemetry should be reserved for core Collector APIs.
Components such as the batch processor should emit telemetry starting from the "normal" level
(which is also the default level).Migration: If your Collector telemetry was set to
level: basic
and you want to keep seeing
batch processor-related metrics, consider switching tolevel: normal
instead.
💡 Enhancements 💡
-
service
: Addservice.AllowNoPipelines
feature gate to allow starting the Collector without pipelines. (#12613)
This can be used to start with only extensions. -
mdatagen
: Delete generated_status.go if the component type doesn't require it. (#12346) -
componenttest
: Improve config struct mapstructure field tag checks (#12590)
remain
tags andomitempty
tags without a custom field name will now pass validation. -
service
: include component id/type in start error (#10426) -
mdatagen
: Add deprecation date and migration guide fields as part of component metadata (#12359) -
confmap
: Introduce a new feature flag to allow for merging lists instead of discarding the existing ones. (#8394, #8754, #10370)
You can enable this option via the command line by running following command:
otelcol --config=main.yaml --config=extra_config.yaml --feature-gates=-confmap.enableMergeAppendOption -
zpagesextension
: Add expvar handler to zpages extension. (#11081)
🧰 Bug fixes 🧰
-
confmap
: Maintain nil values when marshaling or unmarshaling nil slices (#11882)
Previously, nil slices were converted to empty lists, which are semantically different
than a nil slice. This change makes this conversion more consistent when encoding
or decoding config, and these values are now maintained. -
service
: do not attempt to register process metrics if they are disabled (#12098)
API Changelog
🛑 Breaking changes 🛑
-
auth, authtest
: Remove deprecated modules extension/auth and extension/auth/authtest (#12543)
Use extension/extensionauth and extension/extensionauth/extensionauthtest instead. -
extensionauth
: Remove deprecated methods from theFunc
types. (#12547) -
extensiontest, connectortest, processortest, receivertest, scrapertest, exportertest
: Remove deprecatedNewNopSettingsWithType
functions, useNewNopSettings
instead. (#12221) -
extensionauthtest
: Remove theextensionauthtest.MockClient
struct. (#12567)- Use
extensionauthtest.NewNopClient
to create a client with a noop implementation. - Use
extensionauthtest.NewErrorClient
to create a client that always returns an error. - Implement the
extensionauth
interfaces for custom mock client implementations.
- Use
-
component/componenttest
: Remove the deprecated componenttest.TestTelemetry in favor of componenttest.Telemetry (#12419) -
exporterhelper
: Remove the Request.Export function in favor of an equivalent request consume func in the New[Traces|Metrics|Logs|Profiles]Request (#12637)
🚩 Deprecations 🚩
-
exporterhelper
: Deprecate per signal converter in favor of generic version (#12631) -
extensionauth
: Deprecateextensionauth.NewClient
andextensionauth.NewServer
. (#12574)- Manually implement the interfaces instead.
-
configauth
: Deprecateconfigauth.Authenticator.GetClientAuthenticator
. (#12574)- Use the per-protocol methods instead.
🚀 New components 🚀
receiverhelper
: Splitreceiverhelper
into a separate module (#28328)
💡 Enhancements 💡
cmd/mdatagen
: AddsupportsSignal
func forMetadata
type inmdatagen
. (#12640)receiver
: Mark module as stable (#12513)pdata/pcommon
: IntroduceEqual()
method for comparison equality toValue
,ByteSlice
,Float64Slice
,Int32Slice
,Int64Slice
,StringSlice
,Uint64Slice
,Map
andSlice
(#12594)pdata
: Add iterator All method to pdata slices and map types. (#11982)pdata/pprofile
: Introduce AddAttribute helper method to modify the content of attributable records (#12206)