This Splunk OpenTelemetry Collector release includes changes from the opentelemetry-collector v0.131.0
and the opentelemetry-collector-contrib v0.131.0 releases where appropriate.
🛑 Breaking changes 🛑
- (Splunk)
receiver/discovery
: Discovery receiver no longer supports settingstatus
andservice_type
options. They are now pre-defined for each receiver type. (#6530) (Not included in the v0.131.0 Chocolatey Package) - (Splunk)
discovery
: Thesplunk.continuousDiscovery
feature flag, enabled by default since v0.118.0, is now stable. The feature gate has been removed, and default behavior remains unchanged. - (Splunk) Remove, already deprecated,
collectd/consul
monitor. Please follow the documentation at https://developer.hashicorp.com/consul/docs/agent/monitor/telemetry to set up with statsd or prometheus receivers. (#6505) - (Splunk) Remove, already deprecated,
collectd/genericjmx
and all related monitors. Please use the jmxreceiver instead with the appropriate target system.
Removed monitors that relied oncollectd/genericjmx
(#6510):collectd/activemq
replace withactivemq
target with the jmxreceiver.collectd/cassandra
replace withcassandra
target with the jmxreceiver.collectd/hadoop
replace withhadoop
target with the jmxreceiver.collectd/kafka
replace withkafka
target with the jmxreceiver.collectd/kafka-consumer
replace withkafka
target with the jmxreceiver.collectd/kafka-producer
replace withkafka
target with the jmxreceiver.collectd/solr
replace withsolr
target with the jmxreceiver.collectd/tomcat
replace withtomcat
target with the jmxreceiver.
- (Splunk) Remove, already deprecated,
collectd/mysql
monitor. Use the mysql receiver instead. (#6487) - (Core)
confighttp
: Moveconfighttp.framedSnappy
feature gate to beta. (#10584) - (Contrib)
iisreceiver
: Enable IIS Application Pool state and uptime metrics by default. (#34924)
WARNING: This change enables theiis.application_pool.state
andiis.application_pool.uptime
metrics by default.
This may cause a significant increase in the number of metrics collected if you have many application pools.
If you are concerned about the number of metrics, you can disable these metrics in your configuration.
🚩 Deprecations 🚩
- (Splunk) The collectd/couchbase plugin is deprecated. Please use the prometheus receiver instead. See https://docs.couchbase.com/server/current/manage/monitor/set-up-prometheus-for-monitoring.html for more information. This plugin will be removed by the end of October 2025. (#6488)
- (Splunk) The collectd/jenkins plugin is deprecated. Please see https://plugins.jenkins.io/opentelemetry/ to enable OpenTelemetry signals. This plugin will be removed by the end of October 2025. (#6489)
- (Splunk) The collectd/rabbitmq plugin is deprecated. Please use the rabbitmq receiver instead.
This plugin will be removed by the end of October 2025. (#6490) - (Splunk) The collectd/redis plugin is deprecated. Please use the redis receiver instead.
This plugin will be removed by the end of October 2025. (#6491) - (Splunk) The collectd/spark plugin is deprecated. Please use the apache spark receiver instead.
This plugin will be removed by the end of October 2025. (#6494) - (Contrib)
kafkaexporter
: Improve kafkaexporter internal metrics telemetry consistency, measure latency in seconds (#41108)
Improve internal metrics telemetry consistency:
kafka_broker_throttling_duration is deprecated in favor of kafka_broker_throttling_latency
kafka_exporter_latency is deprecated in favor of kafka_exporter_write_latency
kafka_exporter_messages is deprecated in favor kafka_exporter_records
💡 Enhancements 💡
- (Splunk)
discovery
: Enable nginx discovery on Windows (#6500) - (Splunk) Update
splunk-otel-javaagent
tov2.18.0
(#6481) - (Splunk) Update
jmx-metric-gatherer
tov1.48.0
(#6482) - (Core)
exporter/debug
: Move to alpha stability except profiles (#13487) - (Core)
exporterhelper
: Enableexporter.PersistRequestContext
feature gate by default. (#13437)
Request context is now preserved by default when using persistent queues.
Note that Auth extensions context is not propagated through the persistent queue. - (Core)
otlpreceiver
: Remove usage of gogo proto which uses reflect.Value.MethodByName. Removes one source of disabling DCE. (#12747) - (Core)
exporterhelper
: Fix metrics split logic to consider metrics description into the size. (#13418) - (Core)
service
: New pipeline instrumentation now differentiates internal failures from downstream errors (#13234)
With the telemetry.newPipelineTelemetry feature gate enabled, the "received" and "produced"
metrics related to a component now distinguish between two types of errors:- "outcome = failure" indicates that the component returned an internal error;
- "outcome = refused" indicates that the component successfully emitted data, but returned an
error coming from a downstream component processing that data.
- (Core)
pdata
: Remove usage of text/template from pdata, improves DCE. (#12747) - (Core)
architecture
: New Tier 3 platform riscv64 allowing the collector to be built and distributed for this platform. (#13462) - (Contrib)
jmxreceiver
: Add support for jmx-scraper JARs (#37469) - (Contrib)
awss3exporter
: Add a new configurationresource_attrs_to_s3/s3_bucket
to enable mapping OTel resource attributes to s3 bucket (#40321) - (Contrib)
awss3exporter
: Add support for UUIDv7 as a unique key function in the S3 exporter. (#40515) - (Contrib)
httpcheckreceiver
: Add TLS certificate checking capability for HTTPS endpoints. (#35968)
The receiver can collect TLS certificate metrics including time remaining until expiry, issuer, common name, and SANs.
If the HttpCheckTLSCertRemaining metric is enabled and the endpoint is HTTPS, it will collect the certificate metrics. - (Contrib)
httpcheckreceiver
: Remove unnecessary status codes (#38564)
The httpcheckreceiver now removes the http.status_code attribute from httpcheck.status metrics
when the metric value is 0, as per the feature request to avoid redundant status codes. - (Contrib)
processor/k8sattributes
: Support extracting labels and annotations from k8s StatefulSets (#37957) - (Contrib)
mysqlreceiver
: Support query-level collection. (#40965)
Added query sample collection. The query will gather the queries that were currently running at the moment when scraping is happening.
The number of collected queries can be configured. This will enable user to have better understanding on what is going on with the database.
This enhancement empowers users to not only monitor but also actively manage and optimize their MSSQL database performance based on real usage patterns. - (Contrib)
mysqlreceiver
: Add the total number of buffer pool pages (#41252) - (Contrib)
oracledbreceiver
: Add 'oracledb.logons' metric (#41067) - (Contrib)
oracledbreceiver
: Support query-level log collection, fetching query samples. (#37478)
With the introduction of query level log collection, details about currently running queries can be collected.
The maximum number of queries to be collected can be configured. This feature helps the user to have a better understanding of the database operations. - (Contrib)
oracledbreceiver
: Support query-level log collection, fetching top N query metrics. (#37478)
With the introduction of query level log collection, the oracledbreceiver can now send metrics for Top N queries,
filtered based on the highest CPU time consumed. The number of queries can be configured. This helps the user to have
a better understanding of the database operations. - (Contrib)
pkg/ottl
: Add support for combiningscope
with other OTTL contexts. (#39308)
Previously, OTTL paths could only use theinstrumentation_scope
context when combined with
lower-level contexts likelog
ormetric
. This change allows thescope
context to be
used interchangeably withinstrumentation_scope
, improving flexibility and consistency. - (Contrib)
pkg/ottl
: Added a newValues
OTTL Function. (#41243) - (Contrib)
pkg/ottl
: Allow optional KeyPath in OTTL SliceToMap function. (#41390) - (Contrib)
postgresqlreceiver
: Addpostgresql.function.calls
metric. (#40969)
Requirestrack_functions=pl|all
in Postgres config - (Contrib)
postgresqlreceiver
: Add 'postgresql.temp.io' metric (#41365)
The metric emits the amount of data written to temporary files. - (Contrib)
kafkaexporter
: Add profiles support (#41369) - (Contrib)
prometheusreceiver
: Add retry logic for connection refused errors so the collector doesn't crash at startup. (#40982)
This change adds retry logic for connection refused errors. The target allocator could be
busy starting up the receiver and the first connection attempt may fail. - (Contrib)
receiver/prometheus
: Add support for otel_scope_schema_url label mapping to OpenTelemetry ScopeMetrics schema URL field (#41488) - (Contrib)
architecture
: New Tier 3 platform riscv64 allowing the collector to be built and distributed for this platform. (#41507) - (Contrib)
redactionprocessor
: The newredact_all_types
option redacts all field types after casting them to string. (#36684) - (Contrib)
sqlserverreceiver
: Add 'sqlserver.computer.uptime' metric (#41207) - (Contrib)
sqlserverreceiver
: Make queries compatible with Azure SQL Database and Azure SQL Managed Instance. (#41102) - (Contrib)
telemetrygen
: Adds a new telemetrygen flag to generate unique timestamps for within a second interval (#39933)
🧰 Bug fixes 🧰
- (Core)
exporterhelper
: Prevents the exporter for being stuck when telemetry data is bigger than batch.max_size (#12893) - (Core)
service
: Downgrade dependency of prometheus exporter in OTel Go SDK (#13429)
This fixes the bug where collector's internal metrics are emitted with an unexpected suffix in their names when users configure the service::telemetry::metrics::readers with Prometheus - (Core)
service
: Revert Default internal metrics config now enablesotel_scope_
labels (#12939, #13344)
Reverting change temporarily due to prometheus exporter downgrade. This unfortunately re-introduces the bug that instrumentation scope attributes cause errors in Prometheus exporter. See http://github.com/open-telemetry/opentelemetry-collector/issues/12939 for details. - (Core)
builder
: Remove undocumented handling ofDIST_*
environment variables replacements (#13335) - (Contrib)
tailsamplingprocessor
: Numeric-range values, if zero, are properly treated as unset. (#41562) - (Contrib)
filestorageextension
: Add an option to recreate databse if the database file is corrupted. (#35899) - (Contrib)
receiver/prometheus
: Fix otel_scope_name and otel_scope_version labels not being dropped from metric attributes ([#41456](https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/ 41456)) - (Contrib)
ottlprofile
: Fix the handling of references to location. (#41466) - (Contrib)
splunkenterprisereceiver
: Add test for empty string response on search artifact metrics & fix unmarshall error ([#41288](https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/ 41288)) - (Contrib)
awss3exporter
: Fixed panic error when more than 1 exporter is in the pipeline with s3 exporter (#41262)
Docker Image Manifests:
- Linux (amd64, arm64, ppc64le) and Windows (2019 amd64, 2022 amd64):
quay.io/signalfx/splunk-otel-collector:0.131.0
- digest:
sha256:8656bb6be1702f0621d4b8c6becca6b4f4487337b1e0b5beaf7bb57872df01e4
- Windows (2019 amd64, 2022 amd64):
quay.io/signalfx/splunk-otel-collector-windows:0.131.0
- digest:
sha256:2983cc812643e2168cb204fd38f0ae851fc6ca8c1c910cedf2f884807f53148f