v0.104.0
The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.
- The
otlpreceivernow useslocalhostby default instead of0.0.0.0. This may break the receiver in containerized environments like Kubernetes. If you depend on0.0.0.0disable thecomponent.UseLocalHostAsDefaultHostfeature gate or explicitly set the endpoint to0.0.0.0. This change also affects contrib components which are listed in the release notes below. - Expansion of BASH-style environment variables, such as
$FOOis no longer supported by default. If you depend on this syntax, disable theconfmap.unifyEnvVarExpansionfeature gate, but know that the feature will be removed in the future in favor of${env:FOO}.
End User Changelog
🛑 Breaking changes 🛑
-
sumologicexporter: removed compress_encoding (#33604) -
exporter/clickhouse: Change behavior of how default database is read from the config (#33693)
Changed the defaultdatabasetodefault.
The final database will prioritizeendpoint, unlessdatabaseis set to a value not equal todefault.
If neither are specified then it defaults to thedefaultdatabase.
Possible breaking change if someone has the DSN configured in combination withdatabaseconfig option. -
exporter/clickhouse: Addasync_insertconfig option to enable inserting asynchronously by default. (#33614)
Addsasync_insertconfig option to enable inserting asynchronously by default.
To preserve the previous behavior, setasync_inserttofalsein your config.
When enabled, the exporter will insert asynchronously, which can improve performance for high-throughput deployments.
Theasync_insertoption can be set totrueorfalseto enable or disable async inserts, respectively. The default value istrue.
Keep in mind this setting is added since the exporter now sets it to default.
Async insert and its related settings can still be defined inendpointandconnection_params, which take priority over the new config option. -
clickhouseexporter: AddAggregationTemporalitycolumn to histogram and exponential histogram tables. RenameAggTempcolumn toAggregationTemporalityin sum table. (#33424)
It's a breaking change. users who upgrade to the latest version need to alter the Clickhouse table:ALTER TABLE otel_metrics_exponential_histogram ADD COLUMN AggregationTemporality Int32 CODEC(ZSTD(1)); ALTER TABLE otel_metrics_histogram ADD COLUMN AggregationTemporality Int32 CODEC(ZSTD(1)); ALTER TABLE otel_metrics_sum RENAME COLUMN AggTemp TO AggregationTemporality;
-
exporter/clickhouse: Remove deprecatedttl_daysconfig option, usettlinstead. (#33648) -
vcenterreceiver: Drops support for vCenter 6.7 (#33607) -
all: Promotecomponent.UseLocalHostAsDefaultHostfeature gate to beta. This changes default endpoints from 0.0.0.0 to localhost (#30702)
This change affects the following components:- extension/awsproxy
- extension/health_check
- extension/health_checkv2
- extension/jaegerremotesampling
- internal/aws/proxy
- processor/remotetap
- receiver/awsfirehose
- receiver/awsxray
- receiver/influxdb
- receiver/jaeger
- receiver/loki
- receiver/opencensus
- receiver/sapm
- receiver/signalfx
- receiver/skywalking
- receiver/splunk_hec
- receiver/zipkin
- receiver/zookeeper
-
receiver/mongodb: Graduate receiver.mongodb.removeDatabaseAttr feature gate to stable (#24972)
🚩 Deprecations 🚩
exporter/elasticsearch: Deprecate the "dedot" configuration. (#33772)
dedot has been deprecated, and will always be enabled in ECS mode and disabled for other modes in futureexporter/elasticsearch: Deprecate the "dedup" configuration. (#33773)
dedup has been deprecated, and will always be enabled in future.
🚀 New components 🚀
otelarrow: OTel-Arrow exporter and receiver are marked alpha, added to otelcontribcol (#26491)
💡 Enhancements 💡
-
exporter/elasticsearch: Add initial support for metrics (#33513) -
elasticsearchexporter: Add translation for k8s.deployment.name resource attribute (#33622) -
k8sattributesprocessor: Add support for exposingk8s.pod.ipas a resource attribute (#32960) -
geoipprocessor: Add MaxMind geoip provider for GeoIP2-City and GeoLite2-City databases. (#32663) -
vcenterreceiver: Adds vCenter CPU readiness metric for VMs. (#33607) -
awsemfexporter: AWS EMF Exporter to add AppSignals metadata flag into the user-agent (#32998) -
receiver/mongodb: Ensure support of 6.0 and 7.0 MongoDB versions with integration tests (#32716) -
sumologicexporter: added timeout validation (#33151) -
clickhouseexporter: Updated the default logs table to a more optimized schema (#33611)
Simplified data types, improved partitioning and time range queries. -
datadogconnector: Add a feature gateconnector.datadogconnector.NativeIngestthat enables datadog connector to use the new native OTel API in APM stats computation. (#33297)
The feature gateconnector.datadogconnector.NativeIngestis disabled by default. -
datadogexporter: Adds Kubernetes DD tags to keep when mapping resource attributes (#33728)
See DataDog/opentelemetry-mapping-go#334 for details. -
exporter/elasticsearch: Add data stream routing (#33794, #33756)
data_stream.datasetanddata_stream.namespacein attributes will be respected when config*_dynamic_index.enabledis true. -
exporter/elasticsearch: Encode metrics resource attributes in ECS mapping mode (#33823) -
elasticsearchexporter: Preservehost.nameresource attribute in ECS mode (#33670) -
servicegraphprocessor: Added a new configuration optionenable_virtual_node_labelto allow users to identify which node is the virtual node in each edge of the service graph. (#31889) -
pkg/stanza: Switch JSON parser used by json_parser to github.com/goccy/go-json (#33784) -
k8sobserver: Add support for k8s.ingress endpoint. (#32971) -
statsdreceiver: Optimize statsdreceiver to reduce object allocations (#33683) -
routingprocessor: Use mdatagen to define the component's telemetry (#33526) -
loadbalancerexporter: Refactors how the load balancing exporter splits metrics (#32513)
All splitting is behaviorally, the same. However, theresourceroutingID now uses theinternal/exp/metrics/identitypackage to generate the load balancing key, instead of bespoke code. This means that when upgrading to this version your routes for specific metric groupings could change. However, this will be stable and all future metrics will follow the new routing -
receiver/mongodbreceiver: Addserver.addressandserver.portresource attributes to MongoDB receiver. (#32810, #32350)
The new resource attributes are added to the MongoDB receiver to distinguish metrics coming from different MongoDB instances.server.address: The address of the MongoDB host, enabled by default.server.port: The port of the MongoDB host, disabled by default.
-
observerextension: Expose host and port in endpoint's environment (#33571) -
rabbitmqexporter: Promote rabbitmqexporter to alpha. (#33331) -
pkg/ottl: Add aschema_urlfield to access the SchemaURL in resources and scopes on all signals (#30229) -
solacereceiver: Renamed some SemConv fields to support latest semantic conventions for messaging spans (version1.25.0) (#33499) -
sqlserverreceiver: Enable more perf counter metrics when directly connecting to SQL Server (#33420)
This enables the following metrics by default on non Windows-based systems:
sqlserver.batch.request.rate
sqlserver.batch.sql_compilation.rate
sqlserver.batch.sql_recompilation.rate
sqlserver.page.buffer_cache.hit_ratio
sqlserver.user.connection.count -
extension/googleclientauth: Add Google-signed ID token support (#33185)
Update github.com/GoogleCloudPlatform/opentelemetry-operations-go/extension/googleclientauth to v0.48.0.
With this update, extension/googleclientauth now supports Google-signed ID token as auth header. -
vcenterreceiver: Adds vCenter CPU capacity and network drop rate metrics to hosts. (#33607)
🧰 Bug fixes 🧰
-
resourcedetectionprocessor: Fetch CPU info only if related attributes are enabled (#33774) -
datasetexporter: Upgrade dataset-go to v0.19.0 and fix found issues (#33498, #32533, #33675)
Upgradedataset-golibrary from v0.18.0 to v0.19.0.
Enable skipped integration test and adjust the test so it is passing again.
Do not validate configuration, let the framework run the validation. -
datasetexporter: Upgrade dataset-go to v0.20.0 (#33812)
Upgradedataset-golibrary from v0.19.0 to v0.20.0.
Make number of outgoing connections configurable. -
datadogexporter: Fix panics on invalid sized trace & span IDs (#33566)
See DataDog/opentelemetry-mapping-go#340 for details. -
datadogexporter: Ignore metric datapoints withno recorded valueflag (#33728)
This flag is not supported by Datadog, so we just ignore these datapoints. See DataDog/opentelemetry-mapping-go#330 for details. -
tailsamplingprocessor: Fix precedence of inverted match in and policy (#33671)
Previously if the decision from a policy evaluation wasNotSampledorInvertNotSampledit would return aNotSampleddecision regardless, effectively downgrading the result.This was breaking the documented behaviour that inverted decisions should take precedence over all others.
-
otelarrowreceiver: Ensure consume operations are not canceled at stream EOF. (#33570) -
vcenterreceiver: Fixes errors in some of the client calls for environments containing multiple datacenters. (#33734)
API Changelog
🛑 Breaking changes 🛑
exporter/clickhouse: Unexport extra configuration methods. (#33647)exporter/clickhouse: Change internal config type forcreate_schemato use aboolinstead of*bool(#33694)pkg/ottl: Changed ScopeContext, InstrumentationResourceContext, TransformContext interfaces to make SchemaURL accessible in resources and scopes on all signals (#30229)
💡 Enhancements 💡
pkg/ottl: Add ByteSliceLikeGetter interface (#31929)