Releases: open-telemetry/opentelemetry-collector
v1.31.0/v0.125.0
Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.125.0
End User Changelog
π Breaking changes π
-
service
: Lowercase values for 'otelcol.component.kind' attributes. (#12865) -
service
: Restrict thetelemetry.newPipelineTelemetry
feature gate to metrics. (#12856, #12933)
The "off" state of this feature gate introduced a regression, where the Collector's internal logs were missing component attributes. See issue #12870 for more details on this bug.On the other hand, the "on" state introduced an issue with the Collector's default internal metrics, because the Prometheus exporter does not currently support instrumentation scope attributes.
To solve both of these issues, this change turns on the new scope attributes for logs and traces by default regardless of the feature gate.
However, the new scope attributes for metrics stay locked behind the feature gate, and will remain off by default until the Prometheus exporter is updated to support scope attributes.Please understand that enabling the
telemetry.newPipelineTelemetry
feature gate may break the export of Collector metrics through, depending on your configuration.
Having abatch
processor in multiple pipelines is a known trigger for this.This comes with a breaking change, where internal logs exported through OTLP will now use instrumentation scope attributes to identify the source component instead of log attributes.
This does not affect the Collector's stderr output. See the changelog for v0.123.0 for a more detailed description of the gate's effects.
π‘ Enhancements π‘
mdatagen
: Add support for attributes for telemetry configuration in metadata. (#12919)configmiddleware
: Add extensionmiddleware interface. (#12603, #9591)configgrpc
: Add gRPC middleware support. (#12603, #9591)confighttp
: Add HTTP middleware support. (#12603, #9591, #7441)configmiddleware
: Add configmiddleware struct. (#12603, #9591)
π§° Bug fixes π§°
exporterhelper
: Do not ignore thenum_consumers
setting when batching is enabled. (#12244)exporterhelper
: Reject elements larger than the queue capacity (#12847)mdatagen
: Add time and plog package imports (#12907)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.
API Changelog
π© Deprecations π©
extensionauthtest
: Deprecate NewErrorClient in favor of NewErrClient. (#12874)
π‘ Enhancements π‘
xextension/storage
: ErrStorageFull error added to xextension/storage contract (#12925)pdata
: Add MoveTo to pcommon.Value, only type missing this (#12877)
π§° Bug fixes π§°
pdata
: Fix MoveTo when moving to the same destination (#12887)
v1.30.0/v0.124.0
Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.124.0
End User Changelog
π Known bugs π
service/telemetry
: Missing attributes in internal Collector logs (#12870).- See issue description for workarounds.
π‘ Enhancements π‘
exporterhelper
: Add support for bytes-based batching for profiles in the exporterhelper package. (#3262)otelcol
: Enhance config validation using command to capture all validation errors that prevents the collector from starting. (#8721)exporterhelper
: Link batcher context to all batched request's span contexts. (#12212, #8122)
π§° Bug fixes π§°
confighttp
: Ensure http authentication server failures are handled by the provided error handler (#12666)
API Changelog
π Breaking changes π
exporterbatcher
: Remove deprecated package exporterbatcher (#12780)exporterqueue
: Remove deprecated package exporterqueue (#12779)
π‘ Enhancements π‘
mdatagen
: Add variable for metric name in mdatagen (#12459)
Access metric name viametadata.MetricsInfo.<metric-variable>.Name
client
: Add support for iterating over client metadata keys (#12804)service
: Adds the GetFactory interface to the hostcapabilities package (#12789)cmd/mdatagen
: Add the foundational changes necessary for supporting logs data inmdatagen
(#12571)
v1.29.0/v0.123.0
Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.123.0
End User Changelog
π Known bugs π
service/telemetry
: Missing attributes in internal Collector logs (#12870).- See issue description for workarounds.
π Breaking changes π
service/telemetry
: Marktelemetry.disableAddressFieldForInternalTelemetry
as beta, usage of deprecated service::telemetry::address are ignored (#12756)
To restore the previous behavior disabletelemetry.disableAddressFieldForInternalTelemetry
feature gate.exporterbatch
: Remove deprecated fieldsmin_size_items
andmax_size_items
from batch config. (#12684)
π© Deprecations π©
otlpexporter
: Mark BatcherConfig as deprecated, usesending_queue::batch
instead (#12726)exporterhelper
: Deprecateblocking
in favor ofblock_on_overflow
. (#12710)exporterhelper
: Deprecate configuring exporter batching separately. Usesending_queue::batch
instead. (#12772)
Moving the batching configuration tosending_queue::batch
requires settingsending_queue::sizer
toitems
which means thatsending_queue::queue_size
needs to be also increased by the average batch size number (roughly
x5000 for the default batching configuration).
See https://github.com/open-telemetry/opentelemetry-collector/tree/main/exporter/exporterhelper#configuration
π‘ Enhancements π‘
-
exporterhelper
: Add support to configure batching in the sending queue. (#12746) -
exporterhelper
: Add support for wait_for_result, remove disabled_queue (#12742)
This has a side effect for users of the experimental BatchConfig with the queue disabled, since not this is | uses only NumCPU() consumers. -
exporterhelper
: Allow exporter memory queue to use different type of sizers. (#12708) -
service
: Add "telemetry.newPipelineTelemetry" feature gate to inject component-identifying attributes in internal telemetry (#12217)
With the feature gate enabled, all internal telemetry (metrics/traces/logs) will include some of
the following instrumentation scope attributes:otelcol.component.kind
otelcol.component.id
otelcol.pipeline.id
otelcol.signal
otelcol.signal.output
These attributes are defined in the Pipeline Component Telemetry RFC,
and identify the component instance from which the telemetry originates.
They are added automatically without changes to component code.These attributes were already included in internal logs as regular log attributes, starting from
v0.120.0. For consistency with other signals, they have been switched to scope attributes (with
the exception of logs emitted to standard output), and are now enabled by the feature gate.Please make sure that the exporter / backend endpoint you use has support for instrumentation
scope attributes before using this feature. If the internal telemetry is exported to another
Collector, a transform processor could be used to turn them into other kinds of attributes if
necessary. -
exporterhelper
: Enable support to do batching usingbytes
sizer (#12751) -
service
: Add config key to set metric views used for internal telemetry (#10769)
Theservice::telemetry::metrics::views
config key can now be used to explicitly set the list of
metric views used for internal telemetry, mirroringmeter_provider::views
in the SDK config.
This can be used to disable specific internal metrics, among other uses.This key will cause an error if used alongside other features which would normally implicitly create views, such as:
- not setting
service::telemetry::metrics::level
todetailed
; - enabling the
telemetry.disableHighCardinalityMetrics
feature flag.
- not setting
π§° Bug fixes π§°
exporterhelper
: Fix order of starting between queue and batch. (#12705)
API Changelog
π Breaking changes π
-
otlpreceiver/otlpexporter/otlphttpexporter
: Avoid using go embedded messages in Config (#12718) -
exporterqueue
: Move Queue interface to internal, disallow alternative implementations (#12680) -
extensionauth, configauth
: Remove deprecated types and functions fromextensionauth
andconfigauth
packages. (#12672)
This includes:extensionauth.NewClient
,extensionauth.ClientOption
and all its implementations,extensionauth.NewServer
,extensionauth.ServerOption
and all its implementations andconfigauth.Authenticator.GetClientAuthenticator
.
-
exporterhelper
: Remove deprecated converter types from exporterhelper (#12686) -
exporterbatch
: Remove deprecated fieldsmin_size_items
andmax_size_items
from batch config. (#12684)
π© Deprecations π©
exporterhelper
: Deprecate BatcherConfig, SizeConfig and WithBatcher in favor of the new QueueBatchConfig. (#12748)exporterbatcher
: Deprecated Config, SizeConfig, SizerType, SizerType[Requests|Items|Bytes], NewDefaultConfig. Use alias from exporterhelper. (#12707)exporterqueue
: Deprecated Config, NewDefaultConfig, Encoding, ErrQueueFull. Use alias from exporterhelper. (#12706)exporterhelper
: Deprecate exporterhelper WithRequestQueue in favor of WithQueueBatch (#12679)exporterhelper
: DeprecateQueueConfig
in favor ofQueueBatchConfig
. (#12746)
π‘ Enhancements π‘
v0.122.1
Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.122.1
End User Changelog
π§° Bug fixes π§°
confmap
: Ensure slices with defaults containing struct values are correctly set. (#12661)
This reverts the changes made in #11882.
API Changelog
v1.28.0/v0.122.0
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)
v1.27.0/v0.121.0
Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.121.0
End User Changelog
π Breaking changes π
confighttp
: Make the client config optionsmax_idle_conns
,max_idle_conns_per_host
,max_conns_per_host
, andidle_conn_timeout
integers (#9478)
All four options can be set to0
where they were previously set tonull
π© Deprecations π©
exporterhelper
: Deprecatemin_size_items
andmax_size_items
in favor ofmin_size
andmax_size
. (#12486)
π‘ Enhancements π‘
-
mdatagen
: Addconverter
andprovider
module classes (#12467) -
pipeline
: output pipeline name with signal as signal[/name] format in logs. (#12410) -
memorylimiter
: Add support to configure min GC intervals for soft and hard limits. (#12450) -
otlpexporter
: Update the stability level for logs, it has been as stable as traces and metrics for some time. (#12423) -
service
: Create a new subcommand to dump the initial configuration after resolving/merging. (#11479)
To use theprint-initial-config
subcommand, invoke the Collector with the subcommand and corresponding feature gate:otelcol print-initial-config --feature-gates=otelcol.printInitialConfig --config=config.yaml
.
Note that the feature gate enabling this flag is currently in alpha stability, and the subcommand may
be changed in the future. -
memorylimiterprocessor
: Add support for profiles. (#12453) -
otelcol
: Converters are now available in thecomponents
command. (#11900, #12385) -
component
: Mark module as stable (#9376) -
confmap
: Surface YAML parsing errors when they happen at the top-level. (#12180)
This adds context to some instances of the error "retrieved value (type=string) cannot be used as a Conf", which typically happens because of invalid YAML documents -
pprofile
: Add LinkIndex attribute to the generated Sample type (#12485) -
exporterhelper
: Stabilize exporter.UsePullingBasedExporterQueueBatcher and remove old batch sender (#12425) -
mdatagen
: Update metadata schema with new fields without enforcing them (#12359)
π§° Bug fixes π§°
service
: Fix crash at startup when converting from v0.2.0 to v0.3.0 (#12438)service
: fix bug in parsing service::telemetry configuration (#12437)exporterhelper
: Fix bug where the error logged when conversion of data fails is always nil (#12510)mdatagen
: Adds back missing import for filter when emitting resource attributes (#12455)
API Changelog
π Breaking changes π
-
exporterqueue
: Remove exporterqueue.Factory in favor of the NewQueue function, and merge configs for memory and persistent. (#12509)
As a side effect of this change, no alternative implementation of the queue are supported and the Queue interface will be hidden. -
exporterhelper
: Update MergeSplit function signature to use the new SizeConfig (#12486) -
extension, connector, processor, receiver, exporter, scraper
: Remove deprecatedCreate*
methods fromCreate*Func
types. (#12305)
Thexconnector.CreateMetricsToProfilesFunc.CreateMetricsToProfiles
method has been removed without a deprecation. -
component
: Remove deprecated function and interfaceConfigValidator
andValidateConfig
. (#11524)- Use
xconfmap.Validator
andxconfmap.Validate
instead.
- Use
-
receiver, scraper, processor, exporter, extension
: Remove deprecated MakeFactoryMap functions in favor of generic implementation (#12222) -
exporterhelper
: Change the signature of the exporterhelper.WithQueueRequest to accept Encoding instead of the Factory. (#12509) -
component/componenttest
: Removing the deprecatedCheckReceiverMetrics
andCheckReceiverTraces
functions. (#12185)
π© Deprecations π©
componenttest
: Deprecated componenttest.TestTelemetry in favor of componenttest.Telemetry (#12419)connector, exporter, extension, processor, receiver, scraper
: Add type parameter toNewNopSettings
and deprecateNewNopSettingsWithType
(#12305)exporterhelper
: Deprecate MinSizeConfig and MaxSizeItems. (#12486)extension/extensionauth
: Deprecate methods on*Func
types. (#12480)extension/auth, extension/auth/authtest
: Deprecate extension/auth and the related test module in favor of extension/extensionauth (#12478)
π New components π
service/hostcapabilities
: createservice/hostcapabilities
module (#12296, #12375)
Removes getExporters interface in service/internal/graph.
Removes getModuleInfos interface in service/internal/graph.
Creates interface ExposeExporters in service/hostcapabilities to expose GetExporters function.
Creates interface ModuleInfo in service/hostcapabilities to expose GetModuleInfos function.
π‘ Enhancements π‘
exporterhelper
: Adds the config API to support serialized bytes based batching (#3262)configauth
: Add theomitempty
mapstructure tag to struct fields (#12191)
This results in unset fields not being rendered when marshaling.confighttp
: Add theomitempty
mapstructure tag to struct fields (#12191)
This results in unset fields not being rendered when marshaling.otelcol
: Converters are now available in thecomponents
command. (#11900, #12385)extension
: Mark module as stable (#11005)pcommon.Map
: preallocate go map in Map.AsRaw() (#12406)exporterhelper
: Stabilize exporter.UsePullingBasedExporterQueueBatcher and remove old batch sender (#12425)service
: Add theomitempty
mapstructure tag to struct fields (#12191)
This results in unset fields not being rendered when marshaling.
π§° Bug fixes π§°
v1.26.0/v0.120.0
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)
v1.25.0/v0.119.0
Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.119.0
End User Changelog
π Breaking changes π
exporterhelper
: Rename exporter span signal specific attributes (e.g. "sent_spans" / "send_failed_span") to "items.sent" / "items.failed". (#12165)cmd/mdatagen
: Remove dead fieldtelemetry::level
(#12144)exporterhelper
: Change exporter ID to be a Span level attribute instead on each event. (#12164)
This does not have an impact on the level of information emitted, but on the structure of the Span.cmd/mdatagen
: Removelevel
field from metrics definition (#12145)
This mechanism will be added back once a new views mechanism is implemented.
π‘ Enhancements π‘
configtls
: Allow users to mention their preferred curve types for ECDHE handshake (#12174)service
: remove custom code and instead use config package to instantiate meter provider. (#11611)otelcol
: Adds support for listing config providers in components command's output (#11570)general
: Reduce memory allocations when loading configuration and parsing component names (#11964)
π§° Bug fixes π§°
-
exporterhelper
: Fix bug that the exporter with new batcher may have been marked as non mutation. (#12239)
Only affects users that manually turned onexporter.UsePullingBasedExporterQueueBatcher
featuregate. -
service
: Preserve URL normalization logic that was present before. (#12254) -
confighttp
: confighttp.ToServer now sets ErrorLog with a default logger backed by Zap (#11820)This change ensures that the http.Server's ErrorLog is correctly set using Zap's logger at the error level, addressing the issue of error logs being printed using a different logger.
-
exporterhelper
: Fix context propagation for DisabledBatcher (#12231) -
mdatagen
: apply fieldalignment to generated code (#12125) -
mdatagen
: Fix bug where Histograms were marked as not supporting temporaly aggregation (#12168) -
exporterhelper
: Fix MergeSplit issue that ignores the initial message size. (#12257) -
service
: Include validation errors from telemetry.Config when validating the service config (#12100)
Previously validation errors were only printed to the console -
service-telemetry
: pass the missing async error channel into service telemetry settings (#11417)
API Changelog
π Breaking changes π
exporterhelper
: Change queue to embed the async consumers. (#12242)exporterqueue
: Change Queue interface to return a callback instead of an index (#8122)cmd/mdatagen
: Allow passing OTel Metric SDK options to the generatedSetupTelemetry
function. (#12166)exporterhelper
: Rename exporter span signal specific attributes (e.g. "sent_spans" / "send_failed_span") to "items.sent" / "items.failed". (#12165)component
: Change underlying type forcomponent.Kind
to be a struct. (#12214)extension
: Changeextension.Extension
to be an interface that embedscomponent.Component
instead of an alias (#11443)component/componenttest
: Remove deprecatedCheckScraperMetrics
functions (#12183)scraperhelper
: Remove deprecated ScrapperControllerOption and NewScraperControllerMetrics from scraperhelper. (#12147)
π© Deprecations π©
-
metadatatest
: Deprecate metadatatest.Telemetry in favor of componenttest.Telemetry (#12218)
metadatatest.Telemetry -> componenttest.Telemetry |
metadatatest.SetupTelemetry -> componenttest.NewTelemetry |
metadatatest.Telemetry.NewSettings -> metadatatest.NewSettings |
metadatatest.Telemetry.AssertMetrics -> metadatatest.AssertEqual* | -
component/componenttest
: DeprecateCheckExporterEnqueue*
functions in componenenttest (#12185)
Use themetadatatest.AssertEqualMetric
series of functions instead ofobsreporttest.CheckExporterEnqueue*
functions. -
component/componenttest
: Deprecate CheckExporterLogs in componenenttest (#12185)
Use themetadatatest.AssertEqualMetric
series of functions instead ofobsreporttest.CheckExporterLogs
-
component/componenttest
: Deprecate CheckExporterMetricGauge in componenenttest (#12185)
Use themetadatatest.AssertEqualMetric
series of functions instead ofobsreporttest.CheckReceiverMetricGauge
-
component/componenttest
: Deprecate CheckExporterMetrics in componenenttest (#12185)
Use themetadatatest.AssertEqualMetric
series of functions instead ofobsreporttest.CheckExporterMetrics
-
component/componenttest
: Deprecate CheckExporterTraces in componenenttest (#12185)
Use themetadatatest.AssertEqualMetric
series of functions instead ofobsreporttest.CheckExporterTraces
-
component/componenttest
: Deprecate CheckReceiverLogs in componenenttest (#12185)
Use themetadatatest.AssertEqualMetric
series of functions instead ofobsreporttest.CheckReceiverLogs
-
mdatagen
: Make registration of callback for async metric always optional. (#12204)
Deprecatemetadata.TelemetryBuilder.Init*
andmetadata.With*Callback
in favor ofmetadata.TelemetryBuilder.Register*Callback
-
component
: Deprecatecomponent.TelemetrySettings.MetricsLevel
in favor of using views and 'Enabled' method. (#12159)- Components will temporarily need the service to support using views.
π‘ Enhancements π‘
componenttest
: Add helper to get a metric for componentest.Telemetry (#12215)componenttest
: Extract componenttest.Telemetry as generic struct for telemetry testing (#12151)mdatagen
: Generate assert function for each metric in mdatagen (#12179)metadatatest
: Generate NewSettings that accepts componenttest.Telemetry (#12216)pdata/pprofile
: Add new helper methodFromAttributeIndices
to build apcommon.Map
out ofAttributeIndices
. (#12176)scraper
: Support logs scraper (#12116)component
: Allowcomponent.ValidateConfig
to recurse through all fields in a config object (#11524)component
: Show path to invalid config in errors returned fromcomponent.ValidateConfig
(#12108)
π§° Bug fixes π§°
v1.24.0/v0.118.0
Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.118.0
End User Changelog
π‘ Enhancements π‘
exporterhelper
: Add blocking option to control queue behavior when full (#12090)debugexporter
: Add EventName to debug exporter for Logs. EventName was added as top-level field in the LogRecord from 1.5.0 of proto definition. (#11966)confighttp
: Added support for configuring compression levels. (#10467)
A new configuration option called CompressionParams has been added to confighttp. | This allows users to configure the compression levels for the confighttp client.exporterhelper
: Change the memory queue implementation to not pre-allocate capacity objects. (#12070)
This change improves memory usage of the collector under low utilization and is a prerequisite for supporting different other size limitations (number of items, bytes).
π§° Bug fixes π§°
mdatagen
: apply fieldalignment to generated code (#12121)otelcoltest
: SetDefaultScheme
toenv
in the testConfigProvider
to replicate the default provider used by the Collector. (#12066)
API Changelog
π Breaking changes π
exporterqueue
: Change Queue Size and Capacity to return explicit int64. (#12076)receiver/scraperhelper
: Removing the deprecated receiver/scraperhelper package (#12054)processorteset
: Revert the nop_processor.NewNopSettings change, as it is no longer needed (#11433)experimental/storage
: Remove deprecated package/module experimental/storage (#12109)mdatagen
: Remove deprecated generated_component_telemetry_test file from being generated and delete it. (#12068)receivertest
: Remove deprecated receivertest.NewNopFactoryForType (#12110)
π© Deprecations π©
componenttest
: Deprecate CheckScraperMetrics in componenenttest (#12105)
Usemetadatatest.AssertMetrics
instead ofobsreporttest.CheckScraperMetrics
scraperhelper
: Deprecatescraperhelper.NewScraperControllerReceiver
andscraperhelper.ScraperControllerOption
. (#12103)
Usescraperhelper.NewMetricsController
instead ofscraperhelper.NewScraperControllerReceiver
| Usescraperhelper.ScraperControllerOption
instead ofscraperhelper.ControllerOption
π‘ Enhancements π‘
exporterhelper
: Add capability for memory and persistent queue to block when add items (#12074)scraper/scraperhelper
: Add obs_logs for scraper/scraperhelper (#12036)
This change adds obs for logs in scraper/scraperhelper, also introduced new metrics for scraping logs.mdatagen
: Add scraper component type support to mdatagen (#12092)mdatagen
: Add tracing support in metadatatest (#12106)exporterhelper
: Change persistent queue to not use sized channel, improve memory usage and simplify sized_channel. (#12060)confighttp
: Added support for configuring compression levels. (#10467)
A new configuration option called CompressionParams has been added to confighttp. | This allows users to configure the compression levels for the confighttp client.
v0.117.0
Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.117.0
End User Changelog
v1.23.0/v0.117.0
π Breaking changes π
π§° Bug fixes π§°
internal/sharedcomponent
: Fixed bug where sharedcomponent would use too much memory remembering all the previously reported statuses (#11826)
API Changelog
v1.23.0/v0.117.0
π Breaking changes π
pdata/pprofile
: Remove duplicate Attributes field from profile (#11932)connector
: Remove deprecated connectorprofiles module, use xconnector instead. (#11778)consumererror
: Remove deprecated consumererrorprofiles module, use xconsumererror instead. (#11778)consumer
: Remove deprecated consumerprofiles module, use xconsumer instead. (#11778)exporterhelper
: Remove deprecated exporterhelperprofiles module, use xexporterhelper instead. (#11778)exporter
: Remove deprecated exporterprofiles module, use xexporter instead. (#11778)pipeline
: Remove deprecated pipelineprofiles module, use xpipeline instead. (#11778)processorhelper
: Remove deprecated processorhelperprofiles module, use xprocessorhelper instead. (#11778)processor
: Remove deprecated processorprofiles module, use xprocessor instead. (#11778)receiver
: Remove deprecated receiverprofiles module, use xreceiver instead. (#11778)exporterhelper
: Remove Merge function from experimental Request interface (#12012)
π© Deprecations π©
mdatagen
: Deprecate component_test in favor of metadatatest (#11812)receivertest
: Deprecate receivertest.NewNopFactoryForType (#11993)extension/experimental
: Deprecate extension/experimental in favor of extension/xextension (#12010)scraperhelper
: Move scraperhelper under scraper and in a separate module. (#11003)