v0.103.0
The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.
End User Changelog
🛑 Breaking changes 🛑
-
cmd/opampsupervisor,extension/opamp
: Upgrade the opamp-go library to v0.15.0 (#33416)
With this change, UUIDv7 is recommended for the OpAMP extension's instance_uid field instead of ULID. ULIDs will continue to work, but may be displayed as UUIDs.
The supervisor's persistent state (${storage_dir}/persistent_state.yaml) will need to be cleared to generate a new UUIDv7 instead of a ULID.
This change may be incompatible with management servers using v0.14.0 of opamp-go. -
mongodbreceiver
: Now only supportsTCP
connections (#32199)
This fixes a bug where hosts had to explicitly settcp
as the transport type. Thetransport
option has been removed. -
cmd/configschema
: Removes the deprecatedconfigschema
command. This command will no longer be released or supported. (#33384) -
sqlserverreceiver
: sqlserver.database.io.read_latency has been renamed to sqlserver.database.latency with adirection
attribute. (#29865)
🚩 Deprecations 🚩
-
healthcheckextension
: Remove incorrect logic behindcheck_collector_pipeline
config (#33469)
This logic incorrectly set the pipeline to OK after waiting for enough callbacks from the
opencensus library to be called. As this was broken, I'm removing it to remove the dependency
on opencensus as well. Improvements will be available via healthcheckv2 extension. -
googlecloudspannerreceiver
: Mark the component as unmaintained. If we don't find new maintainers, it will be deprecated and removed. (#32651)
💡 Enhancements 💡
-
filelogreceiver
: If include_file_record_number is true, it will add the file record number as the attributelog.file.record_number
(#33530) -
kubeletstats
: Add k8s.pod.cpu.node.utilization metric (#33390) -
awss3exporter
: endpoint should contain the S3 bucket (#32774) -
awss3receiver
: Add support for encoding extensions to be used in the AWS S3 Receiver. (#30750) -
gitproviderreceiver
: Adds branch commit and line based metrics (#22028)
Adds the following branch based metrics.- git.repository.branch.time
- git.repository.branch.commit.aheadby.count
- git.repository.branch.commit.behindby.count
- git.repository.branch.line.deletion.count
- git.repository.branch.line.addition.count
-
statsdreceiver
: update statsd receiver to use mdatagen (#33524) -
coralogixexporter
: Allow setting application name fromcx.application.name
andcx.subsystem.name
resource attributes (#33217) -
metricstransformprocessor
: Adds the 'count' aggregation type to the Metrics Transform Processor. (#24978) -
elasticsearchexporter
: Add support for confighttp options, notably "auth". (#33367)
Add support for confighttp and related configuration settings, such as "auth".
This change also means that the Elasticsearch URL may be specified as "endpoint",
like the otlphttp exporter. -
elasticsearchexporter
: Check that endpoints are valid URLs during config validation. (#33350)
Check that endpoints are valid URLs during config validation so that
an invalid endpoint causes a fatal error during startup, rather than
leading to a persistent runtime error. -
opampsupervisor
: Add config validation for the supervisor config (#32843) -
statsdreceiver
: Added received/accepted/refused metrics (#24278) -
filelogreceiver
: Add support for gzip compressed log files (#2328) -
confmap/provider/secretsmanagerprovider
: Add support for JSON formatted secrets in secretsmanagerprovider confmap (#32143)
Thesecretsmanagerprovider
confmap will now allow to get secret by a json key if the secret value is json.
To specify key separate key from secret name/arn by#
e.g.mySecret#mySecretKey
. -
geoipprocessor
: Add initial processing based on source.address resource attribute (#32663) -
healthcheckv2extension
: Add shared aggregation logic for status events. (#26661) -
tailsamplingprocessor
: Simple LRU Decision Cache for "keep" decisions (#31583) -
processor/tailsampling
: Migrates internal telemetry to OpenTelemetry SDK via mdatagen (#31581)
The metric names and their properties, such as bucket boundaries for histograms, were kept like before, to keep backwards compatibility. -
kafka
: Addeddisable_fast_negotiation
configuration option for Kafka Kerberos authentication, allowing the disabling of PA-FX-FAST negotiation. (#26345) -
pkg/ottl
: Addedkeep_matching_keys
function to allow dropping all keys from a map that don't match the pattern. (#32989) -
OTel-Arrow
: Update to OTel-Arrow v0.24.0 (#26491) -
pkg/ottl
: Add debug logs to help troubleshoot OTTL statements/conditions (#33274) -
pkg/ottl
: Introducingappend
function for appending items into an existing array (#32141) -
pkg/ottl
: IntroducingUri
converter parsing URI string into SemConv (#32433) -
probabilisticsamplerprocessor
: Add Proportional and Equalizing sampling modes (#31918)
Both the existing hash_seed mode and the two new modes use OTEP 235 semantic conventions to encode sampling probability. -
prometheusreceiver
: Resource attributes produced by the prometheus receiver now include stable semantic conventions forserver
andurl
. (#32814)
To migrate from the legacy net.host.name, net.host.port, and http.scheme resource attributes, |
migrate to server.address, server.port, and url.scheme, and then |
set the receiver.prometheus.removeLegacyResourceAttributes feature gate. -
datadogexporter
: The Datadog Exporter now supports theproxy_url
parameter to configure an HTTP proxy to use when sending telemetry to Datadog. (#33316) -
spanmetrics
: Produce delta temporality span metrics with StartTimeUnixNano and TimeUnixNano values representing an uninterrupted series (#31671, #30688)
This allows producing delta span metrics instead of the more memory-intensive cumulative metrics, specifically when a downstream component can convert the delta metrics to cumulative. -
sqlserverreceiver
: Add support for more Database IO metrics (#29865)
The following metrics have been added:- sqlserver.database.latency
- sqlserver.database.io
- sqlserver.database.operations
-
cmd/opampsupervisor
: Receive and report effective config to the OpAMP server (#30622) -
processor/transform
: Addtransform.flatten.logs
featuregate to give each log record a distinct resource and scope. (#32080)
This option is useful when applying transformations which alter the resource or scope. e.g.set(resource.attributes["to"], attributes["from"])
, which may otherwise result in unexpected behavior. Using this option typically incurs a performance penalty as the processor must compute many hashes and create copies of resource and scope information for every log record. -
receiver/windowsperfcounters
: Counter configuration now supports recreating the underlying performance query at scrape time. (#32798)
🧰 Bug fixes 🧰
filelogreceiver
: Container parser should add k8s metadata as resource attributes and not as log record attributes (#33341)deltatocumulative
: properly drop samples when at limit (#33285)
fixes a segfault in the limiting behavior, where streams exceeding the limit still had their samples processed. due to not being tracked, this led to a nil-pointer derefpostgresqlreceiver
: Fix bug wherepostgresql.rows
always returning 0 forstate="dead"
(#33489)prometheusreceiver
: Fall back to scrape config job/instance labels for aggregated metrics without instance/job labels (#32555)elasticsearchexporter
: Duplicate Key in JSON (#33454)logzioexporter
: Fix issue where log attributes were not correctly exported (#33231)exporter/datadog
: Prevents collector shut down when Datadog logs pipeline fails to validate API key (#33195)
API Changelog
🛑 Breaking changes 🛑
stanza
: remove deprecated code (#33519)
This change removes:- adapter.LogEmitter, use helper.LogEmitter instead
- adapter.NewLogEmitter, use helper.NewLogEmitter instead
- fileconsumer.Manager's SugaredLogger struct member
- pipeline.DirectedPipeline's SugaredLogger struct member
- testutil.Logger, use zaptest.NewLogger instead
💡 Enhancements 💡
pkg/winperfcounters
: It is now possible to force awatcher
to re-create the PDH query of a given counter via theReset()
function. (#32798)