Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.120.0
End User Changelog
🛑 Breaking changes 🛑
all
: Added support for go1.24, bumped minimum version to 1.23 (#12370)mdatagen
: Removing deprecated generated funcs and a few test funcs as well. (#12304)service
: Align component logger attributes with those defined in RFC (#12217)
See Pipeline Component Telemetry RFC
💡 Enhancements 💡
otlpreceiver
: Update stability for logs (#12335)exporterhelper
: Implement sync disabled queue used when batching is enabled. (#12245)exporterhelper
: Enable the new pull-based batcher in exporterhelper (#12291)exporterhelper
: Update queue size after the element is done exported (#12399)
After this change the active queue size will include elements in the process of being exported.otelcol
: Add featuregate command to display information about available features (#11998)
The featuregate command allows users to view detailed information about feature gates
including their status, stage, and description.
🧰 Bug fixes 🧰
memorylimiter
: Logger no longer attributes to single signal, pipeline, or component. (#12217)otlpreceiver
: Logger no longer attributes to random signal when receiving multiple signals. (#12217)exporterhelper
: Fix undefined behavior access to request after send to next component. This causes random memory access. (#12281)exporterhelper
: Fix default batcher to correctly call all done callbacks exactly once (#12247)otlpreceiver
: Fix OTLP http receiver to correctly set Retry-After (#12367)otlphttpexporter
: Fix parsing logic for Retry-After in OTLP http protocol. (#12366)
The value of Retry-After field can be either an HTTP-date or delay-seconds and the current logic only parsed delay-seconds.cmd/builder
: Ensure unique aliases for modules with same suffix (#12201)
API Changelog
🛑 Breaking changes 🛑
-
configauth
: Remove NewDefaultAuthentication (#12223)
The value returned by this function will always cause an error on startup.
Inconfiggrpc.Client/ServerConfig.Auth
,nil
should be used instead to disable authentication. -
otelcol
: Make theConfigProvider
interface a struct (#12297)
Calls toNewConfigProvider
will now return*ConfigProvider
,
but will otherwise work the same as before. -
extension
: Removeextension.Settings.ModuleInfo
(#12296)- The functionality is now available as an optional, hidden interface on
service
's implementation of theHost
- The functionality is now available as an optional, hidden interface on
-
component
: Remove deprecated fieldcomponent.TelemetrySettings.MetricsLevel
. (#11061) -
confighttp
: AddToClientOption
type and add it to signature ofToClient
method. (#12353)- This has no use for now, it may be used in the future.
-
mdatagen
: Remove unused not_component config for mdatagen (#12237)
🚩 Deprecations 🚩
component/componenttest
: Deprecate CheckReceiverMetrics in componenenttest (#12185)
Use themetadatatest.AssertEqualMetric
series of functions instead ofobsreporttest.CheckReceiverMetrics
component/componenttest
: Deprecate CheckReceiverTraces in componenenttest (#12185)
Use themetadatatest.AssertEqualMetric
series of functions instead ofobsreporttest.CheckReceiverTraces
component
: DeprecateConfigValidator
andValidateConfig
(#11524)
Please useValidator
andValidate
respectively fromxconfmap
.receiver, scraper, processor, exporter, extension
: Deprecate existing MakeFactoryMap functions in favor of generic implementation (#12222)extension, connector, processor, receiver, exporter, scraper
: DeprecateCreate*
methods fromCreate*Func
types. (#12305)extensiontest, connectortest, processortest, receivertest, exportertest, scrapertest
: Deprecate*test.NewNopSettings
in favor of*test.NewNopSettingsWithType
(#12305)
🚀 New components 🚀
xconfmap
: Create the xconfmap module and add theValidator
interface andValidate
function to facilitate config validation (#11524)
💡 Enhancements 💡
configgrpc
: Add theomitempty
mapstructure tag to struct fields (#12191)
This results in unset fields not being rendered when marshaling.confignet
: Add theomitempty
mapstructure tag to struct fields (#12191)
This results in unset fields not being rendered when marshaling.configtls
: Add theomitempty
mapstructure tag to struct fields (#12191)
This results in unset fields not being rendered when marshaling.consumer
: Clarify that data cannot be accessed after Consume* func is called. (#12284)pdata/pprofile
: Introduce aggregation temporality constants (#12253)
🧰 Bug fixes 🧰
-
configgrpc
: Apply configured Headers automatically (#12307)
configgrpc now calls metadata.AppendToOutgoingContext automatically in an interceptor.
Components that were manually using metadata.NewOutgoingContext as a workaround no longer need to
do so, unless they are overwriting or adding header keys. -
configgrpc
: Set Auth to nil in NewDefaultClientConfig/NewDefaultServerConfig (#12223)
The value that was used previously would always cause an error on startup. -
exporterqueue
: Fix async queue to propagate cancellation all they way to the queue (#12282) -
otlpreceiver
: Fix OTLP http receiver to correctly set Retry-After (#12367) -
extension
: Explicitly error out at extension creation time if there is a type mismatch. (#12305)