Releases: open-telemetry/opentelemetry-collector-contrib
v0.78.0
The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.
🛑 Breaking changes 🛑
-
receiver/chrony
: Update emitted Scope name to "otelcol/chronyreceiver" (#21382) -
elasticsearchreceiver
: Enable 'elasticsearch.node.version' resource attribute on node metrics, by default (#16847) -
receiver/filestats
: Update emitted Scope name to "otelcol/filestatsreceiver" (#21382) -
receiver/mongodbatlas
: Update emitted Scope name to "otelcol/mongodbatlasreceiver" (#21382) -
receivers
: Updating receivers that run intervals to use standard interval by default (#22138) -
datadog receiver
: Updating datadog translations to align more closely to semantic convention (#21210, #21525)service.name
is moved from assigned from span attributes to resource attributes- Moved from using datadog's
span.Resouce
tospan.Name
to set span name - Exported traces are now grouped by
service.name
by default
-
nginxreceiver
: Add featuregate to emit 'nginx.connections_current' as a non-monotonic sum (#4326) -
pkg/ottl
: Updates theInt
converter to use a newIntLikeGetter
which will error if the value cannot be converted to an int. (#22059)
Affected components: transformprocessor, filterprocessor, routingprocessor, tailsamplingprocessor, countconnector. It is HIGHLY recommended to use each component's error_mode configuration option to handle errors returned byInt
. -
dockerstatsreceiver
: Remove container.memory.total_swap and container.memory.swap metrics as they are not reported by the docker API (#21190)
🚀 New components 🚀
apachesparkreceiver
: adds the apachesparkreceiver metric receiver (#21046)awscloudwatchmetricsreceiver
: Added AWS CloudWatch metrics receiver using GetMetricData API call (#15667)syslogexporter
: Add syslogexporter for sending logs to syslog server (#17982)filereceiver
: This change enables the file receiver. (#14638)datasetexporter
: Enable Datasetexporter ininternal/components
(#20660)splunkenterprisereceiver
: Wireframe for the splunk enterprise monitoring receiver (#12667)WebSocket processor
: Add WebSocket processor skeleton (#19633)
💡 Enhancements 💡
jmxreceiver
: Add the JMX metrics gatherer version 1.26.0-alpha to the supported jars hash list (#22042)receivercreator
: add logs and traces support to receivercreator (#19205, #19206)pkg/ottl
: Add Log function (#18076)awsemfexporter
: Added atags
field to the config of the exporter to set tags for a Cloudwatch Log Group (#19406)tailsamplingprocessor
: Add OTTL Condition policy for tailsampling processor. (#20294)pkg/ottl
: Add a uuid function to ottl (#20301)oracledbreceiver
: Adds support forconsistent gets
anddb block gets
metrics. Disabled by default. (#21215)pkg/batchperresourceattr
: Mark as not mutating as it does defensive copying. (#21885)cumulativetodelta
: Makes handling of the first observed point configurable. Defaults to auto based on start time. (#20770)elasticsearchexporter
: Add dynamic indexing option to elasticsearchexporter (#5854)receiver/kafkareceiver
: Support configuration of initial offset strategy to allow consuming form latest or earliest offset (#14976)fileexporter
: provide additional documentation for the working setup of the file exporter. (#20279)internal/filter
: AddLog
,UUID
, andParseJSON
converters to filterottl standard functions (#21970)pkg/stanza
: aggregate the latter part of the split-log due to triggering the size limit (#21241)exporter/datadog
: Map Docker stats receiver metrics to Datadog container metrics. (#22149)
This change enables the use of the Containers (Overview) dashboard.dockerstatsreceiver
: docker container'spids_stats
metrics are reported when available (#21041)datasetexporter
: Add support for exporting logs and traces. (#20660)datasetexporter
: Mark component as alpha and upgrade to the latestdataset-go
v0.0.8. (#20660)k8sattributesprocessor
: Support adding attributek8s.deployment.uid
. (#14003)kafkareceiver
: Addtext
unmarshaler, which will decode the kafka message as text and insert it as the body of a log record. (#20734)cmd/mdatagen
: Allow setting resource_attributes without introducing the metrics builder. (#21516)receiver/mongodbatlasreceiver
: Allow collection of MongoDB Atlas Access Logs as a new feature of the MongoDBAtlas receiver. (#21182)sshcheckreceiver
: Promote sshcheckreceiver to alpha (#21488)pkg/ottl
: AddFloatLikeGetter
andFloatGetter
to facilitate float retrival for functions. (#21896)pkg/ottl
: Add access to get and set span kind using a string (#21773)processor/routingprocessor
: Instrument the routing processor with non-routed spans/metricpoints/logrecords counters (OTel SDK). (#21476)skywalkingreceiver
: Refactoring the code structure/directory for the following metrics receiver implementation (#20315)exporter/splunkhec
: Improve performance and reduce memory consumption. (#22018)processor/transform
: Add access to the Log function (#22014)
🧰 Bug fixes 🧰
-
statsdreceiver
: Handles StatsD server not running when shutting down to avoid NPE (#22004) -
exporter/elasticsearch
: Fix elasticsearch exporter not exporting span events (#18479) -
tests
: switch math/rand to crypto/rand (#20341) -
dockerstats
: Only one label/envVar was added even if multiple ones were specified by ContainerLabelsToMetricLabels or EnvVarsToMetricLabels (#21113) -
pkg/ottl
: Fix the factory name for the limit function (#21920) -
awsxrayexporter
: Fix a panic that can occur with string-valued DynamoDB attributes. (#22707) -
processor/filter
: Fix issue where the OTTL functionHasAttributeKeyOnDatapoint
was not usable. (#22057) -
pkg/ottl
: Allow using capture groups inreplace_all_patterns
when replacing map keys (#22094) -
confmap/provider/s3provider
: Fix typo in s3 confmap provider regex pattern (#22146)
Fix regex pattern for s3 confmap provider. This typo allows for using different domains
from what is expected. -
confmap/provider/s3provider
: Properly handle bucket names containing dot characters (#22054)
Properly handle bucket names containing dot characters, according to
https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html -
receiver/dockerstats
: Fixcontainer.memory.usage.total
andcontainer.memory.percent
calculation. (#21097)
The fix updates the way to calculate the metrics to be consistent withMEM USAGE`` and
MEM %showed by the
stats` docker CLI command. It also support v1 and v2 of cgroups.
Expect to see an increase of these metrics if currently running the receiver in a cgroups v1 environment.
As well as see a decrease in these values if running on cgroups v2 environment. -
exporter/splunkhec
: Fix a bug causing incorrect data in the partial error returned by the exporter (#21720)
v0.77.0
The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.
v0.77.0
🛑 Breaking changes 🛑
dotnetdiagnosticsreceiver
: Removing component which has been unmaintained for over 6 months (#13218)cmd/mdatagen
: Don't exposeresource_attributes
user config section if it's empty. (#21519)pkg/ottl
: Reimplement all OTTL function factories to implement theottl.Factory
interface. (#14712)
Theottl.Factory
interface allows making factories extendable and defines
canonical names for the functions across components using the OTTL.
🚀 New components 🚀
datasetexporter
: Add new DataSet exporter. (#20660)
💡 Enhancements 💡
receiver/azuremonitorreceiver
: Providing an option to include resource tags and location as metric attributes (#21173)mdatagen
: Support stability level per signal (#21153)filestatsreceiver
: Promote filestats receiver to alpha, add to the otelcontribcol tests. (#21257)mdatagen
: Add support for slice and map attributes. (#18272)receiver/mongodbatlasreceiver
: emit "mongodb_atlas.cluster.name
" attribute which is thename of the cluster as defined in Atlas. This attribute is disabled by default, if you want to emit it, you'll need to explicitly enable it. (#21154)pkg/ottl
: Allow using Converters as constant boolean expressions (#20911)
This means you don't need to add== true
afterIsMatch
in OTTL conditions.pkg/ottl
: Add support for complex indexing of Paths and Converters to allow accessing nested items. (#20754)
All components using OTTL can take advantage of this feature.signalfxexporter
: Expose dimension_client configuration for dimension/metadata updates (#21512)pkg/stanza
: Add "unquote" operator (#10282)
🧰 Bug fixes 🧰
snowflakereceiver
: Wiring snowflakereceiver component by adding it to components.go (#21381)pkg/stanza
: Fix errors in loop evaluating file attributes on windows if the file path contains a Junction (#21088)clickhouseexporter
: Fix insert metrics with duplicate scope data (#21082)transformprocessor
: Fixed a scenario where replace_all_patterns would wipe out non-string values on key name change. (#21109)influxdbexporter
: handle empty attribute values emitted by hostmetricsreceiver with logger.Debug instead of PermanentError (#21474)receiver/k8scluster
: Make sure the k8scluster receiver is watching for v2 and v2beta2 HorizontalPodAutoscalers for Kubernetes 1.26 (#20480)splunkhecexporter
: Enforce marshaling json with sorted keys by alphabetical order to produce identical hashes when merging events. (#21486)googlecloudspannerreceiver
: Changing type of USED_BYTES from INT to FLOAT (#21500)receiver/mongodbatlasreceiver
: Disk Usage & Utilization metrics are now being reported correctly. (#21180)receiver/mongodbatlasreceiver
: Reduce the likelihood that mongodbatlas log receivers will emit empty logs, causing unnecessary events to propagate through a pipeline. (#14170)datadogexporter
: Use literal 'host' resource attribute on OTLP payloads when present as the host value to avoid double tagging. (#21507)receiver/nsx
: Remove incorrectly exposed resource attributes from the user configuration interface. (#21523)signalfxexporter
: disk.utilization and disk.summary_utilization now matches the df command by only counting non-root usage. disk.utilization = (used/(used + free)) * 100 (#20656)
v0.76.3
The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.
v0.76.3
🛑 Breaking changes 🛑
-
prometheusreceiver, prometheusexporter, prometheusremotewrite
: Enable pkg.translator.prometheus.NormalizeName by default (#20518)
Enabling normalization by default changes the emitted metrics for components that rely on
the prometheus translation package. This feature can still be disabled via the following
--feature-gates=-pkg.translator.prometheus.NormalizeName
-
cumulativetodeltaprocessor
: Removes stableprocessor.cumulativetodeltaprocessor.EnableHistogramSupport
feature gate. Setting this gate will cause an error. (#20717) -
exporter/lokiexporter
: Remove deprecated Loki exporters parameters. (#15653, #15365)
The support oflabels.{attributes/resource}
,labels.record
,tenant
, | andformat
configuration parameters are dropped in favor of attribute hints way of configuring the exporter. -
solacereceiver
: Changed the type of the max_unacknowledged configuration option from uint32 to int32 (#20666)
🚩 Deprecations 🚩
dotnetdiagnosticsreceiver
: add deprecation notice (#20740)
🚀 New components 🚀
lokireceiver
: Added implementation of the Loki receiver component (#18635)receiver/azuremonitorreceiver
: New component for scraping Azure Monitor metrics (#18899)cassandra_exporter
: Cassandra exporter implementation (#17910)lokireceiver
: Mark loki receiver as Alpha (#18635)filestatsreceiver
: Initial implementation of the new filestatsreceiver component. (#19729)
💡 Enhancements 💡
-
jmxreceiver
: Add the JMX metrics gatherer version 1.24.0-alpha to the supported jars hash list (#20551) -
jmxreceiver
: Add the JMX metrics gatherer version 1.25.0-alpha to the supported jars hash list (#21052) -
jmxreceiver
: Add the JMX metrics gatherer version 1.25.1-alpha to the supported jars hash list (#21103) -
exporter/awsxray
: Add opt-in telemetry for X-Ray receiver/exporter (#19415) -
awsemfexporter
: Add support AWS Embedded Metric Format Version 0 (#20314) -
splunkhecexporter
: Set the default value of the idle connection timeout to 10s, rather than 30s by default (#20543) -
coralogixexporter
: Allow users to use only Coralogix domain to configure exporter (#20719) -
datadogexporter
: Ensure that container tags are set globally on the payload so that they can be picked up as primary tags in the app (APM). (#20923) -
datadogexporter
: Reduce log level of retriable errors to Debug level (#20755) -
datadogexporter
: Support OTel semconv 1.17.0 in Datadog OTLP trace ingestion. (#20923) -
datadogexporter
: Use minimum and maximum values from cumulative Histograms. Values are used only when we can assume they are from the last time window or otherwise to clamp estimates. (#20872) -
journaldreceiver
: add support formatches
configuration (#20295) -
fileexporter
: Add periodic flushing (#18251)
Adding flushing to the file exporter eases the analysis
of the output the exporter generates. -
pkg/stanza
: Add and option to pause reading a file and attempt to resend the current batch of logs if it encounters an error from downstream components. (#20511)
Add aretry_on_failure
config option (disabled by default) that can be used to slow down reading logs instead of
dropping logs if downstream components return a non-permanent error. The configuration has the following options:enabled
: Enable or disable the retry mechanism. Default isfalse
.initial_interval
: The initial interval to wait before retrying. Default is1s
.max_interval
: The maximum interval to wait before retrying. Default is30s
.max_elapsed_time
: The maximum amount of time to wait before giving up. Default is5m
.
-
k8sattributesprocessor
: Allow getting k8s.container.name, container.image.name and container.image.tag by container.id. (#19468)
The container.id resource attribute can be set automatically in most SDKs by means of API. -
instanaexporter
: Preserve resource attributes in converted spans (#20454) -
splunkhecexporter
: Apply a new configmaxEventSize
on our events, it would break down the events based on this. This basically implements HEC'smaxEventSize
on our exporter. It is implemented on uncompressed data. (#20290) -
splunkhecreceiver
: Make Splunk HEC receiver Health endpoint mimic the real one (#20871) -
receiver/mongodbatlasreceiver
: emit "mongodb_atlas.user.alias
" attribute which is the user-friendly hostname of the cluster node as displayed in the Atlas portal. This attribute is disabled by default, if you want to emit it, you'll need to explicitly enable it. (#18881) -
prometheusreceiver
: All receivers are setting receiver name and version when sending data. This change introduces the same behaviour to the prometheus receiver. (#20902) -
splunkhecexporter
: Adding an option in splunkhecexporter to enable heartbeat. A heartbeat is a metadata event about the current environment and build information. If heartbeat is enabled, splunkhecexporter will periodically send heartbeat to the destination in given time intervals from configurations. (#20225) -
vcenterreceiver
: Adds VM CPU usage and utilization metrics (#20895) -
awss3exporter
: Add implementation of AWS S3 exporter (#2835)
🧰 Bug fixes 🧰
servicegraphprocessor
: Only create client virtual nodes when server spans are orphans (#19764)datadogexporter
: Re-add support for span links (span links are added as metadata to the converted span), which were erroneously removed from previous release. (#20923)datadogexporter
: Fix issue in hostname detection. (#20923)
In the latest release, feature gate (exporter.datadog.hostname.preview) was graduated to Stable. The behaviour was set to the behaviour of the feature gate disabled, instead of enabled. The behaviour is now set to the behaviour of the feature gate enabled.azuremonitorexporter
: Ensure that metric attributes are exported to Azure Monitor (#19407)pkg/stanza
: fix eventData format for Windows events (#20547)fluentforwardreceiver
: Fixed performance issue. (#20721)receiver/k8scluster
: Use newer v2 HorizontalPodAutoscaler for Kubernetes 1.26 (#20480)
v2beta2 HorizontalPodAutoscaler is no longer available starting in Kubernetes 1.26pkg/stanza
: fix flaky test (#20877)pkg/stanza
: Fix issue where recombine operator would never flush. (#20451)
1.Make the forceFlushTimeout compare with timeSinceFirstEntry not timeSinceLastEntry 2.set the period of ticker to 1/5 forceFlushTimeoutspanmetricsconnector
: fix spanmetrics connector to support adding exemplar to metric (#20771)mongodbreceiver
: Fixes scraper errorUnauthorized
by not calling index stats on an internal local MongoDB database. (#21114)receiver/mongodbatlasreceiver
: Ensure that Process metrics are emitted with only the correct subset of attributes. (#21155)splunkhecexporter
: Do not send data to a Splunk backend if no data is present in the batch. Previously compressed batches would not correctly detect data was not present in the batch. (#20290)filelogreceiver
: Fix issue where first few lines of a file could be ignored when another file had recently contained the same beginning. (#20745)filelogreceiver
: stanza panic when trace_flags is an empty string (#20924)hostmetricsreceiver/processscraper
: fixing the processmetrics tests to support testing collection in darwin (#19141)
Darwin only supports some of the processmetrics + using Cmdline to get the Executable Path, which caused tests to fail.awsxrayexporter
: Fixed DynamoDB table name from being set as an empty string when reading from attributes (#19204)
v0.76.2
The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.
🛑 Release retracted 🛑
v0.76.1
The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.
v0.76.1
🛑 Release retracted 🛑
v0.75.0
The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.
v0.75.0
🛑 Breaking changes 🛑
-
datadogexporter
: Graduate exporter.datadog.hostname.preview feature gate to Stable. (#20286) -
pkg/ottl
: Add typed getter forpcommon.map
and update related functions to use it. (#19781)
Using the impacted functions, such askeep_keys
orreplace_all_patterns
, without apcommon.map
will now result in an error. Only pass these function paths that result in apcommon.map
or setErrorMode
toIgnoreError
. -
pkg/ottl
: UpdatesConvertCase
,ParseJSON
,Split
, andSubstring
to useStringGetter
(#19137)
Affected components:transformprocessor
,filterprocessor
,routingprocessor
. It is HIGHLY recommended to use each component'serror_mode
configuration option to handle errors returned by these functions. -
pkg/ottl
: Adds new StringLikeGetter for converting values to string for use. (#19782)
Concat now converts more types to string instead of ignoring them. IsMatch now converts []byte to string usinghex.EncodeToString(v)
.
🚩 Deprecations 🚩
datadogexporter
: Deprecatemetrics::histograms::send_count_sum_metrics
in favor ofmetrics::histograms::send_aggregation_metrics
. (#20285)
Togglingmetrics::histograms::send_count_sum_metrics
will now send .min and .max metrics when available.
🚀 New components 🚀
awss3exporter
: Add new AWS S3 exporter. (#9979)servicegraphconnector
: Add servicegraph connector to the build. (#20452)
💡 Enhancements 💡
-
clickhouseexporter
: Insert instrumentation scope name and version to SpanAttributes column in traces table (#17408) -
stanza
: Enhancement pkg/stanza/flatten to support resource and attributes (#20448) -
azuredataexplorerexporter
: Migrate stablity to beta. All the dependent libraries have moved to beta. (#19161) -
awsecscontainermetricsreceiver
: Add ServiceName from task metadata endpoint (#19728) -
mdatagen
: Warnings can now be specified in metadata.yaml to be included in the generated status table. (#20242) -
coralogixexporter
: Change coralogixexporter to default to gzip compression for logs and traces (#20337) -
datadogexporter
: Adds support for span links (span links are added as metadata to the converted span). (#20286) -
mdatagen
: Do not print "Supported pipeline types" in the generated status for extensions (#20236) -
filereceiver
: Update file receiver to be able to replay metrics in time. (#14638) -
googlecloudspannerreceiver
: adding table size statistics as metrics (#18689) -
processscraper
: Introducedmute_process_exe_error
andmute_process_io_error
flags to allow scraping of all processes on Linux machines. (#18923) -
attributesprocessor, resourceprocessor
: Add feature gate to support using SHA2-256 instead of SHA-1 for hashing (#4759, #5576)
enable switching to use SHA-2 256 with the feature gatecoreinternal.attraction.hash.sha256
-
translator/loki
: Normalize label names so they follow the Prometheus label names standard (#14113)
Loki doesn't support label names containing dots. |
Users had to convert dot-separated attributes into underscore-separated attributes before promoting them to Loki labels. |
From now on users can drop relabeling from their configuration. All dots in label names will be replaced with underscores automatically before sending request to Loki. -
mongodbatlasreceiver
: Add support to collect organization events. (#19449, #20308) -
datadogexporter
: Send .min and .max metrics for delta OTLP Histograms and Exponential Histograms whenmetrics::histograms::send_aggregation_metrics
is enabled. (#20285) -
receiver/purefareceiver
: Add missing code snippet that validate the config file (#14886) -
servicegraphprocessor
: Making cache and expire loop time configurable (#19639)
add new config items(cache_loop, store_expiration_loop) -
servicegraphprocessor
: Making peer attributes of virtual node building configurable (#20428)
add new config items(virtual_node_peer_attributes: [db.name, rpc.service]) in Config: -
solacereceiver
: Updated solacereceiver to handle new features of Solace PubSub+ 10.4.x (#20349) -
sqlserverreceiver
: Adds support to collect metrics from a SQL Server that has a named instance. (#19140, #20247) -
logicmonitorexporter
: adds support for traces. (#19646) -
elasticsearchexporter
: Support Persistent queue for Elasticsearch exporter. (#19424)
🧰 Bug fixes 🧰
-
coralogixexporter
: Correctly declare mutation capability in factory for all signal exporter. (#20292) -
processor/metricstransform
: Preserve metric description while aggregating labels (#14577) -
extension/sigv4authextension
: Don't panic if no credentials provider is set up. (#19796) -
clickhouseexporter
: Fix clickhouse exporter default TTL settings. (#20302) -
receiver/elasticsearchreceiver
: Fix bug - no nodeStatsMetrics for es version before 7.9 (#19389) -
prometheusreceiver
: Update Prometheus dependency and disable newly-failing OpenMetrics compatibility tests (#20270)
Prometheus now accepts exemplar data on all metric types, which causes OpenMetrics compatibility tests to fail.
This change disables the negative tests relating to exemplar parsing. -
processor/k8sattributes
: Fix image name parsing when repository name contains a port number. (#20239) -
mongodbatlasreceiver
: Fix issue where default collection interval of 1 minute was too short to collect several metrics. (#18032)
Default collection interval is now 3 minutes. -
pkg/ottl
: Fix bug where StringGetter was not allowed in a slice as a function param. (#19783) -
splunkhecexporter
: Make sure to not return an error if we are over capacity, just return that we cannot accept the event. (#20481) -
signalfxexporter
: Fixes undesired default reporting of per-core system.cpu.time for idle states. (#20354)
v0.74.0
The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.
v0.74.0
🛑 Breaking changes 🛑
-
k8sattributes
: Remove support of deprecatedpod_association
fields (#19642)
Fields are now nested under the pod_association::sources -
k8sattributes
: Remove support of deprecated options in extract.metadata field (#19438) -
spanmetricsconnector
: Remove deprecatedlatency_histogram_buckets
configuration parameter. (#19372)
Use thehistogram
configuration section to provide buckets for
explicit buckets histogram metrics. -
spanmetricsconnector
: Renamelatency
histogram metrics toduration
. (#19214)
🚩 Deprecations 🚩
spanmetricsprocessor
: Deprecate thespanmetrics
processor in favour of thespanmetrics
connector. (#19736)
Please note that thespanmetrics
connector contains breaking changes related to configurations
metrics names and attributes. Please see thespanmetrics
connector README for more information.
🚀 New components 🚀
lokireceiver
: The Loki receiver implements the Loki push api as specified here (#18635)cloudflarereceiver
: Adds support for receiving logs from Cloudflare's LogPush API. (#19201)webhookeventreceiver
: New component wireframe for webhookeventreceiver (#18101)spanmetricsconnector
: Add thespanmetricsconnector
connector to build. (#18760)
💡 Enhancements 💡
-
exporter/awsemfexporter
: Add ServiceName/service.name as a valid token replacement in log_stream_name (#16531) -
azureeventhubreceiver
: Add the ability to consume Metrics from Azure Diagnostic Settings and convert them into OpenTelemetry Metrics (#18690) -
mdatagen
: use metadata to generate status table (#19175)
This change updates mdatagen to support auto-generation of the stability level table in the documentation. It also
generates a generated_status.go file which contains the stability which is used in the factory of a component. -
mdatagen
: Allow mdatagen to support components that do not produce metrics. (#19772)
This allows us to define metadata.yaml files for components that don't generate metrics, specifically in support of generating the status table. -
countconnector
: Add ability to count by attributes (#19432) -
healthcheckextension
: Addresponse_body
configuration option that allows specifying a specific response body (#18824) -
k8sobjectsreceiver
: Enabling resource version filter on pull mode (#18828) -
kubeletstatsreceiver
: Add support forkubeConfig
auth_type in kubeletstatsreceiver (#17562) -
translator/loki
: Loki add raw log export format (#18888) -
clickhouseexporter
: Improve clickhouse DSN parsing (#18079)
Improve clickhouse DSN parsing to support all possible configuration options and fixes TLS support. -
routingprocessor
: Adds newerror_mode
configuration option that allows specifying how errors returned by OTTL statements should be handled. (#19147)
If a condition errors when usingignore
the payload will be routed to the default exporter. -
spanmetricsconnector
: Set resource attributes for generated metrics. (#18502) -
spanmetricsconnector
: Add optionalseconds
unit support for recording generated duration measurements. (#18698)
Theunit
is configurable. The allowed values arems
ands
.
The defaultunit
isms
. -
splunkhecreceiver
: Appends query param (index, source, sourcetype, and host) for raw path (#19632) -
splunkhecreceiver
: align error message with splunk enterprise to include No Data, Invalid Data Format, Event field is required, and Event field cannot be blank (#19219) -
reciver/statsdreceiver
: Metrics emitted by the statsd receiver are batched by source IP address, available in context. (#15290)
🧰 Bug fixes 🧰
elasticsearchexporter
: roll back elasticsearch client to v7.17.7 due to incompatibility with older elasticsearch versions (#16310)sqlqueryreceiver
: Don't panic when a query produces NULLs (#19177)sentry/sentryexporter
: Fixenvironment
configuration not being tracked properly on sentry. (#18694)
For sentry export, the environment value should have been attached to transaction.azuremonitorexporter
: Ensure that attributes for LogRecords are exported to Azure Monitor (#16557)azuremonitorexporter
: Fix a bug that prevented integer NumberDataPoint metrics to be exported to Azure Monitor. (#18905)azuremonitorexporter
: Ensure that resource attributes, instrumentation scope and cloud tags are exported to Azure Monitor for logs (#18525)influxdbexporter
: include histogram min and max in InfluxDB/Telegraf Prometheus schemas (#16714)influxdbexporter
: Fix exported histograms to be cumulative, Prometheus-style (#19453)influxdbreceiver
: Test the InfluxDB write APIs with canonical client libraries (#5321)influxdbreceiver
: Decompose Prometheus-style, cumulative histogram bucket counts (#19453)receiver/elasticsearch
: Fix "no such index [_cluster]" error by adding "/nodes" to the ClusterStats request (#17867)mongodbatlasreceiver
: Fixes issue where filestorageextension usage with the mongodbatlasreceiver would cause a race condition/timeout (#19434)mysqlreceiver
: Adds a version check to make sure replica query is supported (#19469)oracledbreceiver
: Update metric description and explain that unlimited translates to -1 (#19752)signalfxexporter
: use a copy of system.cpu.time and system.paging.operations when splitting the metric, this will allow the user to send the original metric (#19743)transformprocessor
: Fixes bug where the value forerror_mode
was ignored. (#19629)
v0.73.0
The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.
v0.73.0
🛑 Breaking changes 🛑
googlecloudexporter
: Disable retry helper by default in GCP and GMP exporter configs. (#19203)k8sattributesprocessor
: Removecontainer.id
as default metadata given possible ambiguity matching a container run to a container ID (#16432)pkg/ottl
: Ability to reference matched capture groups inreplace_pattern()
andreplace_all_patterns()
(#18610)
This change affects all processors that use OTTL (i.e.transformprocessor
,routingprocessor
, andfilterprocessor
).
This is a breaking change in the rare scenario that the$
character is currently used in a replacement string.
To output a literal$
in a replacement string it must now be escaped with an additional$
.resourcedetectionprocessor
: Bump OpenShift semconv version from 1.16.0 to 1.18.0. (#19168)
Rename google openshift platform attribute from google_cloud_openshift to gcp_openshift.spanmetricsconnector
: Drop Prometheus-specific metrics labels sanitization. (#18678)
The spanmeterics connector is the OTel component, therefore, we would
like to strip Prometheus-specific parts from it. Metric names and attributes
conversion to Prometheus conventions should happen in Prometheus components,
e.g. Prometheus Remote Write exporter.
🚀 New components 🚀
filereceiver
: Add basic file reading capabilities to file receiver. Second PR. (#14638)
This component is not yet enabled.
💡 Enhancements 💡
-
jmxreceiver
: Add the JMX metrics gatherer version 1.23.0-alpha to the supported jars hash list (#18888) -
telemetrygen
: Add makefile targets and docker build for telemetrygen (#18835) -
internal/filter
: Adds newfilterottl
package that enables filtering/matching using OTTL conditions. (#18930) -
pulsarexporter
: Expose in configuration all Pulsar producer options (#19182) -
receiver/splunkhec
: Adds sharedcomponent to Splunk HEC Receiver (#18734) -
resourcedetectionprocessor
: Add support for detecting AWS Lambda resources. (#17584) -
awscloudwatchlogsexporter
: Add the ability to export raw log to cloud watch (#18758)
Add emf and raw log support for aws cloudwatch exporter. -
awsemfexporter
: The AWS EMF exporter now supports the additional configuration flagretain_initial_value_of_delta_metric
. With this flag active the first value of a metric is not discarded but instead sent to AWS. (#16218) -
processor/tailsampling
: adds support for a BooleanAttribute PolicyType (#17545)
enables use of boolean attrbiutes in defining tail sampling policies -
pkg/stanza
: Addheader_delimiter
option to thecsv_parser
. (#18198) -
datadogexporter
: Enable gzip compression for metric payloads submitted by native Datadog client (#17373) -
hostmetrics
: Have the hostmetrics receiver file system scraper use more debug messages (#18236)
Log a debug message instead of an error if the collector does not have the permissions to access a locked drive on the host. We do not want to log an error message on every poll for this case. -
exporter/prometheus
: Produce exemplars for monotonic sum metrics (i.e. counters in Prometheus) when available (#18201)
This could be a breaking change if you already have enabled OpenMetrics format for the Prometheus exporter and have enabled exemplar ingestion in your Prometheus scraper. To ensure names and types are generated correctly according to the OpenMetrics conventions, you should run your collector with--feature-gates=pkg.translator.prometheus.NormalizeName
-
filelogreceiver
: Adds ability to parse a file header and parse it as metadata to decorate log entries. (#18198)
This feature must be activated with thefilelog.allowHeaderMetadataParsing
feature gate. -
filterprocessor
: Adderror_mode
configuration option that allows specifying how errors from OTTL conditions should be handled. (#19142) -
receiver/purefareceiver
: Ensure a clear visualization for hosts scraper from Pure Storage FlashArray API (#14886) -
k8sattributesprocessor
: e2e test support log data (#18392) -
k8sattributesprocessor
: k8sattributesprocessor e2e tests support metric data type. (#18391) -
k8sattributesprocessor
: Defaultcontainer.id
to latest instance unlessk8s.container.restart_count
is specified (#16432) -
mdatagen
: Turn on the ability to enable/disable resource attributes by embedding MetricsSettings and ResourceAttributesSettings into all scraping receivers as MetricsBuilderConfig (#16373)
Currently, the only way to add configurative functionality to mdatagen is by using a bunch of WithResourceAttributesSettings options to the constructor.
This PR changes the first argument to the NewMetricsBuilder constructor to be of type MetricsBuilderConfig,
which is a new class that wraps both MetricsSettings and ResourceAttributesSettings, and may be (hopefully) easily extended with more
configuration in the future. -
pkg/ottl
: Add Eval function to Statements (#18915) -
Process Metrics for Mac
: Enabling process metrics to be collected for Mac in the hostmetrics receiver (#17863) -
servicegraphprocessor
: servicegraph support virtual/peer node (#17196) -
tailsamplingprocessor
: Add a max_spans configuration for the span_count policy of tailsamplingprocessor (#18215) -
spanmetricsconnector
: Allow optional usage of Exponential Histograms when generating latency metrics. (#18528) -
splunkhecexporter
: Allow merging metric events. (#11532) -
filelogreceiver
: Support preserving whitespace for log entries (#18242) -
awsemfexporter
: Support exporting quantile for summary metrics (#17265) -
cmd/telemetrygen
: Initial implementation oftelemetrygen logs
subcommand for exporting log data (#12927) -
transformprocessor
: Add error_mode configuration option that allows specifying how the processor should handle errors from statements. (#18693) -
resourcedetectionprocessor
: Update Heroku mappings to match specification (#18872) -
awsxrayexporter
: Allow additions of special attributes to the list of indexable attributes in the AWS X-Ray exporter when explicitly listed by the user (#19173) -
awsxrayexporter
: Reformatted and improved accuracy of data captured in user agent string in the AWS X-Ray exporter (#18264)
🧰 Bug fixes 🧰
bearertokenauthextension
: Allow bearertokenauthextension to pick updated token from bearertoken file for http requests (#17031)cumulativetodeltaprocessor
: exclude the first point after a restart in monotonic sums (#17190, #18053)datadogreceiver
: Fix misuse of span.Type and span.kind meta of dd spans. (#18190)mongodbatlasreceiver
: Fixes issue where on a failed start we don't try to checkpoint with an unset storage client. (#19191)fluentforwardreceiver
: Fix issue where the receiver was dropping errors returned by processors (#18860)filelogreceiver
: Fixed a bug when delete_after_read was enabled partially read files would be deleted on collector shutdown. (#18926)receiver/jaeger
: Fix translation of span status (#19171)hostmetricsreceiver
: Fixprocess.cpu.utilization
calculation by using individualCPUUtilizationCalculator
instances per-PID. (#19119)
Updateprocessscraper
to keep a map of PIDs toCPUUtilizationCalculator
s, rather than using a single instance globally.filterprocessor
: Fixes issue where errors in the filterprocessor might not be logged (#18862)pkg/pdatautil
: Fix a potential panic that could occur while hashing nested maps. (#18910)receiver_creator
: No longer attempt to add observer target toendpoint
if underlying receiver config doesn't support it. (#7381)
Also adds backticked expansion support for more config formstransformprocessor
: Fixes a bug where the transformprocessor's errors failed to be logged. (#18859)prometheusreceiver
: Validate that histograms include the inf bucket (#9384)
v0.72.0
The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!).
v0.72.0
🛑 Breaking changes 🛑
-
fluentbitextension
: remove deprecated extension (#18505) -
all
: Remove go 1.18 support, bump minimum to go 1.19 and add testing for 1.20 (#18436) -
pkg/ottl
: switch ErrorMode to be a string instead of an int (#18692) -
hostmetricsreceiver
: Remove deprecated process memory metrics (#14327)
The metricsprocess.memory.physical_usage
andprocess.memory.virtual_usage
have been deprecated since v0.64.0.
They are now being removed. You should use the following metrics instead:process.memory.usage
,process.memory.virtual
.
For details, see the docs. -
promtailreceiver
: Promtail recevier is completely removed from the repository (#18474, #18493)
Promtail receiver in its current implementation has a dependency on Loki that leads to a huge amount of |
dependencies. It is getting difficult to maintain those dependencies. That's why the decision to |
remove promtail receiver was made
🚩 Deprecations 🚩
jaegerexporter, jaegerthrifthttpexporter
: marking jaeger exporters as deprecated (#18503)promtailreceiver
: Deprecate promtail receiver (#18474, #18493)
Promtail receiver in its current implementation has a dependency on Loki that leads to a huge amount of |
dependencies. It is getting difficult to maintain those dependencies. That's why the decision to |
deprecate and remove promtail receiver was made
🚀 New components 🚀
countconnector
: Add count connector to build (#18501)forwardconnector
: Add forward connector to build (#18501)servicegraphconnector
: Add preliminary implementation as a connector. (#18389)spanmetricsconnector
: Add preliminary implementation as a connector. (#18535)
💡 Enhancements 💡
-
clickhouseexporter
: Add indexes for attributes on metric tables (#18221)
Attributes are used for filtering. Adding indexes for them will speed up queries. -
sentry/sentryexporter
: Addenvironment
configuration option that allows specifying env for transaction. (#18694) -
countconnector
: Add ability to count spans, span events, metrics, data points, and logs, based on ottl conditions. (#18687) -
exporter/awscloudwatch
: Flush logs on the exporter shutdown (#18518) -
resourcedetectionprocessor
: add host.id to system detector (#18533) -
k8sattributesprocessor
: run tests on 4 latest k8s version (#18767) -
filelogreceiver
: Addedmax_batches
configuration parameter to limit the number of batches processed in a polling interval. (#18476) -
filterprocessor
: Add new functionsHasAttrKeyOnDatapoint
andHasAttrOnDatapoint
to allow existing expr matching logic with OTTL. (#16798) -
processor/k8sattribute
: add more test cases for k8sattribute e2e (#18512) -
k8sobjectsreceiver
: Ensure that the observed timestamp is set. (#18700) -
k8sobjectsreceiver
: Improving watch mode reliability to handle recoverable issue such as API timeouts. (#18078) -
k8sattributeprocessor
: Allow using k8s.pod.hostname to refer to pod.spec.hostname (#18494) -
translator/loki
: Added default labelsjob=service.namespace/service.name
andinstance=service.instance.id
to log record to send to Loki (#18500) -
pkg/ottl
: Change typed getters to error on nil (#18735) -
pkg/ottl
: Introduce the concept of type-specific Getters that help simplify type assertions in functions. (#18042) -
pkg/ottl
: AddNewStatements
func to enable creation of Statements structs. (#18385) -
redactionprocessor
: Add IgnoreList to redaction processor (#18680) -
translator/prometheusremotewrite
: Add metric name to error message when invalid (#18292)
Exporter prometheusremotewrite doesn't support non-cumulative monotonic, histogram, and summary OTLP metrics.
Added metric name to error message when the unsupported metrics get dropped. -
spanmetricsprocessor
: Support set namespace for generated metric. (#18679) -
awsxrayreceiver
: setservice.name
attribute (#18480) -
signalfxexporter
: Addexclude_properties
config option to filter dimension update property content (#18464) -
snowflakereceiver
: updated README.md to include more detailed documentation. (#14754) -
splunkhecexporter
: Reconnect when server returns 502/429 errors. (#18281) -
pkg/stanza
: ReducedConverter
memory footprint by condensing theaggregationLoop
logic intoworkerLoop
. (#18411) -
telemetrygen
: Implement a simple metric generation command for telemetrygen (#17986)
🧰 Bug fixes 🧰
coralogixexporter
: fix authentication issue when using coralogixexporter with only metrics or traces (#18096)cumulativetodeltaprocessor
: Data points with the NoValueRecorded flag set are no longer considered in calculating deltas. (#18766)awsecscontainermetricsreceiver
: Fix possible sig sev that could happen during component shutdown. (#18736)clickhouseexporter
: Fix metric inserts results in empty entries (#18226)exporter/awskinesis
: Restore Kinesis stream validation on the start (#18522)datadogexporter
: Stop reporting the first cumulative monotonic sum value if the start timestamp of the timeseries matches its timestamp. (#18484)oidcauthextension
: Fix case-sensitivity of authorization header (#18405)oracledbreceiver
: record a value of -1 fororacledb.tablespace_size.limit
if the max tablespace size is not set (#18670)pkg/ottl
: Fix bug where an empty TelemetrySettings struct could result in a panic during condition checking (#18669)spanmetrics
: Do not drop metric data points on attributes cache misses. (#18725)statsdreceiver
: Ensure that the start timestamp and timestamp of successive data points for counters align. (#18470)
v0.71.0
The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!).
v0.71.0
🛑 Breaking changes 🛑
clickhouseexporter
: use endpoint instead of raw dsn in configuration. (#8028)azureeventhubreceiver
: Switch default formatter from "raw" to "azure". (#16549)elasticsearchreceiver
: Remove feature gates for index operations and cluster shards count (#14635)humioexporter
: Remove deprecated humio exporter (#17013)dockerstatsreceiver
: Removed the deprecated scraper implementation which was toggled by the featuregatereceiver.dockerstats.useScraperV2
. (#18449, #9794)tracegen
: Removes tracegen tool now that trace functionality has been moved to telemetrygen. (#9597)extension/jaegerremotesampling
: Remove misleading http endpoint from jaegerremotesampling extension. (#18058)
🚩 Deprecations 🚩
servicegraphprocessor
: Deprecate unprefix label set (#18268)signalfxexporter
: Deprecate configtranslation_rules
in favor of metrics transform processor (#18218)
🚀 New components 🚀
haproxyreceiver
: Adds haproxy receiver to the components of the OpenTelemetry collector contrib distribution (#16829)receiver/purefbreceiver
: Add a new receiver that scrapes metrics using Purestorage FlashBlade API (#17528)datadog-receiver
: Allows you to ingest traces from DDAPM agents (#1852)logicmonitorexporter
: Enable Logicmonitor Exporter (#13727)filereceiver
: A receiver for reading the output of a File Exporter (#14638)
This component is not yet enabled.logicmonitorexporter
: Add implementation for Logicmonitor exporter (#13727)sshcheckreceiver
: Add sshcheck - a receiver to remotely check SSH servers. (#14312)
Check the availability of SSH and SFTP servers.pkg/stanza
: Remove deprecatedadapter.Convert
andadapter.ConvertFrom
functions. (#17429)
💡 Enhancements 💡
-
headerssetter
: Extend the headers setter extension with header modification actions. (#16581, #7596)
Please update configurations to use the action that suits your requirements:insert
: Inserts the new header if it does not exist.update
: Updates the header value if it exists.upsert
: Inserts a header if it does not exist and updates the header
if it exists.delete
: Deletes the header.
The default action isupsert
, however, in future versions, we'll require this
to be explicitly set.
-
azureeventhubreceiver
: Add Azure Event Hub receiver to contrib components (#18208) -
pkg/pdatatest
: Adds more test cases for traces (#18030) -
azuremonitorexporter
: Adds metrics exporting (#14915) -
datadogreceiver
: Adopting OTel apis for the Start and Stop limits (#18227) -
datadogexporter
: Datadog trace exporter will now retry sending usage metrics when it fails (#18238) -
datadogexporter
: Run API key validation on Datadog exporter in separate goroutine (#18238) -
pkg/stanza/operator/transformer/recombine
: add a new "max_log_size" config parameter to limit the max bytes size of the combined field (#17387) -
exporter/awsxray
: Addsaws.xray.annotations
attribute to forward annotation keys from the AWS X-Ray receiver to the AWS X-Ray exporter. (#17550) -
googlecloudexporter
: New release of GCP exporter (#18197)
"Various features and bug fixes for the GCP exporter including:- Fix GetClientOptions conflicts with default credentials
- Support multi-project quota usage
- Include service attributes in logs exporter by default
- Use a copy of shared log labels to prevent interference between LogRecords
- Bump Cloud Trace libraries to support auto-retry on failures"
-
googlemanagedprometheusexporter
: Promote GMP exporter to beta (#18197) -
http_forwarder
: Set factory stability level to beta. (#18100) -
pkg/pdatatest
: Bring reported errors to a consistent state. (#18041) -
signalfxexporter
: Avoid stringify every data point that does not match the filter. (#18274) -
influxdbexporter
: update influxdb-observability and influxdbexporter, to better utilize InfluxDB/IOx (#18080) -
influxdbreceiver
: routine update to dependency influxdb-observability for influxdbreceiver (#18080) -
k8sattributesprocessor
: Add end to end test framework for Kubernetes related components (#15651) -
k8sclusterreceiver
: Change internal metric store to use pdata (#18214) -
mongodbatlasreceiver
: Adds Events API Logs Support (#18061) -
signalfxexporter
: Move config validation to Validate (#18205) -
cmd/otelcontribcol
: Change otelcontribcol and oteltestbedcol to use the builder (#11867) -
pkg/pdatatest
: Ensure all pdata fields are checked. (#17865) -
pkg/pdatatest
: Do not ignore timestamps implicitly, provide explicit options for that. (#17865) -
haproxyreceiver
: Promote haproxy receiver to alpha (#18022) -
splunkhecexporter
: Support exporting log body to raw Splunk HEC endpoint (#18056) -
resourcedetectionprocessor/openshift
: Respect tls config when connecting to the api server. (#17961) -
signalfxexporter
: Move initialization of the config defaults in Unmarshal. (#18207) -
splunkhecexporter
: Expose HTTPClientSettings on splunkhecexporter (#16838) -
awsemfexporter
: Instead of supply metric metadata and label for aws calculator, supply with aws metric key which consists of metric metadata and label (#17207) -
datadogreceiver
: Adopting new Datadog Agent API levels (#18227)
🧰 Bug fixes 🧰
-
clickhouseexporter
: Fix StartTime is not inserted for Gauge and Counter (#18220) -
awscloudwatchreceiver
: Fixes issue where limit per discovery request could be configured to exceed API limitations. (#18293)
The request now always sets a limit of 50 -
cumulativetodeltaprocessor
: exclude the first point even in monotonic metrics (#17190, #18053) -
datadogexporter
: Fix a nil dereferencing bug on http response (#18099) -
prometheusreceiver
: Fix bug in prometheus receiver that panics if no configuration is given. (#16538) -
datadogexporter
: Fixed a bug where using multiple Datadog exporters with different API keys in separate pipelines could result in traces ending up in the wrong account. (#18233) -
receiver/splunkhec
: Return 400 status code when nested indextime fields are present (#17308) -
exporter/loki
: Do not retry on 4xx status code (excluding 429), as these are permanent errors (#18059) -
mezmoexporter
: No longer require a specific path. This will allow for compatibility with both log analysis and pipeline. (#18011) -
servicegraphprocessor
: Fix cache cleanup in servicegraph proccesor to also purge stale series (#16262) -
snmpreceiver
: Set StartTimestamp to scraper start time. (#17984) -
snowflakereceiver
: added doc.go containing pragma for mdatagen (#17978) -
spanmetricsprocessor
: Fix a flaky test caused by a race condition between WaitGroup completion and observed logs being written and flushed. (#18014) -
splunkhecexporter
: Flatten nested attribute map before sending it to splunk as indexed fields. (#17308) -
exporter/datadog
: Fix bug where ddtags are not set correctly when logs are batched. (#17398)