Repository navigation
Update module github.com/open-telemetry/opentelemetry-collector-contrib/processor/attributesprocessor to v0.163.0 - #32
Open
renovate[bot] wants to merge 1 commit into
Conversation
Contributor
Author
|
renovate
Bot
force-pushed
the
renovate/github.com-open-telemetry-opentelemetry-collector-contrib-processor-attributesprocessor-0.x
branch
from
August 4, 2026 21:12
6ac3ab8 to
f928bea
Compare
renovate
Bot
force-pushed
the
renovate/github.com-open-telemetry-opentelemetry-collector-contrib-processor-attributesprocessor-0.x
branch
from
August 18, 2026 01:45
f928bea to
13946a8
Compare
renovate
Bot
deleted the
renovate/github.com-open-telemetry-opentelemetry-collector-contrib-processor-attributesprocessor-0.x
branch
August 25, 2026 20:25
renovate
Bot
force-pushed
the
renovate/github.com-open-telemetry-opentelemetry-collector-contrib-processor-attributesprocessor-0.x
branch
2 times, most recently
from
August 26, 2026 18:26
13946a8 to
1c19413
Compare
renovate
Bot
force-pushed
the
renovate/github.com-open-telemetry-opentelemetry-collector-contrib-processor-attributesprocessor-0.x
branch
from
October 3, 2026 23:15
1c19413 to
9283ce4
Compare
…ib/processor/attributesprocessor to v0.163.0
renovate
Bot
force-pushed
the
renovate/github.com-open-telemetry-opentelemetry-collector-contrib-processor-attributesprocessor-0.x
branch
from
October 14, 2026 10:02
9283ce4 to
74a66ce
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Note
This PR body was truncated due to platform limits.
This PR contains the following updates:
v0.93.0→v0.163.0Release Notes
open-telemetry/opentelemetry-collector-contrib (github.com/open-telemetry/opentelemetry-collector-contrib/processor/attributesprocessor)
v0.163.0Compare Source
🛑 Breaking changes 🛑
cmd/opampsupervisor: The supervisor now fails to start when the deprecatedreports_remote_configcapability option is set totrue. (#49763)Remove
reports_remote_configfrom the supervisor config;accepts_remote_configenables both the AcceptsRemoteConfig and ReportsRemoteConfig OpAMP capabilities. The option will be removed in v0.165.0.connector/failover: Reject emptycondition.error.containsvalues and fail over only for matching downstream errors (#44518)condition.error.containsnow requires a list of non-empty strings.exporter/signalfx: Exclude generatedcontainer_cpu_utilizationmetric by default (#51906)This metric has been deprecated in favor of
container.cpu.usage. Ifcontainer_cpu_utilizationis still required, please add it to the exporter's
include_metricsconfiguration option as shown below.extension/google_cloud_logentry_encoding: Fix Cloud DNS query logs failing to decode whenvmInstanceIdis in exponent notation.host.idis now a string taken fromvmInstanceIdStringinstead of an int taken fromvmInstanceId. (#51552)processor/redaction: Keep every redaction summary attribute intact when data re-enters the processor (#50770)Only five of the fourteen summary attributes the processor writes survived a second redaction processor. When data
passed through one,
redaction.allowed.keys,redaction.allowed.countand the sevenredaction.body.*attributeswere treated as unknown keys, deleted, and reported in
redaction.redacted.keys.The processor now treats all fourteen as its own bookkeeping rather than as user data, so they are no longer deleted,
masked, obfuscated or counted as redacted, and the summary accumulates across chained processors as intended.
Previously a
blocked_key_patternsorblocked_valuesrule matching one of these attributes replaced the summarywith a masked value, and with
redact_all_typesenabled it rewrote the*.countintegers as strings, which made therunning totals read back as zero at the next hop.
Chaining two processors also reported the same attribute more than once: the allowed and ignored summaries
describe the record as it currently stands, which every processor re-derives in full, so merging them with an
upstream value counted one attribute twice.
redaction.allowed.keysreademail,emailwithredaction.allowed.countof 2 for a single allowed attribute. Those two outcomes now replace the upstreamvalue, while the redacted and masked outcomes keep accumulating, because a removed key and an already masked
value cannot be detected again.
Two behaviour changes come with this, both of which can affect an existing chained configuration.
A processor whose
summaryis notdebugorinfonow claims no ownership of a summary it finds, so the ordinaryallow list decides whether it survives. This lets a strict egress processor strip an upstream audit trail, which it
could not do before. It also means a downstream processor with
allow_all_keys: falsenow removes the five summaryattributes it previously kept unconditionally, unless they are named in
allowed_keysorallow_all_keysis set.summaryis unset by default, which counts as silent, so a chained configuration that never sets it is affected.A key inside a log body named after a summary attribute is now redacted like any other unknown key. The processor
only ever writes its summary to the record attributes, so such a key in a body carries user data.
receiver/postgresql: Set the default scrape timeout to 60s to cancel blocked PostgreSQL queries. (#50757)Increase
timeoutfor longer scrapes, or settimeout: 0to restore the unbounded behavior.receiver/prometheus_simple: Remove the long-deprecatedtls_enabledandtls_configsettings; usetlsinstead (#51895)tls_enabled/tls_configwere deprecated in v0.55.0 in favor of the standardtlsblock (confighttp's TLS settings). Besides being long overdue, keeping bothwas a footgun: setting
tls_enabled: truesilently overrode anytlsblock.Migrate
tls_config(ca_file/cert_file/key_file/insecure_skip_verify) tothe equivalent fields under
tls.receiver/sql_server: Performance counters read from the SQL ServerDatabasesobject on a direct database connection now carry thesqlserver.database.nameresource attribute and no longer emit an unlabeled_Totalaggregate, which changes the series identity ofsqlserver.database.backup_or_restore.rate. (#51384)sqlserver.database.backup_or_restore.ratesplits from one series into one per database, and theunlabeled series it previously reported is gone. Aggregate across
sqlserver.database.nameinstead.This brings the direct database connection in line with the Windows performance counter path, which
already discards the aggregate instance before recording.
🚩 Deprecations 🚩
receiver/sql_server: Rename thesqlserverreceiver tosql_server. The oldsqlservertype remains available as a deprecated alias. (#45339)🚀 New components 🚀
processor/adaptive_tail_sampling: Promote the adaptive_tail_sampling processor to alpha stability and include it in the contrib distribution. (#49311)processor/partitioning: Add the initial skeleton for the partitioning processor. (#39199)processor/rolling_span_latency: Promote the rolling_span_latency processor to alpha stability and include it in the contrib distribution. (#50260)💡 Enhancements 💡
connector/routing: Validate OTTL conditions and statements during configuration. (#51748)connector/service_graph: Recognize current semantic-convention attributes (peer.service.name,db.namespace,db.system.name) alongside legacy keys when deriving peer and database-name dimensions. (#22095)exporter/cassandra: Add configuration validation and error case tests. (#51730)exporter/clickhouse: Adddatabase_engineconfig to set theENGINEused when creating the database, such asReplicated. (#51513)When
database_engine.nameisReplicated,ON CLUSTERis only applied to theCREATE DATABASEstatement.exporter/datadog: Mark exporter/datadogexporter as unsupported on freebsd/amd64. (#15781)exporter/datadog: Move theexporter.datadogexporter.AddUnitsfeature gate to beta. Metric units are now sent to Datadog by default. (#15280)exporter/elasticsearch: Store OTLP exponential histograms in Elasticsearch's native exponential_histogram field (#51429)Enabled automatically in OTel mapping mode when connected to Elasticsearch 9.3.0 or later; disable via
version_detection.enabled: false.exporter/elasticsearch: Log the connected Elasticsearch version and build flavor at startup (#51541)Adds
version_detection(enabled by default); setversion_detection.enabled: falseto opt out.exporter/kafka: Add the trace context to Kafka record headers using the propagators configured inservice::telemetry::traces::propagators. (#51078)exporter/nats: Implement core NATS publishing, so traces, metrics, and logs are published to per-signal subjects derived from OTTL value expressions. (#50735)JetStream durable publishing is not yet implemented; a configured
jetstreamblock is rejected at startup until it lands.exporter/splunk_hec: Define the exporter's heartbeat metrics in metadata.yaml and generate them via mdatagen. (#49009)extension/basicauth: Support sourcing credentials from secret provider extensions, with rotation that does not restart the collector. (#48277)Configure with
htpasswd.secret_provider(server) orclient_auth.secret_provider(client).The referenced extension must implement the
SecretProviderinterface (GetSecretandOnChange).extension/datadog: Mark extension/datadogextension as unsupported on freebsd/amd64. (#15781)extension/opamp: Add asocketoption underserver.wsandserver.httpto dial the OpAMP server over a Unix domain socket (transport: unix) or Windows named pipe (transport: npipe). (#50603)When
socketis set, theendpointonly supplies the URL scheme, request path, and Hostheader; its host and port are ignored.
extension/pebble_tail_storage: Addon_read_errorto choose between dropping a trace or returning the readable part when stored batches cannot be read or decoded. (#49906)The default is
drop_trace. Take deletes the stored trace and returns an error, and the tail sampling processor drops the trace without a sampling decision.Set
on_read_error: return_partialto keep the previous best-effort behavior, where Take returns the batches that could still be read.Two new metrics,
otelcol_extension_pebble_tail_storage_read_error_trace_dropsandotelcol_extension_pebble_tail_storage_read_error_partial_returns, count which policy ran.internal/kafka: Reuse cached AWS credentials acrossAWS_MSK_IAM_OAUTHBEARERtoken generations instead of resolving them on every SASL authentication. (#50038)pkg/ottl: Add thepkg.ottl.functions.enableExperimentalfeature gate, which must be enabled to use experimental OTTL functions. (#51564)pkg/ottl: Allowkeep_keysto accept slice values from paths and converter expressions when thepkg.ottl.functions.enableDynamicSliceArgumentsfeature gate is enabled. (#45980)pkg/ottl: Improve OTTL parse error diagnostics by reporting the line and column of the input where available. (#51680)Not all parse errors carry a position: errors that aggregate multiple statements, and some
inner errors that didn't already carry one, are still returned without one. The exact
wording and position of statement, condition, and value expression parse error messages
has changed as a result. The position is exposed programmatically via the new experimental
xottl.Errortype.pkg/ottl: Add the betapkg.ottl.functions.enableDynamicSliceArgumentsfeature gate, which controls whether slice arguments of stable functions such asConcataccept paths and converters. (#51565)pkg/stanza: Optimize container parser operator by replacing CRI line and File path regexes with a hand-written parsers and caching log filepath metadata extraction, reducing CPU usage by ~70% on the container parser hot path (#41672)pkg/stanza: Add default scope name and version for stanza log entries without scope name (#51084)This introduces the
pkg.stanza.addDefaultScopeNamefeature gate (currently in beta) to ensure Stanza log entries are assigned a default scope name and version when not explicitly provided.processor/adaptive_tail_sampling: Addfleet_trackerto divide eachadaptive_throughputrule'sgoal_throughputby the live fleet member count reported by afleet_trackerextension, making the goal a fleet-wide budget instead of a per-instance one. (#50577)processor/akamaidetector: Addomit_detector_akamaigo build tag to omit detector at build time. (#47218)processor/alibabaecsdetector: Addomit_detector_alibaba_ecsgo build tag to omit detector at build time. (#47218)processor/azuredetector: Addomit_detector_azurego build tag to omit detector at build time. (#47218)processor/digitaloceandetector: Addomit_detector_digitaloceango build tag to omit detector at build time. (#47218)processor/dynatracedetector: Addomit_detector_dynatracego build tag to omit detector at build time. (#47218)processor/groupbytrace: Allow grouping spans by the service that emitted them within a trace (#50553)Adds an
emit_strategyoption that can be set toserviceto allowemitting spans sourced from a single service within a trace. In some
setups this may allow spans to move more quickly through the processor
while still permitting operations such as RED metric generation,
service discovery, etc. that require spans to be grouped by trace.
processor/hetznerdetector: Addomit_detector_hetznergo build tag to omit detector at build time. (#47218)processor/ibmcloudclassicdetector: Addomit_detector_ibmcloud_classicgo build tag to omit detector at build time. (#47218)processor/ibmcloudvpcdetector: Addomit_detector_ibmcloud_vpcgo build tag to omit detector at build time. (#47218)processor/novadetector: Addomit_detector_openstack_novago build tag to omit detector at build time. (#47218)processor/oracleclouddetector: Addomit_detector_oraclecloudgo build tag to omit detector at build time. (#47218)processor/partitioning: Implement logs partitioning. (#39199)processor/partitioning: Implement traces partitioning. (#39199)processor/partitioning: Implement metrics partitioning. (#39199)processor/resource_detection: Addomit_detector_systemgo build tag to omit detector at build time. (#47218)processor/resource_detection: Addomit_detector_aws_ec2go build tag to omit detector at build time. (#47218)processor/resource_detection: Addomit_detector_envgo build tag to omit detector at build time. (#47218)processor/resource_detection: Addomit_detector_azure_functionsgo build tag to omit detector at build time. (#47218)processor/resource_detection: Addomit_detector_azure_containerappsgo build tag to omit detector at build time. (#47218)processor/resource_detection: Addomit_detector_dockergo build tag to omit detector at build time. (#47218)processor/resource_detection: Addomit_detector_azure_appservicego build tag to omit detector at build time. (#47218)processor/resource_detection: Addomit_detector_consulgo build tag to omit detector at build time. (#47218)processor/resource_detection: Addomit_detector_azure_aksgo build tag to omit detector at build time. (#47218)processor/resource_detection: Addomit_detector_k8s_apigo build tag to omit detector at build time. (#47218)processor/resource_detection: Addomit_detector_kubeadmgo build tag to omit detector at build time. (#47218)processor/resource_detection: Addomit_detector_openshiftgo build tag to omit detector at build time. (#47218)processor/resource_detection: Addomit_detector_aws_lambdago build tag to omit detector at build time. (#47218)processor/resource_detection: Addomit_detector_gcpgo build tag to omit detector at build time. (#47218)processor/resource_detection: Addomit_detector_herokugo build tag to omit detector at build time. (#47218)processor/resource_detection: Addomit_detector_aws_eksgo build tag to omit detector at build time. (#47218)processor/resource_detection: Addomit_detector_aws_elastic_beanstalkgo build tag to omit detector at build time. (#47218)processor/resource_detection: Addomit_detector_aws_ecsgo build tag to omit detector at build time. (#47218)processor/scalewaydetector: Addomit_detector_scalewaygo build tag to omit detector at build time. (#47218)processor/tail_sampling: Move spans out of incoming batches instead of copying them, and declare that the processor mutates data. (#51920)processor/tencentcvmdetector: Addomit_detector_tencent_cvmgo build tag to omit detector at build time. (#47218)processor/upclouddetector: Addomit_detector_upcloudgo build tag to omit detector at build time. (#47218)processor/vultrdetector: Addomit_detector_vultrgo build tag to omit detector at build time. (#47218)receiver/aws_cloudwatch: Addscope.nameandscope.versionto logs and metrics. (#51333)receiver/azure_blob: Add acompressionoption to read gzip compressed blobs (#51412)receiver/azure_monitor: Add per-metric time grain overrides for Azure Monitor metric queries. (#51295)receiver/google_cloud_spanner: Add missing metrics to top minute transaction stats ingooglecloudspannerreceiver. (#51272)receiver/google_cloud_spanner: Add top minute split stats metrics andhide_split_stats_keyslogic ingooglecloudspannerreceiver. Allsplit_stats/top/*metrics gain thesplit_startandsplit_limitattributes with PII hiding support. (#51026)receiver/google_cloud_spanner: Add query_optimizer_versions and its value_typeint_slicelogic ingooglecloudspannerreceiver. Allquery_stats/top/*metrics gain this new attribute. (#51219)receiver/google_cloud_spanner: Add missing execution metrics to total query stats ingooglecloudspannerreceiver. (#51228)receiver/google_cloud_spanner: Add total minute transaction stats metrics to googlecloudspannerreceiver. (#51296)receiver/kafka: Addpartition_processing.max_in_flight.recordsto run concurrent unmarshal-plus-Consume calls on one independent partition worker. (#51080)When
max_in_flight.recordsis above 1, the worker always marks after processing.message_marking.after: falsedoes not mark before Consume.receiver/kubelet_stats: Add optional k8s node pid limit and usage metrics. (#48926)Adds the following optional metrics to kubeletstatsreceiver:
receiver/mongodb: Add assert, global lock queue, and write concern metrics (#51418)Adds
mongodb.assert.count,mongodb.global_lock.queue.countandmongodb.write_concern.wait.time, all disabled by default.receiver/mongodb: Add query executor scan and collection scan metrics (#51060)Adds
mongodb.query_executor.index_key.scanned.count,mongodb.query_executor.document.scanned.countandmongodb.query_executor.collection_scan.count, all disabled by default.receiver/mongodb: Report a loopbackserver.addressas the collector host name, and enableserver.portby default (#51633)When a scraped node reports a loopback address (
localhost,127.0.0.1or::1),server.addressnowreports the host name of the machine running the collector.
service.instance.idis seeded from the samevalue and changes for those deployments.
server.portwas previously disabled by default; disable it withresource_attributes.server.port.enabled: false.receiver/mysql: Add row-count and database namespace context to the top query event (#51312)receiver/oracledb: Add support for Kerberos authentication via a newauth_typeoption andkerberosconfiguration block. (#50401)Set
auth_type: kerberosand configure thekerberosblock to authenticate using a keytab,credential cache, or password. Kerberos support is implemented in pure Go and requires no external
libraries.
receiver/postgresql: Addconnect_databaseto configure which database the receiver connects to for cluster-wide statistics collection. (#50920)receiver/prometheus_simple: Restore the stability of the receiver fromunmaintainedtobeta(#11504)receiver/prometheus_simple: Validate thatendpointis set andcollection_intervalis positive, so an invalid configuration is rejected at startup instead of failing later (#11504)receiver/pulsar: Add freebsd/amd64 as a supported build platform. (#15781)Updated the github.com/AthenZ/athenz dependency to v1.12.27 to enable
freebsd/amd64 builds.
receiver/sql_server: Addsqlserver.db.editionresource attribute. (#51414)Disabled by default. Opt in by setting
resource_attributes.sqlserver.db.edition.enabled: truein the receiver config.receiver/windows_event_log: Promote Windows Event Log receiver to beta stability (#42167)🧰 Bug fixes 🧰
exporter/awsemf: Drop a metric declaration with an invalidmetric_name_selectorsregex instead of panicking (#51115)An invalid regular expression in
metric_name_selectorswas passed toregexp.MustCompile,panicking during config validation. It is now compiled with
regexp.Compileand the error isreturned, so the declaration is dropped with a warning like an invalid
label_matchersregex.exporter/datadog: Dropinstancefrom the Azure App Service and Azure Functions running metrics in preparation for more accurate instance descriptions. (#51919)otel.datadog_exporter.metrics.running.azureappservicesandotel.datadog_exporter.metrics.running.azurefunctionsare now tagged only withname,subscription_id, andresource_group, and App Service metrics no longer get aninstancetag.exporter/file: Fix race condition where a writer could be closed while still in use, causing data to be silently lost. (#49228)This will happen in
group_bymode whenrotationis not set.exporter/file: Rejectgroup_by.max_open_files<= 0 and negativerotationvalues during config validation. (#51515)extension/azure_encoding: Do not emit 0-valued timeseries for aggregates (total, count, minimum, maximum, average) that are missing from the source Azure record (#50485)Diagnostic settings only export the aggregates a resource supports. A configured
aggregation whose aggregate is absent from the record is now skipped instead of
being coerced to 0.
extension/docker_observer: Discover IPv6-only Docker endpoints and format their port targets correctly. (#50972)extension/google_cloud_logentry_encoding: Do not drop log entries with an unparseabletraceorspanId, and accept a bare trace ID without theprojects/<project>/traces/prefix. (#51666)Unparseable values are kept as the
gcp.traceandgcp.span_idlog record attributes.pkg/faro: Return an error instead of panicking when a log record contains a malformedbrowser_brand_<N>key (#51759)pkg/faro: Skip malformedsdk_integrationsentries instead of panicking when translating logs to Faro payloads (#51484)An integration entry without a
:separator, or a trailing comma, caused the Faro exporter tocrash the collector. Such entries are now skipped. Versions that contain
:are also no longertruncated.
pkg/ottl:Timeno longer treats a trailing strptime%Zas Zulu (UTC) when no location is given (#51416)pkg/ottl: Reject literal values that are not lists for slice arguments, such askeep_keys(attributes, "http.method")orConcat("a", "-"), at parse time instead of failing on every execution (#51833)pkg/stanza: Fix thecontainerparser rejecting containerd logs whose timestamps use a UTC offset instead ofZwhenformat: containerdis set. (#51284)processor/adaptive_tail_sampling: Forward an evicted trace on a detached context rather than the context of whichever request triggered the eviction, so its spans are no longer attributed to an unrelated client. (#51691)Components reading client.Info downstream, such as headers_setter with from_context, now see no client metadata for an evicted trace instead of the wrong request's.
processor/adaptive_tail_sampling: Preserve original scope groups, scope metadata, and schema URLs when splitting spans by trace ID, including late spans handled by the decision cache. (#51461)processor/cumulative_to_delta: Fix ExponentialBuckets.Diff missing reset when old buckets precede current histogram offset (#51303)processor/remotetap: Fix a panic on shutdown (close of nil channel) when a websocket client had already disconnected before the processor shut down. (#51342)processor/resource_detection: Honorfail_on_missing_metadataalso for the instance identity document and hostname lookups of theec2detector (#50826)The
ec2detector guarded only its initialinstance-idlookup withfail_on_missing_metadata. Thesubsequent instance identity document and hostname lookups always returned their respective errors,
regardless of the fail_on_missing_metadata setting.
On clusters where the metadata service implements the EC2-compatible
meta-datatree, but not the AWS-specificdynamic/instance-identityendpoints, this would lead to a crash on startup even withfail_on_missing_metadata: false. Theinstance-idlookup would succeed and then the identity document lookup wouldfail with HTTP 404. OpenStack Nova based clusters behave this way, so a collector configured with the
ec2detector andfail_on_missing_metadata: falsefailed to start on those hosts rather than skipping the detector.The identity document lookup now honors the flag: when
fail_on_missing_metadataisfalseand the endpointresponds with HTTP 404, the detector logs at debug level and returns an empty resource. Any other error is still
returned, since it might be transient. When the flag is
truethe error is returned as before.The hostname lookup honors the flag as well: when
fail_on_missing_metadataisfalse, the detector logs atdebug level and returns the resource without the
host.nameattribute, instead of failing the detection or skippingthe instance tags. When it is
true, the error is returned.receiver/azure_blob: Return an error instead of panicking when an Event Hub message has no events or an unexpected blob subject (#51474)A malformed or unexpected Event Hub message could crash the collector. Such messages are now
logged as errors and skipped, and events other than blob creation are ignored without being parsed.
receiver/azure_event_hub: Do not emit 0-valued timeseries for aggregates (total, count, minimum, maximum, average) that are missing from the source Azure record (#50485)Diagnostic settings only export the aggregates a resource supports, e.g. a Standard
Load Balancer exports total and count but no minimum/maximum. Missing aggregates are
now skipped instead of being coerced to 0.
receiver/azure_event_hub: Recreate the partition client after anownershiplosterror instead of polling a permanently detached link. (#51463)When another receiver with a higher epoch attached to the same partition and consumer group, the
receiver logged
error receiving eventson every poll forever and never received data again.The partition client is now closed and reopened from the last received sequence number with exponential backoff.
receiver/cloud_foundry: Do not emit partially initialized log records for unsupported log types. (#51517)receiver/googlecloudmonitoring: Emit data points in chronological order to prevent data loss in downstream processors. (#51641)receiver/host_metrics: Reject negativemetadata_collection_intervalvalues during configuration validation. (#51640)receiver/kafka: Fix records from healthy partitions being dropped when a poll also contains a fetch error. (#51852)receiver/mysql: Reportmysql.index.io.wait.countandmysql.index.io.wait.timeunder the correctoperationattribute (#49597)The
mysql.index.io.wait.countandmysql.index.io.wait.timemetrics were reported under thewrong
operationattribute (for example, delete counts appeared underoperation=update). Eachdatapoint is now reported under its correct operation.
receiver/postgresql: Addpostgresql.useridtodb.server.top_queryanddb.server.query_plan, and key the top-query counter cache and EXPLAIN plan cache on it instead ofpostgresql.rolname. Fixes a case where two dropped database roles could be reported under each other's counters or query plan, and keeps counter deltas continuous across a role rename. (#51319)receiver/prometheus_remote_write: Attach exemplars once, to the series that sent them, rather than to every metric built from the same labels. (#50334, #50546)receiver/splunk_enterprise: Fixes recorded value for RollingRestartStatus metric (#51866)receiver/sql_server: Fix missing metrics when using direct SQL Server connection -sqlserver.lock.wait_time.avg,sqlserver.transaction.rate,sqlserver.page.operation.rate,sqlserver.page.lazy_write.rate, andsqlserver.transaction_log.growth.countnow emit values on non-Windows platforms and when the receiver is configured with a direct database connection. (#51384)All of these except
sqlserver.transaction_log.growth.countreport nodata point on the first scrape, since they are calculated from the change in their counters between scrapes.
receiver/sql_server:sqlserver.session.durationnow reports whole seconds since login instead of milliseconds, fixing a 25-day overflow intotal_elapsed_time. (#51419)receiver/sql_server: Fix direct connection queries returning no data wheninstance_nameis set to a named instance (#50773)The direct connection queries filtered rows with
@@SERVERNAME = '<instance_name>'. On a namedinstance
@@SERVERNAMEreturns<host>\<instance>, which never matches the bare instance name,so every query returned zero rows and no metrics were emitted. The filter was also redundant:
a connection is scoped to a single instance and its DMVs only expose that instance. It has been
removed.
instance_nameremains in use for the Windows performance counter collection path.receiver/sql_server: Fix direct-connection performance counter rate metrics to emit per-second rates instead of cumulative counter values. (#50772)The
sqlserver.page.buffer_cache.free_list.stalls.ratemetric value type changes from int to double so fractional rates can be represented.receiver/statsd: Close the TCP connection when the client disconnects and bound the size of an unterminated line, fixing a per-connection file descriptor leak and an unbounded memory growth path in the TCP transport. (#50123)receiver/webhook_event: Validate thatpathandhealth_pathbegin with a leading/so the collector fails at config load instead of panicking at startup. (#50893)A
pathorhealth_pathwithout a leading/causedhttprouterto panic inStart(),after the collector had already bound its telemetry port. The panic left the port held, so every
restart attempt failed with
bind: address already in use.receiver/yang_grpc: Apply the configuredsecurity.allowed_clientsandsecurity.rate_limitingsettings to theMdtDialoutstreaming RPC, which previously did not enforce either. (#0)scraper/network: Fix incorrect Linux TCP state names (FIN_WAIT_1/FIN_WAIT_2) used by the networkscraper, which never matched real connection states. (#51271)v0.162.0Compare Source
🛑 Breaking changes 🛑
all: Remove the wavefront receiver after a period of deprecation (#51397)connector/signal_to_metrics: The default error mode has been changed frompropagatetoignoreto ensure valid OTLP payloads are not dropped (#48419)exporter/elasticsearch: Remove the deprecatedflushandnum_workersconfiguration settings. (#42718)Migrate
num_workerstosending_queue::num_consumers,flush::intervaltosending_queue::batch::flush_timeout, andflush::bytestosending_queue::batch::max_sizewithsending_queue::batch::sizerset tobytes.This also removes
Config.NumWorkers,Config.Flush, andFlushSettingsfromthe exported Go API.
exporter/elasticsearch: Ingest OTel profiles as Elasticsearch (9.6.0) datastreams (#50589)In
otelmapping mode, profiling signals are now written to OTel-native datastreams(e.g.
profiling-events-all.otel-default) that require Elasticsearch 9.6.0 or later.Sending profiles to an older cluster will result in
index_not_found_exceptionerrors and data loss.Users on Elasticsearch < 9.6.0 must restrict the exporter to ECS mode via
mapping.allowed_modes: [ecs].exporter/elasticsearch: Move OTel profiling serializer toecsserializerpackage and wireecsmapping mode to use it for profiles. (#50589)pkg/ottl: Remove the stableottl.PanicDuplicateNameandottl.contexts.enableOTelColContextfeature gates. (#44630, #46437)pkg/prometheus: Promote the pkg.translator.prometheus.PermissiveLabelSanitization feature gate from alpha to beta, enabling it by default. (#50429)Labels starting with a single underscore (e.g.
_foo) will no longer beprefixed with
key_by default. To restore the previous behavior, disable thefeature gate:
--feature-gates=-pkg.translator.prometheus.PermissiveLabelSanitization.processor/adaptive_tail_sampling: Add explicit root-scoped fingerprint selectors (root.resource.,root.scope.,root.span.,root.any.) and requireroot.to name an origin. (#51304)root.is now a position prefix that composes with theresource,scope,spanandanyorigins, so afingerprint can read the root span's resource-level attributes (
root.resource.attributes["service.name"]) ortheir union (
root.any.attributes[...]). Bareroot.attributes["<name>"]no longer parses; it previously readonly the root span's span attributes, so resource attributes such as
service.namecame back<missing>.Migrate
root.attributes[...]toroot.span.attributes[...]for the same behaviour, or toroot.resource./root.any.to reach the attributes that were unreachable before.processor/cardinality_guardian: move units to singular form (#45270)processor/signing: Wrap attribute scalar values in type-tagged objects ({"intValue":"…"},{"stringValue":"…"}, etc.) to eliminate scalar type collisions in the JCS-canonical signed payload. (#50884)Previously,
PutInt("k", 123)andPutStr("k", "123")produced identicalcanonical JSON, so one signature covered both values. Each scalar type is now
wrapped in a single-key object keyed by type name (matching OTLP/JSON
conventions), making every type distinct. Existing signatures are invalidated
by this change.
SeverityNumberandSeverityTextare no longer included in the signedpayload; the audit logging spec marks them as SHOULD NOT.
processor/signing: Adds OpenBAO and Kubernetes Secrets as newKeyMaterialProvider options to the signing processor. (#50079, #51055)Additionally, supports a Kubernetes Secret, or an OpenBao/Vault
KV secret. Sets
audit.integrity.signer = "collector"to indicate the Tier-2Collector produced the integrity proof.
processor/transform: Remove the stableprocessor.transform.defaultErrorModeIgnorefeature gate. (#51242)receiver/kafka: Change the default formetadata::retry::maxfrom 3 to 20 to match franz-go's default. (#50116)The field was unwired since the migration to franz-go, so every collector has effectively been
running with franz-go's default of 20. The new default preserves that behavior now that the
field is applied. Only configurations that set
metadata::retry::maxexplicitly changebehavior: the configured value is now honored.
receiver/kafka_metrics: Change the default formetadata::retry::maxfrom 3 to 20 to match franz-go's default. (#50116)The field was unwired since the migration to franz-go, so every collector has effectively been
running with franz-go's default of 20. The new default preserves that behavior now that the
field is applied. Only configurations that set
metadata::retry::maxexplicitly changebehavior: the configured value is now honored.
receiver/prometheus: Promote thereceiver.prometheusreceiver.IgnoreScopeInfoMetricfeature gate to stable (#47312)The
otel_scope_infometric is no longer used for scope attribute extraction and isconverted like any other metric. Scope attributes are populated from
otel_scope_-prefixedmetric labels instead. The feature gate can no longer be disabled and will be removed in v0.164.0.
🚩 Deprecations 🚩
connector/grafana_cloud: Rename component type from "grafanacloud" to "grafana_cloud" to follow snake_case naming convention. The old name is kept as a deprecated alias. (#48017)receiver/aws_s3: Renameawss3receiver toaws_s3with deprecated aliasawss3(#45339)receiver/kafka: Deprecatemetadata::full, which became a no-op after the migration to franz-go. (#50116)franz-go has no full-metadata mode; it only fetches metadata for the topics the receiver
consumes from. The field is still accepted in configuration for backwards compatibility, but has
no effect at runtime. It will be removed in a future release.
receiver/kafka_metrics: Deprecatemetadata::full, which became a no-op after the migration to franz-go. (#50116)franz-go has no full-metadata mode; it only fetches metadata for the topics the scrapers query.
The field is still accepted in configuration for backwards compatibility, but has no effect at
runtime. It will be removed in a future release.
receiver/kubelet_stats: Deprecatek8s.pod.cpu.node.utilization,k8s.pod.memory.node.utilization,k8s.container.cpu.node.utilization, andk8s.container.memory.node.utilizationmetrics. (#50857)These metrics are deprecated following the decision in the K8s SemConv SIG
(open-telemetry/semantic-conventions#2768).
They will be removed in a future release.
🚀 New components 🚀
exporter/nats: Add the NATS exporter to export traces, metrics, and logs to a NATS server (skeleton; in development). (#39540)extension/file_telemetry_policy: Add filetelemetrypolicy extension skeleton. (#50965)extension/sd_notify: Promotesd_notifyextension stability from development to alpha. (#49607)processor/telemetry_policy: Add the initial skeleton for the telemetry_policy processor. (#50965)💡 Enhancements 💡
cmd/opampsupervisor: Enable keepalive by default (#51159)connector/exceptions: Addlogs_to_logsandlogs_to_metricssupport, and fix thetraces_to_logsedge to emit spec-conformant exception LogEvents (event.name, requiredexception.*attributes, and full resource attribute propagation). (#50900)connector/failover: Introducescondition.error.containswhich allows the connector to failover based on error type. (#44518)exporter/azure_monitor: Enable keepalive by default (#51178)exporter/coralogix: Enable keepalive by default (#51181)exporter/datadog: Emitotel.datadog_exporter.metrics.running.azurecontainerappstagged withreplica,name,subscription_id, andresource_groupfor Azure Container Apps workloads sending metrics via the Datadog exporter. (#49615)exporter/datadog: Emit running metrics for Azure App Services, Azure Functions, Cloud Run services, and Cloud Run Functions workloads sending metrics through the Datadog exporter. (#51501)exporter/honeycomb_marker: Enable keepalive by default (#51180)exporter/load_balancing: Addrandomnessrouting key that routes spans by the OTel tracestate randomness value (ot=rv), falling back to trace ID randomness when absent, so traces sharing an explicit randomness value are routed to the same backend. (#49660)exporter/logicmonitor: Enable keepalive by default (#49316)exporter/sematext: Enable keepalive by default (#49316)exporter/syslog: Add support for exporting to Unix datagram sockets such as/dev/log. (#50867)extension/awsproxy: Enable keepaliveConfiguration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.