Releases: signalfx/splunk-otel-collector
v0.134.0
This Splunk OpenTelemetry Collector release includes changes from the opentelemetry-collector v0.134.0
and the opentelemetry-collector-contrib v0.134.0 releases where appropriate.
🛑 Breaking changes 🛑
- (Splunk)
configconverter: Removenormalize_gcpconfig converter (#6695)
Upgrades from below v0.69.0 to v0.69.0 or above will no longer handle GCP config conversion.
This is relevant for the resourcedetection processor, if a user was using thegceor
gkedetectors. Please refer to the
upgrade guide
for information on how to resolve. - (Splunk, Contrib)
routingprocessor: Remove deprecated component routingprocessor (#6634, #19739)
Please use the routing connector instead. - (Contrib)
pkg/ottl: Keep the original map and continue processing keys if an error is encountered when calling an optional replacement function inreplace_all_patterns. (#42359)
🚀 New components 🚀
- (Splunk)
dockerstatsreceiver: Added thedocker_statsreceiver to the Splunk distribution of the OpenTelemetry Collector. (#6621)
Thedocker_statsreceiver
queries the local Docker daemon's container stats API for all desired running containers on a configured interval.
These stats are for container resource usage of cpu, memory, network, and the blkio controller.
💡 Enhancements 💡
- (Splunk)
zpagesextension: Expose collector configuration via thezpagesextension. (#6595)
The endpoint exposed by thezpagesextension is now configured expose the collector configurations
(initial and effective) via theexpvarzendpoint, e.g.: http://localhost:55679/debug/expvarz
for the defaultzpagesconfiguration. The endpoint contents is a JSON map in which the keys
splunk.config.initialandsplunk.config.effectivecontains a string with the respective
configuration YAML. This will be the replacement when the config debug endpoint is removed
in the future. Theexpvarzendpoint can be disabled directly on the configuration file
or via the command-line flags by use of--set=extensions.zpages.expvar.enabled=false
when using the default configurations of the Splunk collector. - (Splunk)
logs: Added a new optional environment variable to the default Linux logs configuration file (#6656)
The new variable isSPLUNK_FILE_STORAGE_EXTENSION_PATH, which is used for
setting where the filelog receiver's checkpoint files are stored. The default value
for this flag is/var/lib/otelcol/filelogs. This is only relevant for the
logs_config_linux.yamlconfiguration file at this time. - (Splunk)
instrumentation: Updatesplunk-otel-javaagenttov2.19.0(#6635) - (Core)
pdata: Add custom grpc/encoding that replaces proto and calls into the custom marshal/unmarshal logic in pdata. (#13631)
This change should not affect other gRPC calls since it fallbacks to the default grpc/proto encoding if requests are not pdata/otlp requests. - (Core)
pdata: Avoid copying the pcommon.Map when same origin (#13731)
This is a very large improvement if using OTTL with map functions since it will avoid a map copy. - (Core)
exporterhelper: Respectnum_consumerswhen batching and partitioning are enabled. (#13607) - (Core)
otlphttpexporter: Addprofiles_endpointconfiguration option to allow custom endpoint for profiles data export (#13504)
Theprofiles_endpointconfiguration follows the same pattern astraces_endpoint,metrics_endpoint, andlogs_endpoint.
When specified, profiles data will be sent to the custom URL instead of the default{endpoint}/v1development/profiles. - (Core)
pdata: Add support for local memory pooling for data objects. (#13678)
This is still an early experimental (alpha) feature. Do not recommended to be used production. To enable use "--featuregate=+pdata.useProtoPooling" - (Core)
pdata: Optimize CopyTo messages to avoid any copy when same source and destination (#13680) - (Core)
receiverhelper: New feature flag to make receiverhelper distinguish internal vs. downstream errors using newotelcol_receiver_failed_xandotelcol_receiver_requestsmetrics (#12207, #12802)
This is a breaking change for the semantics of the otelcol_receiver_refused_metric_points, otelcol_receiver_refused_log_records and otelcol_receiver_refused_spans metrics.
These new metrics and semantics are enabled through thereceiverhelper.newReceiverMetricsfeature gate. - (Core)
debugexporter: Add support for entity references in debug exporter output (#13324) - (Core)
pdata: Fix unnecessary allocation of a new state when adding new values to pcommon.Map (#13634) - (Core)
service: Implement refcounting for pipeline data owned memory. (#13631)
This feature is protected by--featuregate=+pdata.useProtoPooling. - (Core)
service: Add a debug-level log message when a consumer returns an error. (#13357) - (Core)
xpdata: Optimize xpdata/context for persistent queue when only one value for key (#13636) - (Core)
otlpreceiver: Log the listening addresses of the receiver, rather than the configured endpoints. (#13654) - (Core)
pdata: Use the newly added proto marshaler/unmarshaler for the official proto Marshaler/Unmarshaler (#13637)
If any problems observed with this consider to disable the featuregate--feature-gates=-pdata.useCustomProtoEncoding
- (Core)
configtls: Enable X25519MLKEM768 as per draft-ietf-tls-ecdhe-mlkem (#13670) - (Contrib)
k8sclusterreceiver: Add optional experimental k8s.container.status.state metric (#32457) - (Contrib)
kafkareceiver: Addon_permanent_erroroption tomessage_markingconfiguration. (#41333) - (Contrib)
filelogreceiver: Move filelog.decompressFingerprint feature gate to beta stage (#42189) - (Contrib)
httpcheckreceiver: Add request body to http requests (#41325)
The httpcheckreceiver can be configured to send a request body to the target endpoint. - (Contrib)
tailsamplingprocessor: Optimize telemetry collection in tailsamplingprocessor (#41888) - (Contrib)
oracledbreceiver: Add support for Oracle DB receiver to read session action as trace context. (#41878) - (Contrib)
oracledbreceiver: Removing the toLowercase conversion on sql text in top_query payload. Also, adding child_address into the query_samples payload. (#37478) - (Contrib)
prometheusreceiver: Remove temporary fix for metric name validation, fix upstream resolved (#42004) - (Contrib)
tailsamplingprocessor: Add a new option to block on num traces overflow. (#41546) - (Contrib)
httpcheckreceiver: Add response body validation (#41325)
The httpcheckreceiver now supports validating the response body using a few approaches.
String matching, JSON path matching, size ranges, and regex matching are supported. - (Contrib)
httpcheckreceiver: Fix race for timing of request steps (#42042)
The httpcheckreceiver uses atomic operations to track t...
v0.132.0
This Splunk OpenTelemetry Collector release includes changes from the opentelemetry-collector v0.132.0
and the opentelemetry-collector-contrib v0.132.0 releases where appropriate.
🛑 Breaking changes 🛑
- (Contrib)
receiver/azuremonitor: Updatedappend_tags_as_attributesconfiguration type from boolean to array (#40988) - (Contrib)
receiver/googlecloudpubsub: Removed built-in support for cloud_logging and raw_text encoding (#41812) - (Contrib)
receiver/postgresql: Unified configuration and enabled events by default (#41700)- Removed the existing
query_sample_collection.enabledandtop_query_collection.enabledflags in favor of using the field generated by mdatagen. - Both collections are now enabled by default.
- Removed the existing
🚩 Deprecations 🚩
- (Core)
service: Movedservice.noopTraceProviderfeature gate to deprecated stage (#13492)
The functionality of the feature gate is available via configuration with the following telemetry settings:service: telemetry: traces: level: none
- (Core)
service: Deprecatedtelemetry.disableHighCardinalityMetricsfeature gate (#13537) - (Contrib)
receiver/kafka: Improved internal metrics telemetry, deprecated some existing metrics (#41109)
💡 Enhancements 💡
- (Core)
confighttp: Added option to configure ForceAttemptHTTP2 (#13426) - (Core)
pdata: Avoided unnecessary buffer copy when JSON marshal fails (#13598) - (Core)
processorhelper: Added processor internal duration metric (#13231) - (Contrib)
exporter/kafka: Enrich kafkaexporter errors with topic (#41691) - (Contrib)
exporter/kafka: Use exporterhelper'sWithQueueBatchand configure batch partitioner based on configured metadata keys (#41775) - (Contrib)
pkg/ottl: AddUUIDv7function to generate v7 UUIDs. (#41268) - (Contrib)
pkg/stanza: Add support for batch processing in most operators (#39575)
The following operators now support batching:add,assign_keys,copy,flatten,move,
regex_replace,remove,retain,unquotejson_parser,json_array_parser,key_value_parser,
regex_parser,scope_name,severity,timestamp,trace_parser,uri_parser.
The following operators do not support batching yet:container,csv_parser,filter,recombine,router,syslog. - (Contrib)
processor/redaction: Add database sanitization capability to the redaction processor. (#41647) - (Contrib)
processor/tailsampling: Adddecisionattribute to metrics tracking sampling decisions (#41819)
Possible values for thedecisionattribute aresampled,not_sampledanddropped - (Contrib)
processor/transform: Introduce convert_summary_quantile_val_to_gauge() function (#33850) - (Contrib)
receiver/filelog: Add a new setting,polls_to_archive, to control the number of poll cycles to store on disk, rather than being discarded. (#32727)
Ifpolls_to_archivesetting is used in conjunction withstoragesetting, file offsets older than three poll cycles are stored on disk rather than being discarded.
This feature enables the receiver to remember file for a longer period and also aims to use limited amount of memory. - (Contrib)
receiver/httpcheck: Add detailed timing metrics (#41379)
The timing metrics added to the receiver now include durations for dns lookup, tcp connection, tls handshake, request, and response. - (Contrib)
receiver/k8sobjects: Introducesinclude_initial_statefor watch mode, so the existing state of watched objects emitted as log events. (#41536) - (Contrib)
receiver/kafka,exporter/kafka: Allow to configure the metdata refresh interval when using the franz-go client. (#41088) - (Contrib)
receiver/mysql: Add 'mysql.page_size' metric (#41572) - (Contrib)
receiver/oracledb: Add options and child_address into oracle plan (#37478)
Adding options and child_address into oracle plan to enhance the details - (Contrib)
receiver/oracledb: Moving child_address from plan details to attributes in top N query collection. (#37478)
🧰 Bug fixes 🧰
- (Core)
pdata: Fixed null pointer access when copying into a slice (#13523) - (Core)
confighttp: Fixed middleware configuration field name (#13444) - (Core)
processor/memorylimiter: Improved shutdown handling (#9687) - (Core)
confighttp: Reused zstd Reader objects (#11824) - (Contrib)
connector/routing: Add support for theIsRootSpanOTTL function. (#41462) - (Contrib)
connector/spanmetrics: Adds a default maximum number of exemplars within the metric export interval. (#41679) - (Contrib)
exporter/awss3: Fixes S3 path joining in the AWS S3 exporter to ensure correct partitioning and prefix handling. (#41675) - (Contrib)
exporter/splunkhec: Do not log entries if they are rejected as too long (#41575) - (Contrib)
receiver/awscontainerinsight: Set Aws config in the info to pass the creds (#41799) - (Contrib)
receiver/jmx: fix sha256sum for opentelemetry-jmx-scraper-1.48.0-alpha.jar (#41864) - (Contrib)
receiver/solace: The Solace receiver may leak memory on reporting traces when used under high load. (#41792) - (Contrib)
receiver/splunkenterprise: fixes behavior of kvstore metrics scraper (#41527) - (Contrib)
receiver/splunkhec: Accept dashes in metric names (#41127) - (Contrib)
receiver/statsd: Fixes a bug when storing k8s.pod.ip in the metrics. Previously otelcol IP was used instead of the client IP. (#41361, #41362) - (Contrib)
receiver/vcenter: Fixes a potential NPE during VM collection (#41018)
Docker Image Manifests:
- Linux (amd64, arm64, ppc64le) and Windows (2019 amd64, 2022 amd64):
quay.io/signalfx/splunk-otel-collector:0.132.0- digest:
sha256:4808cf834669e49bb95a028dfa521e21231d711ac1eab3db46681c81ec2f512a- Windows (2019 amd64, 2022 amd64):
quay.io/signalfx/splunk-otel-collector-windows:0.132.0- digest:
sha256:a94bf72d6adb8f8a547b085a69f18b70c0e3f68e3eb11fbc143da1dbd5d1a95e
v0.131.3
🛑 Breaking changes 🛑
smartagent/jaeger-grpc: Remove, already deprecated,jaeger-grpcmonitor. Please use the jaeger receiver instead. (#6601)
To use the OTel-native jaeger receiver with the same port used by default by the jaeger-grpc monitor, apply the following config:receivers: jaeger: protocols: grpc: endpoint: localhost:14250
🚩 Deprecations 🚩
smartagent/kubelet-metrics: The kubelet-metrics monitor is deprecated and will be removed by the end of October 2025. Please use the kubeletstats receiver instead. (#6599)smartagent/kubelet-stats: The kubelet-stats monitor is deprecated and will be removed by the end of October 2025. Please use the prometheus receiver instead. (#6597)smartagent/cadvisor: The cadvisor monitor is deprecated and will be removed by the end of October 2025. Please use the prometheus receiver instead. (#6597)
Docker Image Manifests:
- Linux (amd64, arm64, ppc64le) and Windows (2019 amd64, 2022 amd64):
quay.io/signalfx/splunk-otel-collector:0.131.3- digest:
sha256:8e51d0df805769e2373174730d07d2dd9791840f2d50bde74794c1e5a5afa0c7- Windows (2019 amd64, 2022 amd64):
quay.io/signalfx/splunk-otel-collector-windows:0.131.3- digest:
sha256:bdbba35163292ec7c147f9e516e1d258800fde0477b756d1bb81a77aefbf744a
v0.131.2
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.
💡 Enhancements 💡
all: Upgrade go version to 1.24 (#6542)
🚀 New components 🚀
extension/k8sleaderelector: Add extension to the Splunk distro (#6539)receiver/snmp: Add receiver to the Splunk distro (#6538)receiver/tlscheck: Add receiver to the Splunk distro (#6541)
Docker Image Manifests:
- Linux (amd64, arm64, ppc64le) and Windows (2019 amd64, 2022 amd64):
quay.io/signalfx/splunk-otel-collector:0.131.2- digest:
sha256:244855a94591a779217182eadd48305887b1216eaa92ddfbf1082cdff998d829- Windows (2019 amd64, 2022 amd64):
quay.io/signalfx/splunk-otel-collector-windows:0.131.2- digest:
sha256:974535a94bd21ad2a8f3b5ecd8f4a9fb9f4c1631cbfd9db9064ab31495a58494
Technical addon for the Splunk distribution of the OpenTelemetry Collector v1.5.0
- Updates addon to use collector version v0.131.0
- Fixes Smart Agent bundle extraction
- Fixes windows orphaned OTel Collector processes when SplunkD exits ungracefully
v0.131.1
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.
💡 Enhancements 💡
- (Contrib)
receiver/sqlserverEnable sqlserver events collection on windows (#41762)
Docker Image Manifests:
- Linux (amd64, arm64, ppc64le) and Windows (2019 amd64, 2022 amd64):
quay.io/signalfx/splunk-otel-collector:0.131.1- digest:
sha256:7fe8ef5ffad6075341c2b2eb8d97b1a706e8ad873b6828bfd7a7f5988e451811- Windows (2019 amd64, 2022 amd64):
quay.io/signalfx/splunk-otel-collector-windows:0.131.1- digest:
sha256:323cda93fc3aededa72b694044e67f85bf5523b068728a4b4b2906a1353e1237
Technical addon for the Splunk distribution of the OpenTelemetry Collector v1.4.4
Updates to v0.130.0 of the collector
v0.131.0
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 settingstatusandservice_typeoptions. They are now pre-defined for each receiver type. (#6530) (Not included in the v0.131.0 Chocolatey Package) - (Splunk)
discovery: Thesplunk.continuousDiscoveryfeature 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/consulmonitor. 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/genericjmxand all related monitors. Please use the jmxreceiver instead with the appropriate target system.
Removed monitors that relied oncollectd/genericjmx(#6510):collectd/activemqreplace withactivemqtarget with the jmxreceiver.collectd/cassandrareplace withcassandratarget with the jmxreceiver.collectd/hadoopreplace withhadooptarget with the jmxreceiver.collectd/kafkareplace withkafkatarget with the jmxreceiver.collectd/kafka-consumerreplace withkafkatarget with the jmxreceiver.collectd/kafka-producerreplace withkafkatarget with the jmxreceiver.collectd/solrreplace withsolrtarget with the jmxreceiver.collectd/tomcatreplace withtomcattarget with the jmxreceiver.
- (Splunk) Remove, already deprecated,
collectd/mysqlmonitor. Use the mysql receiver instead. (#6487) - (Core)
confighttp: Moveconfighttp.framedSnappyfeature gate to beta. (#10584) - (Contrib)
iisreceiver: Enable IIS Application Pool state and uptime metrics by default. (#34924)
WARNING: This change enables theiis.application_pool.stateandiis.application_pool.uptimemetrics 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-javaagenttov2.18.0(#6481) - (Splunk) Update
jmx-metric-gatherertov1.48.0(#6482) - (Core)
exporter/debug: Move to alpha stability except profiles (#13487) - (Core)
exporterhelper: Enableexporter.PersistRequestContextfeature 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_bucketto 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 Sta...
v0.130.0
This Splunk OpenTelemetry Collector release includes changes from the opentelemetry-collector v0.130.0
and the opentelemetry-collector-contrib v0.130.0 releases where appropriate.
🛑 Breaking changes 🛑
- (Core)
exporter/otlp: Remove deprecated batcher config from OTLP, use queuebatch (#13339) - (Contrib)
kubeletstats: Move receiver.kubeletstats.enableCPUUsageMetrics feature gate to stable (#39650) - (Contrib)
kafka: The default client ID for Kafka components now honours configuration, and defaults to "otel-collector". (#41090)
The client ID configuration was ineffective, and (when using the Sarama implementation)
always defaulted to "sarama". We now honour the configuration, and the default has changed,
hence this is a breaking change for anyone relying on the client ID being "sarama".
🚩 Deprecations 🚩
- (Contrib)
splunkhecexporter: Deprecate 'batcher' config, use 'sending_queue::batch' instead (#41224) - (Contrib)
spanmetricsconnector: Mark dimensions_cache_size as deprecated following the upstream guidelines (#41101)
💡 Enhancements 💡
- (Splunk) Update jmx-metric-gatherer version to v1.47.0 (#6399)
- (Splunk) Update bundled openjdk version to 11.0.28_6 (#6459)
- (Splunk)
receiver/discovery: Reduce amount of attributes sent with the entities to the required set (#6419) - (Splunk)
receiver/discovery: Useapp.kubernetes.io/instancepod label forservice.nameentity attribute value if available (#6435) - (Contrib)
loadbalancingexporter: Use a linear probe to decrease variance caused by hash collisions, which was causing a non-uniform distribution of loadbalancing. (#41200) - (Contrib)
mysqlreceiver: Collect 'fsync' log operations. (#41175) - (Contrib)
mysqlreceiver: Add mysql.max_used_connections metric (#40626)
mysql.max_used_connections contains the maximum number of used sessions since the instance start. - (Contrib)
sqlserverreceiver: Adding 'sqlserver.cpu.count' metric (#41032) - (Contrib)
postgresqlreceiver: Only scrape the query samples that are newer than last scraped (#40622) - (Contrib)
pkg/ottl: Add newKeysconverter to extract all keys from a given map. (#39256) - (Contrib)
pkg/ottl: Added a newParseIntOTTL Function. (#40758) - (Contrib)
receiver/postgresql: Move receiver.postgresql.connectionPool feature gate to alpha (#30831)
This change updates the receiver to use the connection pooling for performance benefits. - (Contrib)
transformprocessor: Add profiles support to transformprocessor. (#39009) - (Core) exporterhelper: Enable items and bytes sizers for persistent queue (#12881)
- (Core) exporterhelper: Refactor persistent storage size backup to always record it. (#12890)
- (Core) exporterhelper: Add support to configure a different Sizer for the batcher than the queue (#13313)
- (Contrib)
receiver/sqlserverMake queries compatible with Azure SQL Database (#41102)
🧰 Bug fixes 🧰
- (Splunk)
receiver/discovery: Fix disabling observers with properties (#6437) - (Contrib)
kafkareceiver (franz-go client): Fix race on lost partition (#41239)
When using the franz-go client, fixes an edge case where a consumer could
lose a partition while it is consuming messages. This leads to unexpected
behavior due to the race and likely cause the consumer to malfunction. - (Contrib)
receivercreator: Fix incorrect traces consumer filtering in filterConsumerSignals function (#41033)
The bug caused traces consumers to be incorrectly filtered when metrics were disabled. - (Contrib)
pkg/ottl: Fix OTTL functions by using setters. (#39100) - (Contrib)
receiver/prometheusreceiver: Fixes masking of authentication credentials in Prometheus receiver, when reloading the Prometheus config. (#40520, #40916) - (Contrib)
kafkametricsreceiver: Fix aws_msk configuration in the doc (#41118) - (Contrib)
filelogreceiver: Fixremove,copy, andmoveoperator configuration validation. (#40728)
Previously, the receiver would allow configurations that were guaranteed to cause a Collector panic. The Collector will now fail to start with friendly error messages. - (Contrib)
pkg/ottl: Fix an issue where the attribute values were amended in the profiles dictionary. (#40738) - (Contrib)
pkg/ottl: Fixes the OTTL nanoseconds formatter to correctly handle 9 digits of nanoseconds, ensuring accurate time formatting and parsing. (#41144)
Places that import "github.com/open-telemetry/opentelemetry-collector-contrib/internal/coreinternal/timeutils" are likely affected by this change. For example,FormatTimeandTimeOTTL functions are affected. See here for a full list of affected functionalities. - (Contrib)
sqlserverreceiver: Fix incorrect configuration used in query sample collection. It was intended to retrieve the maximum number of rows per query from config.MaxRowsPerQuery, but it was mistakenly using config.TopQueryCount instead.
(#40943) - (Core)
exporterhelper: Fix exporter.PersistRequestContext feature gate (#13342) - (Core)
exporterhelper: Preserve all metrics metadata when batch splitting. (#13236)
Previously, when large batches of metrics were processed, the splitting logic inmetric_batch.gocould
cause thenamefield of some metrics to disappear. This fix ensures that all metric fields are
properly preserved whenmetricRequestobjects are split. - (Core)
service: Default internal metrics config now enablesotel_scope_labels (#12939, #13344)
By default, the Collector exports its internal metrics using a Prometheus
exporter from the opentelemetry-go repository. With this change, the Collector
no longer sets "without_scope_info" to true in its configuration.
This means that all exported metrics will haveotel_scope_name,
otel_scope_schema_url, andotel_scope_versionlabels corresponding to the
instrumentation scope metadata for that metric.
This notably prevents an error when multiple metrics are only distinguished
by their instrumentation scopes and end up aliased during export.
If this is not desired behavior, a Prometheus exporter can be explicitly
configured with this option enabled.
Docker Image Manifests:
- Linux (amd64, arm64, ppc64le) and Windows (2019 amd64, 2022 amd64):
quay.io/signalfx/splunk-otel-collector:0.130.0- digest:
sha256:c2392accaa92f283c7e977fd60bc2556d60485ff097d3cc3ee1a77c735694e38- Windows (2019 amd64, 2022 amd64):
quay.io/signalfx/splunk-otel-collector-windows:0.130.0- digest:
sha256:09499cf1e680ab1db23d2bdcc0174f1c2b31afbbdc2a8831a7bc53961e5e9e72
v0.129.0
This Splunk OpenTelemetry Collector release includes changes from the opentelemetry-collector v0.129.0
and the opentelemetry-collector-contrib v0.129.0 releases where appropriate.
🛑 Breaking changes 🛑
- (Core)
exporterhelper: Remove deprecated sending_queue::blocking options, use sending_queue::block_on_overflow. (#13211) - (Contrib)
kafka: remove broken SASL/AWS_MSK_IAM auth mechanism from Kafka components (#40554) - (Contrib)
kafkareceiver: Improve kafkareceiver internal metrics telemetry (#40816)
This change adds the following internal telemetry metrics to the receiver:- kafka_broker_connects
- kafka_broker_closed
- kafka_broker_throttling_duration
- kafka_receiver_bytes
- kafka_receiver_bytes_uncompressed
- kafka_receiver_latency
In addition it removes explicit component "name" metrics attribute which should be enabled with "telemetry.newPipelineTelemetry"
collector feature gate instead. And changes "partition" metrics attribute to more direct "int64" type instead of "string".
- (Contrib)
receiver/httpcheck: Always close resp.Body and add timeout (#40552) - (Contrib)
sqlserverreceiver: Only empty strings for query texts and query plans when obfuscation failed. (#40527)
This change applies only to top query collection and query sample collection.
🚩 Deprecations 🚩
- (Splunk)
packaging: Fluentd support has been deprecated in packages and will be removed in a future release.
Please refer to deprecation documentation for more information (#6366) - (Contrib)
resourcedetectionprocessor: Promote the processor.resourcedetection.removeGCPFaasID feature gate to beta. (#40601)
The faas.id attribute is replaced by the faas.instance attribute. | This disables detection of the faas.id resource attribute by default. | Re-enable by disabling the processor.resourcedetection.removeGCPFaasID feature gate. - (Contrib)
resourcedetectionprocessor: Remove the stable processor.resourcedetection.hostCPUSteppingAsString featuregate (#40569)
It was supposed to be removed in v0.110.0. - (Contrib)
prometheusreceiver: Promote the receiver.prometheusreceiver.RemoveLegacyResourceAttributes featuregate to stable (#40572)
It has been beta since v0.126.0
💡 Enhancements 💡
- (Splunk) Update
splunk-otel-javaagenttov2.17.0(#6397) - (Splunk) Update
splunk-otel-jstov3.3.0(#6396) - (Splunk)
receiver/discovery: Propagate logs reported by dynamic receivers (#6388)
Sample and propagate all logs from the dynamically created receivers to the stdout. This brings visibility to discovery issues that are not covered by the matching discovery rules - (Splunk)
receiver/discovery: Set service.type as part of a discovery rule (#6400)
Deducing service.type from the existing data isn't reliable. For example, discovered kafka service gets "kafkametrics" name.
This changes adds another required field to a service discovery rule to signify what type of a service is being discovered. - (Core)
service: Support settingsamplerandlimitsunderservice::telemetry::traces(#13201)
This allows users to enable sampling and set span limits on internal Collector traces using the
OpenTelemetry SDK declarative configuration. - (Contrib)
windowseventlogreceiver: Added option to prevent collector shutdown due to errors while opening channels (#36237) - (Contrib)
azuremonitorreceiver: Add support for azureauth when batch api is enabled. (#40872) - (Contrib)
azuremonitorreceiver: fix unnecessarily exported struct (#40662) - (Contrib)
azuremonitorreceiver: Added new config that sets the number of unique resource IDs to fetch per Batch API call (#40112) - (Contrib)
hostmetricsreceiver: Skeleton nfsscraper -- adds Linux nfs and nfsd metrics from /proc (#39978) - (Contrib)
receiver/hostmetrics: Addsystem.paging.faultsmetrics on Windows (#40468) - (Contrib)
elasticsearchreceiver: Add support for ES version 9 (#39929) - (Contrib)
kafkareceiver: Add an Alpha feature gatereceiver.kafkareceiver.UseFranzGoto use franz-go in the Kafka receiver for better performance. (#40628)
Adds an experimental opt-in support to use the franz-go client in the Kafka receiver.
The franz-go client is a high-performance Kafka client that can improve the performance of the Kafka receiver.
The default client remains sarama, which is used by the Kafka exporter and other components.
Enable the franz-go client by setting thereceiver.kafkareceiver.UseFranzGofeature gate. - (Contrib)
kafkareceiver: Refactor Sarama client to pave the way for franz-gofeaturegateopt-in (#40628) - (Contrib)
kafkaexporter: Improve kafkaexporter internal metrics telemetry (#40815) - (Contrib)
kafkareceiver: Create the consumer group asynchronously, and report component status (#40516)
This change ensures that the collector can start up if the Kafka cluster is not available
or the consumer group creation fails due to some other transient, retryable error. - (Contrib)
sqlserverreceiver: add feature gate for removing metrics resource attributesserver.address, andserver.port(#40579)
These are not resource attributes according to the semantic conventions.
To enable this feature gate, when running the otel collector, pass the following argument--feature-gates=receiver.sqlserver.RemoveServerResourceAttribute. - (Contrib)
sqlqueryreceiver: Add SQL connection fieldshost,port,database,username,password, andadditional_params. (#39760)
These options can be used instead of the existingdatasourceconfiguration option. - (Contrib)
sqlserverreceiver: Update obfuscation library to usemssqlmode. (#40525)
Now it can obfuscate more SQL Server specific queries which may not work before. - (Contrib)
processor/transform: Introduce optional metric name suffix setup for metric conversion functions (#33850)
The affected functions are: convert_summary_count_val_to_sum(), convert_summary_sum_val_to_sum(), extract_count_metric(), extract_sum_metric()
🧰 Bug fixes 🧰
- (Core)
pdata: Fix copying of optional fields when the source is unset. (#13268) - (Core)
service: Only allocate one set of internal log sampling counters (#13014)
The case where logs are only exported to stdout was fixed in v0.126.0;
this new fix also covers the case where logs are exported through OTLP. - (Contrib)
collectdreceiver: Ensure the receiver closes its port when shutting down quickly after starting. (#40406) - (Contrib)
hostmetricsreceiver: Minor fix to the handling of conntrack errors (#40175) - (Contrib)
k8sattributesprocessor: Make sure getIdentifiersFromAssoc() can handle container.id (#40745) - (Contrib)
kafka: Fixes a defect introduced in #39115 that prevents MSK IAM auth from working (#40720) - (Contrib)
kafkareceiver: Protect partition lost/revoke callback against unassigned groups (#40920)
Note that due to the nature of the timing issue this is extremel...