Skip to content

Latest commit

 

History

History
4198 lines (3359 loc) · 266 KB

CHANGELOG.md

File metadata and controls

4198 lines (3359 loc) · 266 KB

Changelog

v0.78.0

🛑 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 to span.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 the Int converter to use a new IntLikeGetter 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 by Int.

  • 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 in internal/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 a tags 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 for consistent gets and db 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: Add Log, UUID, and ParseJSON 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's pids_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 latest dataset-go v0.0.8. (#20660)
  • k8sattributesprocessor: Support adding attribute k8s.deployment.uid. (#14003)
  • kafkareceiver: Add text 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: Add FloatLikeGetter and FloatGetter 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 function HasAttributeKeyOnDatapoint was not usable. (#22057)

  • pkg/ottl: Allow using capture groups in replace_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: Fix container.memory.usage.total and container.memory.percent calculation. (#21097) The fix updates the way to calculate the metrics to be consistent with MEM USAGE`` and MEM %showed by thestats` 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

🛑 Breaking changes 🛑

  • dotnetdiagnosticsreceiver: Removing component which has been unmaintained for over 6 months (#13218)
  • cmd/mdatagen: Don't expose resource_attributes user config section if it's empty. (#21519)
  • pkg/ottl: Reimplement all OTTL function factories to implement the ottl.Factory interface. (#14712) The ottl.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 after IsMatch 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.1

🛑 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 stable processor.cumulativetodeltaprocessor.EnableHistogramSupport feature gate. Setting this gate will cause an error. (#20717)

  • exporter/lokiexporter: Remove deprecated Loki exporters parameters. (#15653, #15365) The support of labels.{attributes/resource}, labels.record, tenant, | and format 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 for matches 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 a retry_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 is false.
    • initial_interval: The initial interval to wait before retrying. Default is 1s.
    • max_interval: The maximum interval to wait before retrying. Default is 30s.
    • max_elapsed_time: The maximum amount of time to wait before giving up. Default is 5m.
  • 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 config maxEventSize on our events, it would break down the events based on this. This basically implements HEC's maxEventSize 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.26
  • pkg/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 forceFlushTimeout
  • spanmetricsconnector: fix spanmetrics connector to support adding exemplar to metric (#20771)
  • mongodbreceiver: Fixes scraper error Unauthorized 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.75.0

🛑 Breaking changes 🛑

  • datadogexporter: Graduate exporter.datadog.hostname.preview feature gate to Stable. (#20286)

  • pkg/ottl: Add typed getter for pcommon.map and update related functions to use it. (#19781) Using the impacted functions, such as keep_keys or replace_all_patterns, without a pcommon.map will now result in an error. Only pass these function paths that result in a pcommon.map or set ErrorMode to IgnoreError.

  • pkg/ottl: Updates ConvertCase, ParseJSON, Split, and Substring to use StringGetter (#19137) Affected components: transformprocessor, filterprocessor, routingprocessor. It is HIGHLY recommended to use each component's error_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 using hex.EncodeToString(v).

🚩 Deprecations 🚩

  • datadogexporter: Deprecate metrics::histograms::send_count_sum_metrics in favor of metrics::histograms::send_aggregation_metrics. (#20285) Toggling metrics::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: Introduced mute_process_exe_error and mute_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 gate coreinternal.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 when metrics::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

🛑 Breaking changes 🛑

  • k8sattributes: Remove support of deprecated pod_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 deprecated latency_histogram_buckets configuration parameter. (#19372) Use the histogram configuration section to provide buckets for explicit buckets histogram metrics.

  • spanmetricsconnector: Rename latency histogram metrics to duration. (#19214)

🚩 Deprecations 🚩

  • spanmetricsprocessor: Deprecate the spanmetrics processor in favour of the spanmetrics connector. (#19736) Please note that the spanmetrics connector contains breaking changes related to configurations metrics names and attributes. Please see the spanmetrics 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 the spanmetricsconnector 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: Add response_body configuration option that allows specifying a specific response body (#18824)

  • k8sobjectsreceiver: Enabling resource version filter on pull mode (#18828)

  • kubeletstatsreceiver: Add support for kubeConfig 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 new error_mode configuration option that allows specifying how errors returned by OTTL statements should be handled. (#19147) If a condition errors when using ignore the payload will be routed to the default exporter.

  • spanmetricsconnector: Set resource attributes for generated metrics. (#18502)

  • spanmetricsconnector: Add optional seconds unit support for recording generated duration measurements. (#18698) The unit is configurable. The allowed values are ms and s. The default unit is ms.

  • 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: Fix environment 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 for error_mode was ignored. (#19629)

v0.73.0

🛑 Breaking changes 🛑

  • googlecloudexporter: Disable retry helper by default in GCP and GMP exporter configs. (#19203)
  • k8sattributesprocessor: Remove container.id as default metadata given possible ambiguity matching a container run to a container ID (#16432)
  • pkg/ottl: Ability to reference matched capture groups in replace_pattern() and replace_all_patterns() (#18610) This change affects all processors that use OTTL (i.e. transformprocessor, routingprocessor, and filterprocessor). 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 new filterottl 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 flag retain_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: Add header_delimiter option to the csv_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 the filelog.allowHeaderMetadataParsing feature gate.

  • filterprocessor: Add error_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: Default container.id to latest instance unless k8s.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 of telemetrygen 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: Fix process.cpu.utilization calculation by using individual CPUUtilizationCalculator instances per-PID. (#19119) Update processscraper to keep a map of PIDs to CPUUtilizationCalculators, 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 to endpoint if underlying receiver config doesn't support it. (#7381) Also adds backticked expansion support for more config forms
  • transformprocessor: 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

🛑 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 metrics process.memory.physical_usage and process.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: Add environment 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: Added max_batches configuration parameter to limit the number of batches processed in a polling interval. (#18476)

  • filterprocessor: Add new functions HasAttrKeyOnDatapoint and HasAttrOnDatapoint 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 labels job=service.namespace/service.name and instance=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: Add NewStatements 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: set service.name attribute (#18480)

  • signalfxexporter: Add exclude_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: Reduced Converter memory footprint by condensing the aggregationLoop logic into workerLoop. (#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 for oracledb.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

🛑 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 featuregate receiver.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 config translation_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 deprecated adapter.Convert and adapter.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 is upsert, 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: Adds aws.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)

  • googlemanagedprometheusexporter Fixed broken export on target_info and scope_info metrics for GMP. (#18468)

v0.70.0

🛑 Breaking changes 🛑

  • dockerstatsreceiver: Transition the receiver.dockerstats.useScraperV2 featuregate to stable (#17509, #9794)
  • exporter/azuredataexplorer: Changed the type of Config.ApplicationKey to configopaque.String. (#17273)
  • exporter/azuremonitor: Changed the type of Config.InstrumentationKey to configopaque.String. (#17273)
  • exporter/coralogix: Changed the type of Config.PrivateKey to configopaque.String. (#17273)
  • exporter/elasticsearch: Changed the types of the Config.{Password,APIKey} fields to configopaque.String. (#17273)
  • exporter/influxdb: Changed the types of the Config.Token and Config.V1Compatibility.Password fields to configopaque.String. (#17273)
  • exporter/instana: Changed the type of Config.AgentKey to configopaque.String. (#17273)
  • exporter/logicmonitor: Changed the type of Config.APIToken.AccessKey to configopaque.String. (#17273)
  • exporter/logzio: Changed the type of Config.Token to configopaque.String. (#17273)
  • exporter/mezmo: Changed the type of Config.IngestKey to configopaque.String. (#17273)
  • exporter/pulsar: Changed the types of the Config.Authentication.Token.Token and Config.Authentication.Athenz.PrivateKey fields to configopaque.String. (#17273)
  • exporter/sapm: Changed the type of Config.AccessToken to configopaque.String. (#17273)
  • exporter/tencentcloudlogservice: Changed the type of Config.SecretKey to configopaque.String. (#17273)
  • exporter/alibabacloudlogservice: Changed the type of Config.AccessKeySecret to configopaque.String. (#17273)
  • extension/basicauth: Change Config.Password to use type configopaque.String. (#17273)
  • extension/bearertokenauth: Change config.BearerToken to use configopaque.String type. (#17273)
  • extension/oauth2clientauth: Change Config.ClientSecret to use the configopaque.String type. (#17273)
  • pkg/ottl: Change signatures of ottl and all context Parsers to accept a list of Options. (#13759)
  • pkg/translator/prometheusremotewrite: Remove deprecated in 0.45 MetricsToPRW function. (#17446)
  • spanmetricsprocessor: Emits all metrics (whose dimension keys are cached) every configured duration (#15688, #15687, #16024)

🚩 Deprecations 🚩

  • tracegen: Deprecates tracegen, functionality has been moved to telemetrygen traces (#9597)

💡 Enhancements 💡

  • haproxyreceiver: Add new metrics to the haproxyreceiver (#16829)

  • jmxreceiver: Add the JMX metrics gatherer version 1.22.0-alpha to the supported jars hash list (#17831)

  • mongodbreceiver: Add mongodb health/status metrics (#17021)

  • mdatagen: Adds ability to enable/disable resource attributes in output and sets all existing resource attributes to enabled by default. (#16373) We may change NewMetricBuilder in the future from taking in ResourceMetrics to taking in a MetricsBuildingConfiguration, but for now changing the settings requires a call to WithResourceAttributeSettings.

  • internal/comparetest: add support of traces for comparetest (#17414)

  • awsxrayexporter: Add support to string resource attributes of type slice so that it is possible to set those resource attributes using the OTEL_RESOURCE_ATTRIBUTES environment variable. Strings are converted to string slices of size 1. (#17503)

  • internal/comparetest: Add support for all metric types (#17538)

  • coralogixexporter: improve coralogix exporter performance (#17268) improves coralogix exporter to send batched telemetry data to the backend

  • internal/comparetest: Do not ignore order of any slices by default, use an options for that. (#17551)

  • mysqlreceiver: add mysql.commands metric with supprot for delete, insert, select, update (#14138)

  • exporter/dynatrace: Provide more logs on the results of metrics submissions (#15248)

  • prometheusremotewriteexporter: Add support for converting OTLP Exponential Histograms to Prometheus Native Histograms (#16207)

  • pkg/pdatautil: Export comparetest and pdatautil modules under github.com/open-telemetry/opentelemetry-collector-contrib/pkg (#17873)

  • clickhouseexporter: export metrics to clickhouse (#16478)

  • mongodbatlasreceiver: Adds mongodbatlas.project.name and mongodbatlas.org.id as polled alerts resource attributes (#17513)

  • filelogreceiver: Add delete_after_read setting and associated filelog.allowFileDeletion feature gate. (#16314) If enabled, files will be consumed and then immediately deleted.

  • datadogprocessor: Now that the Datadog processor is part of the official contrib distribution, it has been moved to the beta stability level. (#17862)

  • kafkareceiver: Prevent offset commit failures and connection issues by ensuring that sessions are quickly completed after consumer group rebalances. (#17312)

  • lokiexporter: Added QueueSettings validation into Config Validate method (#7841)

  • telemetrygen: Moves tracegen functionality to the telemetrygen traces subcommand, as well as the existing Github actions (#9597)

  • pkg/ottl: Add new cache path to all contexts which can be used as temporary cache during complex transformations (#16994)

  • pkg/pdatatest: Metric support compare exemplar (#17580)

  • processor/probabilisticsampler: Implement the FNV hash library for the probabilistic sampler. (#16456)

  • redisreceiver: Add scraper shutdown with redis client close function to avoid redis client connection pool leaks (#17491)

  • resourcedetectionprocessor: add openshift support (#15694)

  • snowflakereceiver: added scraper and factory to snowflakereceiver (#14754)

  • internal/comparetest: traces support IgnoreResourceAttributeValue compare option (#17588)

  • processor/transform: Add substring function. (#17038)

  • processor/groupbyattr: Improve performance by using map hashes for resource grouping (#17527)

  • windowseventlogreceiver: Support sending the raw XML of the event (#17858)

🧰 Bug fixes 🧰

  • receiver/purefareceiver: Updating documentation to include required configuration fields. (#14886)

  • clickhousexporter: Clickhouse string type cast function of insert flow changed because of missing span values. (#17834)

  • prometheusremotewriteexporter: Export _created metric for Summary, Histogram and Monotonic Sum metric points if StartTimeUnixNano is set. (#17412, #12426) The export of tbe _created metric is configurable in the Prometheus remote write exporter. It is disabled by default.

  • clickhouseexporter: Fix "no such host" error when the DSN hostname contains the database name (#16476)

  • oracledbreceiver: the resource attribute oracledb.instance.name now captures the database name. (#17850)

  • signalfxexporter: Make sure the metadata updater is tied to the exporter itself, so it can tack on the exporter lifecycle. (#17976)

  • mdatagen: Fixing templateFS to work on windows systems (#17576) This fix will allow the command to work as a static binary without needing reference to the templates on disk.

  • pkg/ottl: Fix issue where IsMatch returned an error if the target val was nil (#17572)

    • Affected components
      • filterprocessor
      • routingprocessor
      • transformprocessor
  • batchperresourceattr: Optimize batch processor attribute and don't reset the caller's instance, instead make a copy of the original resource attributes (#17835)

  • receiver/prometheusreceiver: Use _created metrics, if present, to set StartTimeUnixNano for Sum, Histogram and Summary metrics. (#12428) If the _created metric was present in the Histogram, Summary or Counter metric family, only then its values is used to set StartTimeUnixNano on the relevant OTLP metric and dropped afterwards. Otherwise, it is converted to the monotonic OTLP Sum metric. This behaviour is disabled by default. Use the receiver.prometheusreceiver.UseCreatedMetric to enable it.

  • exporter/prometheusremotewriteexporter: Export exemplars for the Monotonic Sum metric. (#17573)

  • windowseventlogreceiver: Fix panic that can occur when event is larger than current buffer size. (#17879)

  • windowseventlogreceiver: Fixed a panic that could create an empty buffer due to incorrect use of unsafe pointers in syscall. (#17878) Fixed a potential panic due to a syscall indicating a that the event buffer should resize to 0. The next used of that resized buffer would result in an index out of bounds panic.

    Also, added a safety check for buffer resize cases that if the syscall indicates it needs the buffer size to be 0, an error will be returned.

v0.69.0

🛑 Breaking changes 🛑

  • apachereceiver: Remove feature gates that enable sending server name and port as resource attributes. (#14791)
  • elasticsearchreceiver: change feature gates for cluster health and index operations to beta (#14635)
  • resourcedetectionprocessor: Remove deprecated gke/gce detectors, use gcp instead. (#10348)
  • extension/asapauth: Change Config.PrivateKey to use the configopaque.String opaque type. (#17316)
  • processor/resourcedetectionprocessor: Change Config.Token to use configopaque.String opaque type. (#17314)
  • googlecloudexporter: Graduate exporter.googlecloud.OTLPDirect feature-gate to GA, and remove legacy exporter. (#17192)
  • exporter/datadog: Change Config.API.Key to use configopaque.String opaque type. (#17296)
  • transformprocessor: Remove deprecated config options. Use [trace|metric|log]_statements instead. (#16773)

🚩 Deprecations 🚩

  • mysqlreceiver: remove mysql.commands metric (#14138)
  • hostmetricsreceiver: Disable deprecated process memory metrics (#14327) The metrics process.memory.physical_usage and process.memory.virtual_usage are now disabled by default and will be removed in v0.72.0. As a replacement, the following metrics are now enabled by default: process.memory.usage, process.memory.virtual. For details, see the docs.

💡 Enhancements 💡

  • receiver/elasticsearch: Add node version as a resource attribute (#16847)
  • hostmetricsreceiver: Add a new optional metric process.disk.operations to the process scraper of the hostmetrics receiver. (#14084)
  • signalfxexporter: Use configopaque for access_token field (#17294)
  • datadogexporter: Update datadogexporter metrics export to use datadog-api-client-go instead of Zorkian by default (#16776) This is guarded by feature gate and can be disabled by adding CLI flag --feature-gates=-exporter.datadogexporter.metricexportnativeclient
  • internal/comparetest: add golden functions ReadLogs, WriteLogs, CompareLogs (#10896)
  • haproxyreceiver: Adds a new socket interface and CSV reader for haproxy stats (#16829)
  • resourcedetectionprocessor: Add support to detect Heroku resources (#16833)
  • logstransformprocessor: Lets the logs transform processor directly pass messags to next consumer, avoiding the timing issues it previously exhibited. (#16604, #15378, #9761)
  • mdatagen: Add ability to specify additional warnings in metadata.yaml (#17180)
  • signalfxexporter: Add all HTTP client settings to the SignalFx exporter configuration (#16807)
  • snowflakereceiver: added client to snowflakereceiver (#14754)
  • snowflakereceiver: added config to snowflakereceiver (#14754)
  • splunkhecexporter: Use configopaque for token field (#17295)
  • xrayexporter: Add Cloud Watch log group names from xray exporter config (#16939)
  • receiver/purefareceiver: Add a relabel config for important default label names on FlashArray endpoints (#14886)

🧰 Bug fixes 🧰

  • carbonreceiver: Create the carbon receiver server when the Start method is called, and only close it if created. (#17404)
  • pkg/stanza: Fix issue where glob could match directories (#16995)
  • kafkareceiver: fix support of Kafka consumer offset autocommit config (#17374)
  • pkg/stanza: Fix support of include/exclude patterns with "" separators on Windows. (#14754)
  • awsemfexporter: Ensure that the config.logger is not nil to avoid segfaults (#9978)
  • statsdreceiver: Fix the statsdreceiver initialization to only create a server when Start is called. (#17402)
  • receiver/splunkhec: Map HEC key fields to resource attributes correctly. (#13997)
  • otlpjsonfilereceiver: Disregard empty resource logs, metrics or traces when reading from files. (#12603)
  • receiver/purefareceiver: Set an explicit reload interval for all scrapers. (#16992)
  • servicegraphprocessor: fix servicegraphprocessor concurrent map read and write (#16850)
  • filelogreceiver: Truncate log entry if it is longer than max_log_size (#16487)
  • cmd/metadata: Ensure template files are downloaded as part of the go get and embeded into the application (#17442)

v0.68.0

🛑 Breaking changes 🛑

  • splunkhecreceiver: Delete the path key which is no longer in use and has been deprecated since September 2021. (#16999)
  • pkg/ottl: Enforce functions used as a value to start with an uppercase letter and the statement's invocation to start with a lowercase letter. (#16718)

🚩 Deprecations 🚩

🚀 New components 🚀

  • haproxyreceiver: A receiver scraping metrics from the HAProxy stats command. (#16829)
  • processor/datadogprocessor: The Datadog Processor is used to compute pre-sampling APM Stats. (#15689) Use it to get full visibility into APM Stats in conjunction with the Collector's tail sampling processors.

💡 Enhancements 💡

  • jmxreceiver: Add the JMX metrics gatherer version 1.21.0-alpha to the supported jars hash list (#17064)
  • hostmetricsreceiver: Add a new optional metric process.memory.utilization to the metrics scraped by the process scraper of the hostmetrics receiver. (#14084)
  • mysqlreceiver: add mysql.replica.time_behind_source and mysql.replica.sql_delay metrics (#14138)
  • elasticsearchreceiver: Add additional node metrics around request cache and process stats (#16095)
  • datadogexporter: Added support for consuming Datadog APM Stats as OTLP Metrics (usually generated by the datadogprocessor). (#16853)
  • googlecloudspannerreceiver: Support for p50, p95 and p99 percentile latencies for queries and transactions. (#16429)
  • exporter/loki: Added InstrumentationScope to log object (#16485)
  • exporter/loki: Allow nested attributes to be used in labels (#16475)
  • mongodbreceiver: Add mongodb metrics for operation latency and replication. (#16848)
  • oracledbreceiver: Set OracleDB receiver as alpha, from in development. (#16843)
  • snowflakereceiver: added metrics to snowflakereceiver (#14754) generated w/ mdatagen
  • pkg/ottl: Add substring Converter, returns a substring from the given start index to the specified length. (#17038)

🧰 Bug fixes 🧰

  • k8sobjects: Fix empty event.name attribute when using watch mode (#16542)
  • logzioexporter: Implemented GetLevel method for go-hclog logger (#17009)
  • oracledbreceiver: Remove duplicate method to create default config. (#16997)
  • postgresqlreceiver: Fix issue where WAL stats query was incorrectly coalescing intervals. (#16769)
  • splunkhecexporter: Fix data race when gzip compression is enabled (#17083) Removed gzip writer pool and create a new one when needed.
  • splunkhecexporter: Fix isssue where splunkhec exporter always returns over capacity error when compression is enabled and MaxContentLength is 0 (#17035)

v0.67.0

🛑 Breaking changes 🛑

  • apachereceiver: turn on by default feature gates for server name and port resource attributes (#14791)

  • cumulativetodeltaprocessor: Remove histogram feature gate. (#16720)

  • mysqlreceiver: rename mysql.commands metric to mysql.prepared_statements (#14138) According to the documentation, the Com_stmt_xxx is related to prepared statements ref: https://dev.mysql.com/doc/refman/8.0/en/server-status-variables.html

  • mysqlreceiver: rename mysql.commands metric to mysql.prepared_statements (#14138) Disable the receiver.mysqlreceiver.renameCommands feature gate to temporarily revert this change.

  • dockerstatsreceiver: Enable the receiver.dockerstats.useScraperV2 feature gate by default. (#16381, #9794) See the README for information on how to migrate. The featuregate can be disabled, but it will be removed in a future release.

  • coralogixexporter: remove old jaeger based tracing client (#7931)

  • splunkhecexporter: Remove all use of the name attribute from logs as it is deprecated. (#16611)

🚩 Deprecations 🚩

  • servicegraphprocessor: use prefix to distinguish dimensions from different span kind (#16002) The metrics label converts from dimensions specifying in the config will have a prefix to mark where are from. The client_ prefix relates to the dimensions coming from spans with SPAN_KIND_CLIENT, and the server_ prefix relates to the dimensions coming from spans with SPAN_KIND_SERVER. The old dimensions will be removed in the next release.

🚀 New components 🚀

  • receiver/promtailreceiver: Add a new receiver that scrapes logs using Promtail client (#14632)
  • receiver/purefareceiver: Add a new receiver that scrapes metrics using Purestorage FlashArray API (#14886)
  • logicmonitorexporter: New exporter for exporting traces and logs to Logicmonitor Platform (#13727)

💡 Enhancements 💡

  • splunkhecexporter: Add HEC health check before sending the data to Splunk (#16479)

  • jmxreceiver: Add the JMX metrics gatherer version 1.20.1-alpha to the supported jars hash list (#16437)

  • hostmetricsreceiver: Add a new optional metric process.cpu.utilization to the process scraper of the hostmetrics receiver. (#14084)

  • azureeventhubreceiver: adds alternate log formatter that maps Azure log fields into OpenTelemetry attributes (#16283)

  • mysqlreceiver: add mysql.connection.count metric (#14138)

  • elasticsearchreceiver: add scraping metrics on cluster level (#14635) The receiver now emits jvm and cache eviction metrics on cluster level scraped from new endpoint /_cluster/stats.

  • influxdbexporter: Add support for exporting to InfluxDB v1.X API (#16042)

  • vcenterreceiver: Added vcenter.vm.memory.ssdswapped and vcenter.vm.memory.swapped metrics. (#16727)

  • filelogreceiver: Promote component to Beta status (#15355)

  • probabilisticsamplerprocessor: Add support for probabilistic sampling of logs (#9117)

  • cmd/mdatagen: Add support for resource_attributes::enum field (#16464) resource_attributes::enum values in metadata.yaml are now properly supported in metrics builder developer interface.

  • cmd/mdatagen: Improve generated documentation (#16556, #16563)

  • cmd/mdatagen: Add a metadata.yaml option to specify a warning that will be shown in case if metric is enabled. (#16536)

  • kafkaexporter: Allows for custom marshalers to be added in future releases (#14514)

  • oracledbreceiver: Add oracledbreceiver implementation (config, scraper, db client) (#16043)

  • filterprocessor: Adapt ottl configuration to same BoolExpr, remove duplicate code (#16446)

  • pkg/ottl: Updates the IsMatch function to convert bools, ints, and floats to strings before matching. (#16503)

  • pkg/ottl: Add new merge function to OTTL, which allows merging maps. (#16461)

  • pkg/ottl: Add ability to negate conditions with the not keyword (#16553)

  • pkg/ottl: Add new ParseJSON function that can convert a json string into pcommon.Map. (#16444)

  • internal/filter: Change filter interface to be compatible with ottl (#16443)

  • receiver/awscontainerinsightreceiver: Polish up awscontainerinsightreceiver README (#16378)

  • pkg/translator/loki: Remove loki dependency, copy files from logproto (#16822) Files copied from github.com/grafana/loki/pkg/logproto to remove unnecessary dependencies. In logproto.pb.go I had to remove few types Query[Request|Response] and SampleQuery[Request|Response] and the gRPC service that uses them, because they depend on another loki package stats.

  • snmpreceiver: Set component status to alpha (#16454)

  • solacereceiver: Added baggage unmarshalling support (introduced in Solace PubSub+ Event Broker 10.2.1) (#16570)

  • solacereceiver: Added configurable retry interval for flow control scenarios (#16570)

  • cmd/otelcontribcol: Split cmd/otelcontribcol into a separate module, extract testbed in a separate module (#16715)

  • transformprocessor: Add the merge_maps and ParseJSON functions. (#16551)

  • pkg/stanza: Upgrade version of doublestar from v3 to v4 (#16528)

  • configschema: add yaml generation command (#15231)

🧰 Bug fixes 🧰

  • exporter/azuredataexplorerexporter: Makes timestamp precision to nanos, updated azure-kusto-go to 0.9.2 (#16546)
  • cumulativetodeltaprocessor: Updates histogram conversion logic to correctly remove Min and Max when a histogram is converted. (#16520)
  • datadogexporter: Doesn't append duplicate ddtags on each log submission leading to 414 API errors. (#16380)
  • exporter/dynatrace: Make sure the original metrics are not mutated (#16506)
  • elasticsearchreceiver: fix the set of operations for which the data is fetched on index-level (#14635)
  • filterexpr: Fixed filterexpr Matcher.MatchMetric to be thread-safe (#13573)
  • fileexporter: Fix nil pointer in fileexporter when reusing configuration for multiple telemetry signals or pipelines. (#16733)
  • vcenterreceiver: vcenter.vm.memory.ballooned is taken from vm.Summary.QuickStats.BalloonedMemory that is expressed MiBy, not By. (#16728)
  • servicegraphprocessor: Fixes the number of bucket counts. (#16000)
  • prometheusexporter: Make sure the exporter doesn't mutate metrics (#16499, #16572)
  • datadogexporter: Suppress logs exporter payload dump to avoid filelogreceiver escape loop (#16380)
  • headerssetter: Do not require the secure transport for the headers setter extension. (#16508)
  • exporterconfig: The exporter config options should be HTTPS endpoint URL only (#14323)
  • pkg/translator/loki: fix loki.resource.labels not working as expected (#15386)
  • cmd/mdatagen: Rename metadata.yaml attribute field from value to name_override (#16561)
  • exporter/awsemfexporter: Consider metric data type while grouping metrics (#16512)
  • exporter/awsemfexporter: Export fields of MetricDescriptor to enable decoding (#16566)
  • awskinesis: Fixed configuration issues not being correctly used. (#16259) -| - Fixed applying region to the kinesis exporter
  • pkg/ottl: Add support for lists to be used as Getter values (#16320)
  • prometheusreceiver: Fix prometheus receiver panic on shutdown (#16469)
  • exporter/instana: Make sure the original traces are not mutated (#16505)
  • routingprocessor: Fix bug in routing processor that prevented collector from starting if from_attribute is not provided with OTTL routing statements. (#16555)
  • tailsamplingprocessor: When dealing with traces that have already been evaluated, use the final decision instead of trying using the individual decisions by the policies. (#14760)
  • processor/transform: Fix issue where collector would panic under certain conditions if the transformprocessor was configured to transform span events. (#16622)
  • zipkinreceiver: Fix zipkinreceiver panic on shutdown (#16471)

v0.66.0

💡 Enhancements 💡

  • hostmetricsreceiver: Add a new optional metric process.signals_pending to the metrics scraped by the process scraper of the hostmetrics receiver. (#14084)
  • splunkhecreceiver: Add a healthcheck endpoint as part of the splunkhecreceiver. Just returns 200 for now if the receiver is running. (#15367)
  • filterprocessor: Add ability to filter spans, span events, metrics, datapoints, and logs via OTTL conditions (#16369)
  • googlecloudspannerreceiver: Configurably mask the PII in lock stats metrics. (#16343)
  • interna/coreinternal: Split internal/coreinternal/processor into a separate internal/filter module (#16410)

🧰 Bug fixes 🧰

  • Fixes missed dependency updates in v0.65.0

v0.65.0

🛑 Breaking changes 🛑

  • mongodbreceiver: Drop support for versions of MongoDB prior to 4.0 (#16182)
  • pkg/ottl: Rename ottldatapoints to ottldatapoint (#16245)
  • pkg/ottl: Rename ottllogs to ottllog (#16242)
  • pkg/ottl: Renames ottltraces to ottlspan (#16241)
  • redisreceiver: Support more metric label values for redis.cpu.time (#14943)

💡 Enhancements 💡

  • exporter/loki: Automatic mapping beetwen LogRecord.SeverityNumber to LogRecord.Attributes["level"] (#14313)

  • jmxreceiver: Add the JMX metrics gatherer version 1.20.0-alpha to the supported jars hash list (#16356)

  • mongodbreceiver: Add additional metrics for mongodb locks (#13661) Add additional metrics for locks.acquire_count, locks.acquire_wait_count, locks.deadlock_count, locks.time_acquiring_micros

  • elasticsearchreceiver: add jvm heap percentage usage metric (#14635)

  • elasticsearchreceiver: add missing data points for operation count and operation time (#14635)

  • elasticsearchreceiver: add segment memory metric on node level (#14635)

  • elasticsearchreceiver: Add cluster health metrics for two more shards types (#14635)

  • elasticsearchreceiver: add document count metrics on index level (#14635)

  • elasticsearchreceiver: add fielddata memory size metrics on index level (#14635)

  • elasticsearchreceiver: Add query cache metrics on index level (#14635)

  • exporter/awsxrayexporter: Favour semantic convention attributes for DynamoDB table name and messaging url when translating OTel data into X-Ray AWS data. (#16075)

  • azuremonitorexporter: Support span and exception events (#16260)

  • datadogexporter: Change log level for host metadata (#14186)

  • azureeventhubreceiver: Mark the Azure Event Hub receiver as alpha. (#12786)

  • pkg/ottl: Add ability to perform basic (+, -, *, and /) arithmetic operations on ints and floats. Paths and Functions that return ints/floats are allowed. (#15711) Affected components

    • routingprocessor
    • transformprocessor
  • pkg/ottl: Add support for setting Maps in Values. This enables Contexts to set map values for attributes. (#16352)

  • prometheusreceiver: Trim type's and unit's suffixes from metric name as per otel specs. (#8950) Can be enabled by the featuregate pkg.translator.prometheus.NormalizeName

  • pkg/ottl: Remove duplicate parse IDs code, avoid coreinternal dependency (#16393) The "[trace|span]_id_string" func returns "000..000" string for invalid ids.

  • exporter/signalfxexporter: Allow user to add a custom CA so the ingest and api clients can verify and communicate with custom TLS servers. (#16250) "ingest_tls" and "api_tls" can be used to set the absolute path to the CA file "ca_file". This is needed when the exporter is pointing to a TLS enabled signalfx receiver or/and TLS enabled http_forwarder and the CA is not in the system cert pool

  • pkg/stanza: Support to Customize bufio.SplitFunc (#14593)

  • processor/transform: Adds new configuration options that allow specifying the OTTL context to use when executing statements. See Transform Processor README for more details. (#15381) The existing configuration options will be deprecated in a future release.

  • transformprocessor: Added OTTL function ConvertCase into the Transform Processor (#16083)

🧰 Bug fixes 🧰

  • receiver/jaeger: Fix an error message in thrift HTTP message decoder (#16372)

  • spanmetricsprocessor: Register processor.spanmetrics.PermissiveLabelSanitization featuregate, which was only defined but not registered. (#16269)

  • splunkhecexporter: Apply max content length to compressed HEC content (#13995) The Splunk HEC exporter uses the unzipped content to check the size of the payload to send, instead of the compressed content. The max content length configuration should apply to the zipped content when compression is enabled.

  • receiver/hostmetrics: Remove "Deprecated" label from network metrics (#16227) Replacement of the metrics was rejected some time ago, but the labels were not updated.

  • mongodbatlasreceiver: Checks host and port before assigning attributes in poll mode (#16284)

  • datadogexporter: Fixes crash when logging error on logs exporter (#16077)

  • pkg/ottl: Fix list argument parsing when using internal arguments (#16298)

  • pkg/stanza, filelog, journald, windowseventlog: Fix issue where specifying a non-existent storage extension caused panic during shutdown. (#16212)

  • pkg/stanza: Fix severity range unmarshaling (#16339)

  • splunkhecexporter: Do not log a warning on mapping empty metrics. (#3549)

  • exporter/datadog: Fixes bug to append tags in attributes instead of replacing them, simplifies filelog receiver setup, and adds otel_source tag. (#15387)

  • processor/transform: Fix issue where the metric context was using datapoint functions. (#16251)

  • vcenterreceiver: collect VM may be panic nil pointer. (#16277)

v0.64.0

🛑 Breaking changes 🛑

  • pkg/stanza, filelog, journald, syslog, tcplog, udplog, windowseventlog, logstransform: Remove ability to configure converter. (#15696) The design of the converter is opaque and its behavior may change in the future. Because of this, the converter settings are deemed unstable. The actual behavior of the converter remains unchanged, but will always use the former default values.

  • exporter/googlemanagedprometheusexporter: Moved ClientConfig under MetricConfig, and added an option to change the default metric name prefix for advanced use cases. (#10543)

  • pkg/ottl: Update ExprFunc, Set, and Get to all return errors. (#15649)

  • pkg/ottl: Change Statement to use Expr[K] and BoolExpr[K] and for Statement.Execute to require context.Context. (#15709)

  • tanzuobservabilityexporter: Add a new metric exporter config(app_tags_excluded) to exclude application resource attrs(application, service.name, cluster, shard) from the metric tags. Rename the config resource_attributes to resource_attrs_included. Build in-house logic in the tanzuobservability exporter and remove the usage of resourcetotelemetry. (#14733)

🚩 Deprecations 🚩

  • hostmetricsreceiver: Introduce renamed process memory metrics (#14327) This starts the process of phasing out incorrect metric names:

    • process.memory.physical_usage
    • process.memory.virtual_usage

    and replacing them with the names adhering to the semantic conventions:

    • process.memory.usage
    • process.memory.virtual

    At this stage, the new metrics are added, but they are disabled by default. See the "Deprecations" section of the Host Metrics receiver's README for details.

💡 Enhancements 💡

  • awsemfexporter: Added a log_retention field to the config to specify log retention policy for a Cloudwatch Log Group (#15678)

  • translator/jaeger: Add refType as attribute to link when translating Jaeger span references to OTEL. (#14465) The attribute is used to set the proper refType when translating back from OTEL to Jager.

    In the case of a span with multiple parents, which Jaeger supports, all the refType are properly translated.

  • apachereceiver: add port resource attribute (#14791)

  • apachereceiver: Extract server name as resource attribute (#14791) The feature is enabled through a feature gate and will be enabled by default in v0.65.

  • mysqlreceiver: add more mysql metrics (#14138)

    • Add mysql.connection.errors metric (#14723)
    • Add mysql.mysqlx_connections metric (#14727)
    • Add mysql.joins metric (#14728)
    • Add mysql.table_open_cache metric (#14737)
    • Add mysql queries (all, client and slow) count metrics (#14738)
    • Add metrics based on events_statements_summary_by_digest table (#14770)
    • Add mysql.client.network.io metric (#14744)
  • elasticsearchreceiver: Add metrics related to GET operations (#14635)

  • elastisearchreceiver: Add new metrics related to segments, aggregated by all shards (#14635)

  • elasticsearchreceiver: add store size metric for index level (#14635)

  • elasticsearchreceiver: Add metrics related to merge operations with aggregated for all shards (#14635)

  • elasticsearchreceiver: add translog metrics on index level (#14635)

  • hostmetricsreceiver: Add new process metrics (#12482) Add process.context_switches and process.open_file_descriptors as process metrics. They are disabled by default.

  • metricstransformprocessor: Add support for scaling histogram metrics (#15690)

  • datadogexporter: Use minimum and maximum fields from delta OTLP Histograms and OTLP ExponentialHistograms when available. (#16048)

  • pkg/ottl: Add ConvertCase OTTL function with lower, upper, camel and snake case options. (#15379, #16070, #16083)

  • pkg/ottl: Add parent_span_id.string accessor. (#16041)

  • pkg/ottl: Add new Span Event context to allow for efficient transformation of Span Event telemetry. (#14907)

  • pkg/stanza, filelog, journald, syslog, tcplog, udplog, windowseventlog, logstransform: This component does not mutate data, but can be useful as a generic node in complex pipelines. (#15706)

  • pkg/stanza: improve performance (#16028)

  • signalfxexporter: Allow 2 additional metrics to be included when exporting to SignalFx, k8s.container.cpu_request and k8s.container.memory_request. (#16009)

  • hostmetricsreceiver: Added root_path config option, allowing the user to specify where the host filesystem is. (#5879, #16026)

  • snmpreceiver: adds integration tests for SNMP metric receiver (#13409)

  • snmpreceiver: adds scraper for SNMP metric receiver (#13409)

  • spanmetricsprocessor: Improve spanmetricsprocessor performance, reuse buffer to calculate key (#16033)

  • global: Update gopsutil to 3.22.10 to return Windows partitions, regardless of errors (#14315)

  • hostmetricsreceiver/filesystem: Add configuration option to track virtual partitions (#15680)

🧰 Bug fixes 🧰

  • clickhouseexporter: remove unnecessary function in trace table creation SQL (#15679)

  • elasticsearchexporter: Fixed nil panic error when setting custom headers in elasticsearch exporter (#16017)

  • elasticsearchreceiver: emit missing data points related to segments, aggregated by primary shards (#14635)

  • zipkinreceiver: Fix invalid timestamps when using Zipkin V1 receiver (#15720)

  • kubeletstatsreceiver: return an error if metadata containerID is empty and log a warning message (#16061) The kubelet apiserver /pod metadata endpoint might not have the containerID set for newly created containers. Mark these datapoints as failed and don't process them. The issue should be resolved on the nexy poll.

  • jaegertranslator: For HTTP status codes in the 4xx range span status MUST be left unset in case of SpanKind.SERVER and MUST be set to Error in case of SpanKind.CLIENT. (#8273)

  • mezmoexporter: Fix usage of HTTP client to honor settings (#15246) This change fixes mezmoexporter's usage of the user supplied HTTP client settings. Previously, the settings were ignored for every request.

  • vcenterreceiver: Print the correct error message if VM fetch fails. (#15682)

  • vcenterreceiver: Fix x509 with TLS.InsecureSkipVerify setting (#15701)

v0.63.0

🛑 Breaking changes 🛑

  • processor/cumulativetodelta: Sets the processor.cumulativetodeltaprocessor.EnableHistogramSupport feature gate to enabled by default. Histograms will be converted by default if they match include rules. (#15288)

  • pkg/ottl: Renames accessor for instrumentation scope from instrumentation_library to instrumentation_scope to match documentation (#14933)

  • pkg/ottl: Add lists to the OTTL grammar and change the function signature of Concat. (#13391) The following functions have changed: keep_keys now has a function signature of keep_keys(target, keys[]). Concat now has a function signature of Concat(keys[], delimiter).

  • pkg/ottl: Updates ParseStatements to return a []*Statement instead of []Statement. (#14911)

  • postgresqlreceiver: Change postgresql.bgwriter.duration data type from int to double (#14725, #14972)

  • extension/headerssetter: Remove deprecated extension/headerssetter module. (#13774) The headerssetter extension was superseded by headerssetterextension.

  • elasticsearchreceiver: removing direction feature gate (#14955)

  • hostmetricsreceiver: remove direction feature gate (#14959)

  • kubeletstatsreceiver: remove direction feature gate (#14961)

  • memcachedreceiver: removing direction feature gate (#14964)

  • vcenterreceiver: removing direction feature gate (#14963)

  • zookeeperreceiver: removing direction feature gate (#14962)

  • exporter/routingprocessor: Rename OTTL expression configuration parameter of the routing table to statement to align with the OTTL naming. (#14950)

  • dockerstatsreceiver: container.cpu.usage.system is no longer a default metric. Added more description for the metric. (#9794, #14558) Change is not breaking unless you are have enabled the featuregate receiver.dockerstats.useScraperV2 and are using the specified metric.

  • processor/transform: Convert the keep_keys and Concat functions to use list parameters and change the function signature of Concat. (#13391) The updated functions now have the following signatures: keep_keys now has a function signature of keep_keys(target, keys[]). Concat now has a function signature of Concat(keys[], delimiter).

🚩 Deprecations 🚩

  • exporter/influxdb: change status to beta (#14098)
  • receiver/influxdb: change status to beta (#14099)

🚀 New components 🚀

  • azureblobreciver: Add a new component azureblobreciver (#8834) Add a new component azureblobreceiver that reads logs and traces from Azure Blob Storage
  • k8sobjectsreceiver: Add a new k8sobjects receiver to collect(pull/watch) Kubernetes Objects (#14185)
  • httpcheckreceiver: New HTTP Check receiver allows users to run synthethic checks from the collector (#10607)

💡 Enhancements 💡

  • oracledbreceiver: Add metrics captured by this receiver (#13939)
  • hostmetricsreceiver: Add a new metric process.paging.faults to the process scraper of the hostmetrics receiver. (#14084)
  • receiver/prometheusreceiver: Append exemplars to the metrics received by prometheus receiver (#8353) Acknowledge exemplars coming from prometheus receiver and append it to otel format
  • azureblobreceiver: Implementation of the component (second PR) (#8834)
  • azureeventhubreceiver: Adds implementation of Azure event hub receiver for raw data (#12786)
  • bearertokenauthextension: Allow bearertokenauthextension to support custom auth schemes apart from "Bearer" (#14771)
  • clickhouseexporter: Add support export OTLP traces to ClickHouse (#8028)
  • mysqlreceiver: add mysql.opened_resources metric (#14138)
  • receiver/mysql: add metrics based on events_statements_summary_by_digest table (#14138)
  • mysqlreceiver: add mysql.mysqlx_worker_threads (#14138)
  • receiver/statsdreceiver: Add OTLP exponential histogram aggregator support for high-resolution histogram and timing metrics (#5742)
  • pkg/translator/loki: Add support for formatting Loki log lines in logfmt format, toggled by providing loki.format hint. It can have value logfmt or json. JSON is default if no format hint is present. (#15351)
  • exporter/lokiexporter: Add multi-tenancy support for Loki exporter via loki.tenant hint. (#14706)
  • pkg/translator/loki: Add support for grouping Loki requests by attribute that is resolved from the loki.tenant hint. (#14706)
  • cmd/mdatagen: Add ability to see if enabled option is overridden in user settings. (#15344)
  • oracledbreceiver: Adds DML locks and transaction metrics to capture usage and limits (#13939)
  • pkg/ottl: Add new Instrumentation Scope context to allow for efficient transformation of Instrumentation Scope telemetry. (#14892)
  • pkg/ottl: Add new Metric context to allow for efficient transformation of metric telemetry. (#14895)
  • snmpreceiver: adds SNMP config helper for SNMP Receiver metric scraper (#13409)
  • snmpreceiver: adds otel metric helper struct for SNMP metric receiver scraper (#13409)
  • snmpreceiver: changes the client of the SNMP metric receiver to only return data in its functions rather than try to process that data (#13409)
  • snmpreceiver: changes the config of the SNMP Metric Receiver to have "double" as an option in place of "float" (#13409)
  • solacereceiver: Updates Solace Receiver with a variety of improvements and fixes for compatibility with Solace PubSub+ Event Broker 10.2.0 (#15244)
  • syslogreceiver: Added RFC 6587 Octet Counting and Non-Transparent-Framing support. (#8390)
  • elasticsearchexporter: upgrade version of elasticsearch client to 8.4 (#15385)
  • dockerstatsreceiver: Log warning when using ScraperV1, and add documentation for migrating from V1 to V2. (#9794, #14968)
  • windowsperfcountersreceiver: Retry counter retrieval once, when error indicates possible rollover (#14343)

🧰 Bug fixes 🧰

  • servicegraph: Add servicegraph processor to component list (#14899) Bumps servicegraph stability to alpha
  • azuremonitorexporter: Application Insights Severity Level mapping was incorrectly based on SeverityText which was unique for every language/SDK. (#15275) Application Insights Severity Level mapping was incorrectly based on SeverityText which was unique for every language/SDK. The mapping approach has been changed to analyze SeverityNumber, which is supposed to be common across languages/SDKs.
  • awscloudwatchreceiver: Fix config validation for some named configurations. (#14952)
  • exporter/awsxrayexporter: Fix an issue where the awsxrayexporter would not parse .Net stacktrace correctly. (#14780)
  • postgresqlreceiver: Fix issue where WAL lag stats could cause panic (#14972)
  • prometheusremotewriteexporter: Fix value of +Inf histogram bucket to be equal to total count (#4975)
  • prometheusreceiver: Fix metrics being grouped into the same metrics family incorrectly (#13117)
  • spanmetricsprocessor: Sets TraceID and SpanID fields in Exemplar type (as per the spec) and removes the use of FilteredAttributes to pass these values around. (#13401)
  • splunkhecexporter: Skip SummaryDataPoint.Sum and HistogramDataPoint.Sum NaN values (#14877)
  • pkg/winperfcounters: Fix testing with -race flag for winperfcounters package and winperfcounter based receivers (#10145, #10146, #10149, #10150)

v0.62.0

🛑 Breaking changes 🛑

  • pkg/ottl: Enhance replace_all_patterns functions to take a new parameter that specifies whether the function applies to keys or values. (#12631)
  • pkg/ottl: Unexports several types intended only for the package's grammar. (#14599)
  • pkg/ottl: Changed Statement to be an interface with an Execute function. (#14869)
  • pkg/ottl: Rename the Queries signal configuration field to Statements and remove the ottlconfig package. (#14680)
  • confmap/provider/s3provider: Rename s3mapprovider to a s3provider making it consistent with other providers. (#14616)
  • processor/transform: Rename the queries config key to statements. (#14680)

🚀 New components 🚀

  • oracledbreceiver: Add a new Oracle DB receiver component collecting metrics by periodically querying the database. (#13939)
  • azuredataexplorer: Adding a new exporter to OpenTelemetry that supports Metrics, Logs and Traces into Azure Data Explorer, a timeseries & analytics offering from Azure (#11830)
  • awscloudwatchreceiver: Adds the awscloudwatchreceiver in an alpha state (#14449)
  • snmpreceiver: adds the snmpreceiver metric receiver (#13409)

💡 Enhancements 💡

  • probabilisticsamplerprocessor: add more mterics to probabilistic sampler for observ. (#13924)
  • mongodbatlasreceiver: Safeguard against large amounts of alert emissions. (#14610)
  • bearertokenauthextension: support reading tokens from file (#14325)
  • cumulativetodeltaprocessor: Reduce memory consumption in cumulativetodeltaprocessor by removing unnecessary storage of metric identities. (#13751)
  • carbonexporter: Change carbonexporter to use pdata, remove dependency on opencensus (#14589)
  • coralogixexporter: Adds support for mapping application name and subsystem using Resource attributes (#14398)
  • mysqlreceiver: add mysql.tmp_resources metric (#14138)
  • mysqlreceiver: add mysql.locked_connects metric (#14138)
  • elasticsearchreceiver: Add scraping index stats and generate search metrics (#14635)
  • pkg/telemetryquerylanguage: Add the Int factory function to the transform processor (#11810)
  • exporters: Use BuildInfo.Command for identifying the collector in some AWS exporter user agents. (#14719) Some exporters were using a build-time constant definition to change the identity of the collector binary in user agent strings. These will now use the collector service's BuildInfo.Command value.
  • jaegerexporter: Adds support for ValueTypeBytes to Jaeger's trace to jaegerproto translator. (#14574)
  • mongodbatlasreceiver: Adds capability to retrieve alerts from the API rather than listening (#14121)
  • pkg/ottl: Use generics to avoid context cast in getters and funcs. (#14482)
  • pkg/ottl: Simplify parser creation logic. (#14601)
  • pkg/ottl: Add new Resource context to allow for efficient transformation of resource telemetry. (#14887)
  • exporter/signalfxexporter/translation: Drop datapoints that have more than 36 dimensions and log a message when agent is set to debug (#14625) Additionally, the metric and dimension validation failures are now logged in Debug instead of Warn
  • sigv4authextension: Have "sts_region" default to "region" if not provided (#14573)
  • snmpreceiver: adds the client for the snmpreceiver (#13409)
  • snmpreceiver: adds the full configuration that the SNMP Receiver will use (#13409)
  • splunkhecreceiver: Updates Splunk receiver http status codes in order to be compliant with SplunkCloud (#14469)
  • pkg/stanza: readerFactory and Reader use helper.Encoding directly, no longer depends on helper.Splitter (#14593)
  • pkg/stanza: readerFactory and Reader use bufio.SplitFunc directly, no longer depends on helper.Splitter (#14766)
  • pkg/stanza: add splitter factory which return a split func (#14766)
  • exporter/awsxrayexporter: Change the value of xraysegment.url from dbConnectionString to the span name. This makes the XRay segment timeline more informationally useful. (#14342) This change contravenes the AWS documentation for what values should go into this segment field.
  • pkg/translator/zipkin: Change zipkin V1 conversion to use pdata. (#14592)
  • filterexpr: Prevent the matcher from panicking (#13573)

🧰 Bug fixes 🧰

  • clickhouseexporter: Fix serviceName variable scope (#8028)
  • exporter/datadogexporter: Fix an issue where the Datadog system metrics system.memory.{usage,total} would be incorrect in Kubernetes. (#14618)
  • mysqlreceiver: Fix sql queries for scraping table and index metrics. (#14138)
  • fileexporter: set rotation disabled by default (#14690)
  • fluentforwardreceiver: added case to handle uint64 timestamp (#11435)
  • sqlqueryreceiver: fix oracle db integration test (#12332)
  • prometheusreceiver: changes to use the new scrape_configs endpoint in the target allocator to dynamically pull scrape configuration. (#14597)
  • saphanareceiver: Fix incorrect use of units for saphana licenses metrics (#10565)
  • hostmetricsreceiver: Allow to continue collecting partition information even if an error is returned (#14315) Log the error and continue if partition information, however incomplete, was provided.
  • kubeletstatsreceiver: Fix use network io as network errors bug (#14318)

v0.61.0

🛑 Breaking changes 🛑

  • dockerstatsreceiver: For V2 scraper implementation, change the defaults from emitting everything to a sensible set of defaults. (#9794, #14093) This is only breaking if you have explicitly enabled the featuregate receiver.dockerstats.useScraperV2.
  • dockerstatsreceiver: Change 'stats' config key to 'metrics'. (#9794, #14184) Note: this is only breaking for those who have explicitly enabled the featuregate receiver.dockerstatsd.useScraperV2.
  • iisreceiver: Emit metrics per-site and per-app-pool with new resource attributes. (#14448)
  • pkg/telemetryquerylanguage: Unexport BoolExpressionEvaluator, Literal, NewGetter, and NewFunctionCall. (#13737)
  • mongodbatlasreceiver: Retain actual raw log line as Body. The raw attribute is now removed. Use Body instead for the raw log line. (#14178)
  • mysqlreceiver: The metrics are now being emitted with a resource attribute marking the endpoint of the database. (#14138)
  • pkg/ottl: Rename ParseQueries to ParseStatements and rename Query to Statement. (#14444)
  • jaegerreceiver: Remove remote sampling endpoint from the Jaeger receiver (#6633)
  • oteltransformationlanguage: Renames ottldatapoints to ottldatapoints to better represent how the context is intended to be used. (#14384)
  • pkg/ottl: Renames Telemetry Query Language to OpenTelemetry Transformation Language to avoid confusion with an analysis language. (#14150)
  • pkg/ottl: Flattens ottlcommon and ottlotel into ottlfuncs. (#14386)
  • pkg/ottl: Replaced Logger with TelemetrySettings (#14389)

🚩 Deprecations 🚩

  • coralogixexporter: deprecating jaeger based tracing configuration in favour of OpenTelemetry protocol based one. (#7931) Please remove the endpoint field and use the new traces.endpoint field with your OpenTelemetry endpoint.
  • elasticsearchreceiver, hostmetricsreceiver, kubelestatsreceiver, memcachedreceiver, vcenterreceiver, zookeeperreceiver: Log message to announce direction attribute feature gate deprecation (#14129) The change to remove the direction attribute has been reverted in the specification. As a result, the following feature gates will be removed in v0.62.0:
    • receiver.elasticsearchreceiver.emitMetricsWithDirectionAttribute
    • receiver.elasticsearchreceiver.emitMetricsWithoutDirectionAttribute
    • receiver.hostmetricsreceiver.emitMetricsWithDirectionAttribute
    • receiver.hostmetricsreceiver.emitMetricsWithoutDirectionAttribute
    • receiver.kubelestatsreceiver.emitMetricsWithDirectionAttribute
    • receiver.kubelestatsreceiver.emitMetricsWithoutDirectionAttribute
    • receiver.memcachedreceiver.emitMetricsWithDirectionAttribute
    • receiver.memcachedreceiver.emitMetricsWithoutDirectionAttribute
    • receiver.vcenterreceiver.emitMetricsWithDirectionAttribute
    • receiver.vcenterreceiver.emitMetricsWithoutDirectionAttribute
    • receiver.zookeeperreceiver.emitMetricsWithDirectionAttribute
    • receiver.zookeeperreceiver.emitMetricsWithoutDirectionAttribute
  • extensions/headerssetter: Deprecate the extensions/headerssetter module, use extensions/headerssetterextenions instead. (#13774)

🚀 New components 🚀

  • s3mapprovider: A new implementation of ConfigMapProvider for Amazon S3 (s3mapprovider) allows OTEL Collector the ability to load configuration for itself by fetching and reading config files stored in Amazon S3. (#12939)

💡 Enhancements 💡

  • loki: Split the conversion OTLP -> Loki into its own package (#13649)
  • kafkareceiver: Add direct unmarshaler, inserting Kafka payload bytes as the body of a log record (#13252)
  • apachereceiver: The receiver now supports 6 more metrics, more information in the linked issue. (#14095)
  • datadogexporter: Add logs support (#2651)
  • datadogexporter: The "hostmetrics" receiver metrics are now correctly mapped to Datadog system metrics. (#14005)
  • fileexporter: support for compressing the telemetry data before exporting. (#13626)
  • fileexporter: support for encoding telemetry data using proto marshaler (#13626)
  • googlecloudspannerreceiver: Fixed errors when transaction-stats columns are NULL (#14189)
  • cumulativetodeltaprocessor: Reduce memory consumption of histograms in cumulativetodeltaprocessor by allocating only a single identity per datapoint. (#13751)
  • chronyreceiver: Improved chronyreceiver's context and timeout handling (#14131) Updated chronyreceiver to use net.Dialer.DialContext and respect timeouts more closely
  • filterspan: Add span kind filtering. (#13612)
  • mysqlreceiver: The receiver now scraper 16 new metrics related to io_waits. (#14138)
  • filelog, journald, syslog, tcplog, udplog, windowseventlog: Allow 'parse_to' fields to accept 'attributes' and 'resource' (#14089)
  • sentryexporter: Make sentry status more detailed - use HTTP and Grpc codes from tags (#13407)
  • routingprocessor: Add support for using OpenTelemetry Transformation Language (OTTL) expressions as routing conditions. (#13158)
  • transformprocessor: Add Split function, which separates a string by the delimiter and returns an array of substrings. (#11790)
  • pkg/winperfcounters: Add counter path to error if scraping fails (#14443)

🧰 Bug fixes 🧰

  • awsemfexporter: Fix regression that causes null dimensions to be appended during dimension roll up. (#14532)
  • k8sprocessor: check every association for eventual update (#13119)
  • sentryexporter: Omit empty parent span id (#13415)
  • pkg/ottl: Replace invalid comparison print statement with a debug log entry (#14467)
  • servicegraphprocessor: Fixed metric names to match the specification. (#14187)
  • hostmetricsreceiver: On Windows systems, do not fail to start if a performance counter is missing or inaccessible. (#14032)
  • loki: Fix converting log resources to loki labels for more than one log record. (#14288)
  • mongodbatlasreceiver: Fix timestamp parsing for mongodb 4.2 audit logs (#14168)
  • mongodbatlasreceiver: Add missing fields for audit logs (#14177)
  • mongodbatlasreceiver: Fix potential infinite loop when scraping audit logs (#14169)
  • otlpjsonfilereceiver: logs receive operations should use StartLogsOp/EndLogsOp (#14535)
  • pkg/translator/prometheus: do not normalize metric name with colon (#14135)

v0.60.0

🛑 Breaking changes 🛑

  • pkg/stanza: Change name of ParserConfig.Config to more specific ParserConfig.SeverityConfig (#14126)

  • pkg/stanza/adapter: Remove OperatorConfigs type, rename LogReceiverType.DecodeInputConfig to LogReceiverType.InputConfig. (#14078)

  • postgresqlreceiver: The receiver will now emit resource attributes via default. (#13811) old behavior can be established by setting the featuregates receiver.postgresql.emitMetricsWithResourceAttributes to false and receiver.postgresql.emitMetricsWithoutResourceAttributes to true

  • k8sattributesprocessor: Change the way how key_regex setting is handled. After this change, provided expressions are applied to the full length of attribute values. (#9716)

  • pkg/telemetryquerylanguage: Add ability to specify attribute keys in the limit function that aren't allowed to be dropped (#9734) This breaking change affects the transform processor since we don't have a way to default values in a function call.

🚩 Deprecations 🚩

  • exporter/influxdb: Change status to unmaintained (#14098)
  • receiver/influxdb: Change status to unmaintained (#14099)

🚀 New components 🚀

  • instanaexporter: Enable Instana exporter (#13395)
  • servicegraph: Add traces processor that builds a map representing the interrelationships between various services in a system (#9232)

💡 Enhancements 💡

  • elasticsearchreceiver: Add additional node metric for cache count (#14027)

  • pkg/telemetryquerylanguage: Add Concat, which allows concatenating an arbitrary number of strings with a delimiter (#12476)

  • processor/filter: Added ability to filter by metric type using expression MetricType keyword. (#14107)

  • elasticsearchreceiver: Add additional two cluster-level metrics (#13748) Add additional cluster metrics for elasticsearch.cluster.in_flight_fetch & elasticsearch.cluster.pending_tasks.

  • dockerstatsreceiver: Simplify BlockIO metrics by taking operation out of the metric name and putting it in an attribute. (#9794, #13445)

  • elasticsearchreceiver: Added node.fs.disk.{free,total} to elasticsearch receiver (#13571)

  • elasticsearchexporter: Support sending OpenTelemetry tracing data to Elasticsearch index or data stream. (#12069)

  • elasticsearchreceiver: Adds new method Version in the client request to get the elasticsearch version number (#14012)

  • fileexporter: Support for rotation of telemetry files (#13626)

  • processor/filer: Add support for ExponentialHistogram and Summary metrics (#14116)

  • receiver/k8scluster: Moving initialization of k8s client from receiver init to receiver start phase. (#12582)

  • lokiexporter: Overhaul of the Loki Exporter, in preparation for native OTLP support at Loki (#12873)

  • awskinesisexporter: Upgrading client to use v2 of the AWS SDK (#13898)

  • prometheusreceiver: Remove storing pointers to pdata points, allow removing unnecessary pdata points copy. (#13922)

  • sigv4authextension: Add more context to credential errors generated by the sigv4auth extension. (#14031)

  • tailsampling: Add support for all sampling policies in and & composite policy (#11505)

  • pkg/telemetryquerylanguage: Add a Logger interface and allow it to be specified as an argument type in TQL functions. (#9730)

  • telemetryquerylanguage: Adds inequality operators <, <=, >=, > to TQL. (#12491)

  • telemetryquerylanguage: Add the Int factory function. (#11810)

  • telemetryquerylanguage: Add split factory function to separate a string by the delimiter, and returns an array of substrings. (#11790)

  • processor/transform: Add Concat, which allows concatenating an arbitrary number of strings with a delimiter (#12476)

🧰 Bug fixes 🧰

  • hostmetricsreceiver: Set process metrics start time to process create time (#11447)
  • awsemfexporter: Properly handle empty dimension set in metric_declarations (#13766)
  • clickhouseexporter: cast FlagsStruct into uint32 in ExecContext to fix export failure (#13843)
  • k8sprocessor: fix the passthrough mode (#13765) Treating k8s.pod.ip resource attribute in special way, as it is added by passthrough mode
  • elasticsearchreceiver: Fix issue where elasticsearch.os.* metrics were not being collected (#13983)
  • elasticsearchreceiver: Fix issue where elasticsearch.node.script.* metrics were not being collected (#13983)
  • elasticsearchreceiver: Fix issue where elasticsearch.node.translog.* metrics were not being collected (#13983)
  • elasticsearchreceiver: Fix issue where elasticsearch.cluster_state.* metrics were not being collected (#13930)
  • elasticsearchreceiver: Fix issue where elasticsearch.node.shards.data_set.size emits 0 value for unsupported version (#14012)
  • elasticsearchreceiver: Fix elasticsearch.node.disk.io.read/write metrics from By to KiBy (#13815)
  • elasticsearchreceiver: Fix issue where elasticsearch.indexing_pressure.memory.limit emits 0 value for unsupported version (#14012)
  • elasticsearchreceiver: Fix issue where elasticsearch.cluster.state_update.time emits attributes pairs that don't exist (#13984)
  • awsxrayexporter: Fixes a bug in the logic for parsing CloudWatch Log Group ARNs (#13702)
  • loadbalancingexporter: Fixed the case in loadbalancingexporter where a DNS resolver is defined without an explicit Port. (#10321)
  • k8sattributesprocessor: k8sattributesprocessor now correctly adds attributes to new pods that start after the collector (#13619)
  • tailsamplingprocessor: Fixes SpanCount sampler not using the correct span count for decision. (#13865)
  • filelogreceiver: Fix issue for missing key_value_parser operator (#13631)
  • mongodbatlasreceiver: fix log parsing for clusters using major version 4.2 (#14008)
  • chronyreceiver: When trying to read from socket, the socket type was incorrect (#13862)
  • postgresqlreceiver: Uses the postgres databasename when retrieving database inventory information (#13641)
  • prometheusreceiver/prometheusremotewriteexporter: Leave the sum unset in histograms without sums, and don't produce _sum metric points for histograms without sums (#7546)
  • processor/redaction: Update redaction attributes in case if data sent through the processor more than once, not not ignore them. (#13854)
  • chloggen: changelog generation tool moved to https://github.com/open-telemetry/opentelemetry-go-build-tools (#14022)
  • exporter/AlibabaCloudLogServiceExporter: Fix issue that promethus occuring error when the resource metric labels contains dot (#3429)
  • exporter/tanzuobservabilityexporter: This change causes tanzuobservabilityexporter to depend on 0.10.4 of the wavefront-sdk-go library. (#13417)
  • transformprocessor: Fixes panic of transformprocessor handling Gauge types (#13905)
  • vcenterreceiver: Fix incorrect KBy and MBy units, updating them to KiBy and MiBy (#13935)

v0.59.0

🛑 Breaking changes 🛑

  • elasticsearchreceiver: Remove direction for metrics. The feature gate: receiver.elasticsearchreceiver.emitMetricsWithoutDirectionAttribute can be set to apply the following (#13258) (#12189)

    • elasticsearch metrics:
      • elasticsearch.node.cluster.io will become:
        • elasticsearch.node.cluster.io.received
        • elasticsearch.node.cluster.io.sent
  • kubeletstatsreceiver: Remove direction for metrics. The feature gate: receiver.kubeletstatsreceiver.emitMetricsWithoutDirectionAttribute can be set to apply the following (#12588) (#12164)

    • kubeletstats metrics:
      • k8s.node.network.io will become:
        • k8s.node.network.io.transmit
        • k8s.node.network.io.receive
      • k8s.node.network.errors will become:
        • k8s.node.network.errors.transmit
        • k8s.node.network.errors.receive
  • processor/metricstransform: Remove processor.metricstransformprocessor.UseOTLPDataModel feature flag. OpenCensus-based implementation is not available anymore. (#13405)

  • exporter/mezmoexporter: This change removes the hardcoded "otel" hostname that was embedded in outgoing logs data. (#13410) It is replaced by:

    1. Sending to a new collector endpoint that does not require the hostname parameter.

    2. Recognizing the "host.name" resource attribute and using that value to fill in log metadata recognized upstream.

    This is a breaking change, and as such will generate a startup error if the exporter is configured to send to an endpoint that does not support this feature.

  • filelog, journald, otlpjsonfile, syslog, tcplog, udplog, windowseventlog receivers: Remove helper.Duration struct. Configured time values no longer have a default unit of s (#13439)

  • pkg/stanza: Remove HostIdentifier, HostIdentifierConfig and associated functions (#13396)

  • filelog, journald, syslog, tcplog, udplog, and windowseventlog receivers: Fix a bug where original severity text was not preserved. (#13263)

  • pkg/stanza: Update function and struct names in keyvalue parser (#13418)

  • cmd/mdatagen: Remove old metadata generator (#13374)

🚩 Deprecations 🚩

  • jaegerreceiver: Add remote sampling deprecation warning (#6633)

🚀 New components 🚀

  • pulsarreceiver: Add Apache Pulsar receiver (#9796)
  • instanaexporter: Add Instana exporter implementation (#13395)
  • instanaexporter: Add initial structure of the Instana exporter (#13395)

💡 Enhancements 💡

  • loadbalancingexporter: Added interval and timeout to the dns configuration in the loadbalancer exporter (#10199)

  • pkg/telemetryquerylanguage: Add Join, which allows joining an arbitrary number of strings with a delimiter (#12476)

  • elasticsearchreceiver: Add additional metrics (#13115) Add additional metrics for indexing_pressure, published_states, state_queue, ingest, script.

  • hostmetricsreceiver: Add threads count metric (#12482)

  • aerospikereceiver: Add query_count and query_tracked metrics (#13255)

  • docsgen: use contrib components, add makefile target (#12639)

  • dockerstatsreceiver: Change relevant memory metrics from gauges to sums, so they are aligned with spec recommendations and can be aggregated. (#9794)

  • pkg/stanza/csv_parser: Add ignore_quotes option that ignores all quoting in fields if true. (#13656)

  • pkg/telemetryquerylanguage: Add TQL mappings for InstrumentationScope.attributes (#13639)

  • k8sattributesprocessor: Add support for discovering Kubernetes CronJob name (#141)

  • coreinternal: Move test utilities out of testbed into coreinternal, allow use of these lightweight helpers from other modules. (#5742)

  • kafkametricsreceiver: Migrate receiver to the new metrics builder (#7142) This allows users to disable particular metrics in through user settings.

  • mongodbatlasreceiver: Add logs retrieval capability (#12347)

  • mongodbreceiver: Enhance partial error handling with descriptive metric/attribute messages. (#13367)

  • filelog, journald, syslog, tcplog, udplog, windowseventlog receivers: Add ability to set log body when when parsing. (#10274)

  • filelog, journald, syslog, tcplog, udplog, windowseventlog receivers: Enhance error message when csv_parser finds unexpected number of fields (#13427)

  • filelog, journald, syslog, tcplog, udplog, windowseventlog receivers: Enable debugging operators stdout and file_output (#13394)

  • postgresqlreceiver: Adds background writer metrics (#13327) Adds the following metrics:

    • postgresql.bgwriter.buffers.allocated
    • postgresql.bgwriter.buffers.writes
    • postgresql.bgwriter.checkpoint.count
    • postgresql.bgwriter.duration
    • postgresql.bgwriter.maxwritten.count
  • postgresqlreceiver: Adds more metrics regarding database tables. (#13228) metrics added: postgresql.database.count postgresql.table.count postgresql.table.size postgresql.table.vacuum.count

  • postgresqlreceiver: Adds WAL and connections metrics (#13399) metrics added

    • postgresql.replication.data_delay
    • postgresql.wal.age
    • postgresql.wal.lag
    • postgresql.connection.max
  • prometheusreceiver: allow to query scrape jobs from OpenTelemetryOperators TargetAllocator (#7944)

  • prometheusremotewrite: Support customization of target_info metric including the ability to disable it (#12300)

  • prometheusexporter: Adds a feature to prometheusexporter that enables it to export exemplars along with histogram metrics. (#5192)

  • prometheusexporter: Use HTTPServerSettings in the exporter to leverage inbuilt TLS. (#10851)

  • receivercreator: adds the unique EndpointID to generated receiver componentID to prevent collisions (#12670)

  • spanmetricsprocessor: The unit of the latency metric is now explicitly defined. (#13423)

  • extension/storage/storagetest: Add in-memory and file-backed test extensions and clients (#13086)

  • telemetryquerylanguage: Avoid copying attributes when filtering on keys in the keep_keys TQL function (#4756)

  • prometheusreceiver: Remove temporary maps to dedup and remove unuseful labels (#13705)

🧰 Bug fixes 🧰

  • processor/metricstransform: Aggregate cumulative data points with different start time. (#12611)
  • expvarreceiver: Fixes an bug where the mSpanSys value was recorded into the mCacheSys metric. (#13171)
  • extension/filestorage: Allow putting the compaction temp folder on a different filesystem. (#13449)
  • prometheusremotewriteexporter: Handle the case with 0 metrics gracefully. (#10364)
  • prometheusreceiver: Fix num data point for metrics recorded in prometheusreceiver (#13705)
  • loadbalancingexporter: Fixed a crash if endpointFor is called before any endpoints have been discovered (#10110)
  • prometheusreceiver: Fix timestamp for histograms and summaries with no Sum (#13705)
  • exporter/sumologic: Mark the exporter as mutating. (#13647)
  • jaegerremotesampling: Mark as alpha (#13005)
  • mongodbreceiver: Adds metric versioning checks to prevent partial errors (#13155)
  • mongodbreceiver: Change lpu integration test to use a mongodb 4.4 (#12981)
  • pkg/translator/prometheus: do not normalize metric name with multiple underscore (#13322)
  • prometheusreceiver: Make the error returned when dropping summary metrics that collide with histograms clearer. (#12976)
  • prometheusremotewriteexporter: Don't emit the target_info metric when it would only contain job and instance (#12768)
  • receiver_creator: Correct observer instance reference by updating watch_observers use ComponentID instead of just Type (#12801)
  • vcenterreceiver: Re-establish sessions when running with particular TLS settings. (#13447)

v0.58.0

🛑 Breaking changes 🛑

🚩 Deprecations 🚩

  • dotnetdiagnosticsreceiver: Change status to unmaintained (#12757)

🚀 New components 🚀

  • azureblobreceiver: Add a new component azureblobreciver (#8834) Add a new component azureblobreceiver that reads logs and traces from Azure Blob Storage
  • azureeventhubreceiver: New component to receive logs from Azure Event Hubs (#12786)
  • headers_setter: Add support for setting exporter headers from the upstream requests context (#5733, #7945, #4814)

💡 Enhancements 💡

  • filterprocessor: Add ability to filter based on logs SeverityText and Body. (#9235)
  • aerospikereceiver: Support tls configuration. Add tls and tlsname config items. (#12770)
  • datadogexporter: Send host info when sending hostmetadata from datadogexporter (#12944)
  • jaegerremotesampling: extend jaegerremotesampling with remote sampling via gRPC (#6694)
  • filterprocessor: Add log filtering based on SeverityNumber (#12959)
  • hostmetricsreceiver: Add new resource attribute process.parent_pid. The value of the attribute is the parent PID (#12290)
  • k8sattributesprocessor: Add support for discovering Kubernetes DaemonSet name and DaemonSet UID" (#141)
  • k8sattributesprocessor: Add support for discovering Kubernetes Job name and Job UID" (#141)
  • k8sattributesprocessor: Add support for discovering Kubernetes ReplicaSet name and ReplicaSet UID (#141)
  • k8sattributesprocessor: Add support for discovering Kubernetes StatefulSet name and StatefulSet UID" (#141)
  • loadbalancingexporter: Exporting trace pipelines based on Service name to avoid duplicate label svc + operation in collector hosts. (#12652)
  • lokiexporter: Don't retry on 4xx responses (excluding 429) from loki (#12930)
  • observers: Adds multiple observer.Notify subscriber support to observer.EndpointWatcher for multiple Endpoint event consumers. (#10830, #11541, #11544)
  • filelogreceiver: Process batches consecutively, rather than one per poll interval (#10285)
  • postgresqlreceiver: Client refactor to eventually support resource attributes. (#13087)
  • postgresqlreceiver: Adds Index Resource Attribute and Metrics Collection. (#13167) This enhancement will only be enabled with the receiver.postgresql.emitMetricsWithResourceAttributes feature gate being enabled.
  • pkg/translator/signalfx: report Histogram min/max when present, do not report sum when not present (#13153)
  • sigv4authextension: Added separate region for STS for cross region auth (#12736)
  • solacereceiver: Adds topic destination as a new attribute to receiver's spans (#12640)
  • pkg/telemetryquerylanguage: Add Getter slices to the TQL parser, allowing them to be specified as function parameters. (#12476)

🧰 Bug fixes 🧰

  • aerospikereceiver: Fix crash when connecting to an Aerospike server with authentication using a config with collect_cluster_metrics == false and no username or password. (#12979)
  • apachereceiver: Fix some partial errors not being correctly reported (#13133)
  • couchdbreceiver: Fix some partial errors not being correctly reported (#13007)
  • signalfxreceiver: log attempts to divide by zero at the debug level (#12969)
  • mongodbreceiver: Fix partial scraper errors not being reported (#13108)
  • mysqlreceiver: Fix some partial errors not being correctly reported (#13009)
  • tailsamplingprocessor: Fixing null pointer exception for span count sampling strategy. (#12745)

v0.57.2

🛑 Breaking changes 🛑

  • healthcheckextension: Remove deprecated port field from config. (#12668)
  • processor/cumulativetodelta: Removes the deprecated metrics config option. Use include/exclude instead. (#12732)
  • lokiexporter: Deprecate the format option (#12897)
  • metricstransformprocessor: Remove deprecated metric_name settings option (#12737)
  • pkg/stanza/fileconsumer: Unexport several fields that are meant for internal usage only (#12793)
  • pkg/stanza/fileconsumer: Rename fileconsumer.Input to fileconsumer.Manager (#12876)
  • prometheusremotewriteexporter: Export target_info not target for resource attributes (#12079)
  • pkg/translator/signalfx: Remove no longer necessary prom compatible configuration from FromTranslator (#12671)
  • signalfxexporter: Remove no longer necessary feature gate for prom compatible metrics (#12671)
  • zookeeperreceiver: Remove direction for metrics. The feature gate: receiver.zookeeperreceiver.emitMetricsWithoutDirectionAttribute can be set to apply the following (#12772) (#12184)
    • zookeeper metrics:
      • zookeeper.packet.count will become:
        • zookeeper.packet.received.count
        • zookeeper.packet.sent.count

🚀 New components 🚀

  • chronyreceiver: This will add in support for measuring tracking data from chronyd (#11789)

💡 Enhancements 💡

  • datadogexporter: Add host metadata tags to metrics on serverless environments (#12486)

  • observer: Add observer.Endpoint.ID to Env() (#12751)

  • aerospikereceiver: Scrape nodes in parallel when in collect_cluster_metrics mode. (#11563)

  • coralogixexporter: Add logs client to coralogixexporter (#12601)

  • awscontainerinsightreceiver: Pod Detection changes to support Containerd runtime in K8s (#12638)

  • dockerstatsreceiver: Enable a featuregate for the new implementation of scrape. Change the units in the new implementation to align to semantic convention. (#9794) This allows the new implementation of scrape to be used via a featuregate. It also updates the tests, which now test for expected descriptions and units in the new implementation.

  • healthcheckextension: Use confighttp.HTTPServerSettings to allow tls and auth. (#12668)

  • demo: Add connection time out for client in examples/demo/client (#12431)

  • prometheusexporter: Export target_info metrics with the resource attributes. (#8265)

  • resourcedetectionprocessor: update Azure resource detector to save "name" from Azure metadata API in azure.vm.name attribute (#12779)

  • pkg/telemetryquerylanguage: Adds standard contexts to the module that should be used when interacting with OTLP traces, metrics, and logs. (#12589)

  • pkg/telemetryquerylanguage: Adds a set of otel functions to the telemetryquerylanguage module. (#12754)

  • pkg/telemetryquerylanguage: Adds a set of common functions to the telemetryquerylanguage module. (#12739)

  • cumulativetodeltaprocessor: Cumulative Histogram metrics will now be converted to delta temporality and are no longer skipped. (#12423) This means that consumers who currently rely on Histograms being skipped would need to ensure they are excluded via config.

  • dockerstatsreceiver: Initial PR for onboarding dockerstats onto mdatagen scraping. (#9794) Additionally appends the internal docker client to allow options (bug fix).

  • mongodbreceiver: Enhance mongodbreceiver by adding new metrics (#12672)

  • chronyreceiver: Added internal chrony client (#11789) -| Added an internal client for the receiver with modifications of the upstream client to fit the collector

  • receivercreator: add per-receiver resource_attribute and validate endpoint type keys on global (#11766)

  • pkg/translator/signalfx: Optimize ToMetrics to emit datapoints under the same metric when same name and type. (#12902)

  • sqlqueryreceiver: Add static_attributes optional configuration to allow adding attributes/tags to queried metrics. (#11868)

🧰 Bug fixes 🧰

  • spanmetricsprocessor: Fix panic caused by race condition when accessing span attributes. (#12644)
  • awsxrayexporter: Stop dropping exception in aws xray events for non error codes (#12643)
  • signalfxexporter: use azure.vm.name instead of host.name to build azure resource id (#12779)
  • receiver/hostmetrics: Do not throw scraping errors if conntrack metrics collection is disabled (#12799)
  • kubeletstatsreceiver: Fetch metadata from initContainers (#12887)
  • metricstransformprocessor: Fix logic in merging exponential histogram. (#12865)
  • resourcedetectionprocessor: Add back host.name attribute when running on GKE (#12354)
  • filelogreceiver: Fix issue where checkpoints could be ignored if start_at`` was set to end`` (#12769)
  • pkg/stanza: Stop readerFactory from returning an error when creating an unsafeReader (#12766) This bug caused the filelog receiver to crash when the collector was restarted and the logs were being read from the end of the file
  • prometheusreceiver: Fix handling of timestamps to prevent reset when a new datapoint is recorded (#12746)
  • exporter/prometheusremotewrite: Fix a panic when a histogram does not have any buckets (#12777)
  • signalfxexporter: fix invalid response error message (#12654)
  • skywalkingreceiver: Add extra link attributes from skywalking ref. (#12651)
  • spanmetricsprocessor: Modifies spanmetrics processor to handle negative durations without crashing. Related to open-telemetry/opentelemetry-js-contrib#1013 (#7250) Sets negative durations to count towards the smallest histogram bucket.
  • splunkhecexporter: use proper config flags to configure content length of gzip buffers for metrics and traces (#12906)

v0.57.1

This version has been skipped.

v0.57.0

This version has been skipped.

v0.56.0

🛑 Breaking changes 🛑

  • datadogexporter: Change default value of host_metadata::hostname_source to config_or_system (#10424)

    • This behavior can be reverted by disabling the exporter.datadog.hostname.preview feature gate.
  • datadogexporter: Make automatically detected hostname match the one reported by other Datadog products. (#10424)

    • This behavior can be reverted by disabling the exporter.datadog.hostname.preview feature gate.
  • dynatraceexporter: Improve serialization of certain Instrument/Temporality pairings (#11828)

    • Non-monotonic cumulative Sum metrics will be exported as Gauges from now on. Non-monotonic cumulative Sums (usually UpDownCounters) will show the current value instead of a change rate.
  • transformprocessor: Field metric.type is now accessed as an enum/int64 instead of a string. (#10349)

  • memcachedreceiver: Remove direction for metrics. The feature gate: receiver.memcachedreceiver.emitMetricsWithoutDirectionAttribute can be set to apply the following (#12404) (#12165)

    • memcached metrics:
      • memcached.network will become:
        • memcached.network.sent
        • memcached.network.received
  • tracegen: Moving component under cmd for consistency (#12474)

  • datadogexporter: Remove deprecated configuration features. (#9099, #9016, #8845, #8783, #8781, #8489, #8396)

  • datadogexporter: Remove deprecated config package. (#8373)

  • observiqexporter: Remove the observiq exporter (#12406)

  • vcenterreceiver: Adds the vcenter.cluster.name resource attribute to vcenter.datastore metrics (#12357)

  • vcenterreceiver: remove metadata declaration and references to uncollected metric vcenter.vm.cpu.utilization (#12358)

  • vcenterreceiver: Remove direction for metrics. The feature gate: receiver.vcenterreceiver.emitMetricsWithoutDirectionAttribute can be set to apply the following (#11849) (#12185)

    • vcenter.host.disk.throughput will become:
      • vcenter.host.disk.throughput.read
      • vcenter.host.disk.throughput.write
    • vcenter.host.disk.latency.avg will become:
      • vcenter.host.disk.latency.avg.read
      • vcenter.host.disk.latency.avg.write
    • vcenter.host.network.throughput will become:
      • vcenter.host.network.throughputt.receive
      • vcenter.host.network.throughput.transmit
    • vcenter.host.network.packet.errors will become:
      • vcenter.host.network.packet.errors.receive
      • vcenter.host.network.packet.errors.transmit
    • vcenter.host.network.packet.count will become:
      • vcenter.host.network.packet.count.receive
      • vcenter.host.network.packet.count.transmit
    • vcenter.vm.disk.latency.avg.read will become:
      • vcenter.vm.disk.latency.avg.read
      • vcenter.vm.disk.latency.avg.write
    • vcenter.vm.network.throughput will become:
      • vcenter.vm.network.throughput.receive
      • vcenter.vm.network.throughput.transmit
    • vcenter.vm.network.packet.count will become:
      • vcenter.vm.network.packet.count.receive
      • vcenter.vm.network.packet.count.transmit

🚩 Deprecations 🚩

  • hostmetricsreceiver: Remove direction for disk metrics. The feature gate: receiver.hostmetricsreceiver.emitMetricsWithoutDirectionAttribute can be set to apply the following (#11849) (#11816)
    • disk scraper metrics:
      • system.disk.io will become:
        • system.disk.io.read
        • system.disk.io.write
      • system.disk.operations will become:
        • system.disk.operations.read
        • system.disk.operations.write
      • system.disk.operation_time will become:
        • system.disk.operation_time.read
        • system.disk.operation_time.write
      • system.disk.merged will become:
        • system.disk.merged.read
        • system.disk.merged.write

🚀 New components 🚀

  • telemetryquerylanguage: Expose the telemetry query language as a package. (#11751)
  • chronyreceiver: -| This component is a pure go implementation for capturing data from chrony (#11789)
  • otlpjsonfilereceiver: Add a new file receiver reading JSON-encoded OTLP data, after serialization specification (#10836)
  • pulsarexporter: Add Apache Pulsar exporter (#9795)
  • solacereceiver: Add Solace receiver to receive trace data from a Solace PubSub+ Event Broker. (#10572)

💡 Enhancements 💡

  • tanzuobservabilityexporter: Improve algorithm to translate OTEL delta exponential histograms into tanzu observability histograms (#12173)

  • internal/scrapertest: Add sortation functions for scrapertest (#10837)

  • elasticsearchreceiver: Add additional metrics (#12176) Add additional metrics for circuit breakers, disk IO r/w, translog, and CPU load.

  • supported platforms: Add linux-ppc64le architecture to cross build tests in CI (#12350)

  • dockerobserver: incorporate observer.EndpointsWatcher in preparation of multiple event subscribers and use existing internal event loop watcher (#10830, #11541)

  • hostmetrics: Adding connection tracking count and max metrics for linux (#11769)

  • hostmetricsreceiver: New config setting scrape_process_delay is used to indicate the minimum amount of time a process must be running before process metrics can be scraped for it. The default value is 0 seconds ("0s"). (#8976)

  • transformprocessor: Add ability to interact with enums via sybmols. (#10349)

  • telemetryquerylanguage: Adds to the grammar the ability to interpret Enums. (#11751)

  • transformprocessor: Update the transform processor to use the Telemetry Query Language package (#11751)

  • transformprocessor: Add delete_key and delete_matching_keys which allow deleting keys from maps. (#11823)

  • receiver/jaeger: Handle spans with own process (#10186)

  • k8sobserver: incorporate observer.EndpointsWatcher in preparation for multiple event subscribers (#10830, #11544)

  • exporter/loki: Handle multi-tenant use-cases (#3121)

  • metricstransformprocessor: Do not produce empty metrics (#12210)

  • schemaprocessor: renaming some internal packages to help improve maintainability (#8495)

  • groupbytrace: Promote groupbytrace to beta (#12169)

  • redisreceiver: Add redis.version resource attribute. (#12139)

  • podmanreceiver: Fetch containers stats one by one and add container image as metric attribute (#9013)

  • all: Components now report their stability level. (#12104)

  • sqlqueryreceiver: Add Oracle DB Support (#12137)

  • sqlserverreceiver: Added tests to validate counter names and a scraper test. (#9374)

  • templatequerylanguage: TQL grammar now supports complex where expressions with and, or and parentheses (#10195)

  • transformprocessor: Add .string accessor to get hex string for trace_id and span_id (#11555)

  • pkg/translator/jaeger: Handle spans with own process (#10186)

🧰 Bug fixes 🧰

  • cmd/chloggen: Compare changelog to common ancestor with main (#12149)
  • logstransformprocessor: Remove support for storage (#12424)
  • elasticsearchreceiver: Remove unused disk_usage_state attribute from documentation (#12429)
  • filterlog: change OR to AND logic for filtering logs - as desribed, and as is done for span filtering (#11439)
  • lokiexporter: Wrap quotes around log message (#11827)
  • tooling: Fix a bug in the makefile causing make rpm-package to fail (#12162)
  • prometheusexporter: Fix cumulative condition for the delta-to-cumulative (#4153)
  • xrayreceiver: Ensure that the UDP Poller ends the obsreport span it creates with every loop. (#12299) This avoids a memory leak that can happen when spans are created to track received segments but never ended.
  • googlecloudexporter: Various bug fixes in parsing OTel logs to GCP LogEntries (#12157)
  • datadogexporter: Fix logs related to the source provider. (#12160)
  • pkg/stanza/fileconsumer: Fix issue where reader could become stuck on newlines (#10125, #10127, #10128)
  • receivercreator: dynamically created receivers log with their name field (#16481)
  • skywalkingreceiver: Fix skywalking traceid and spanid convertion (#11562)
  • spanmetricsprocessor: Fixes the number of explicit bucket counts by removing the manually added "catch-all" bucket. (#11784)
  • spanmetricsprocessor: Fix concurrency bug causing premature key eviction. (#9018)
  • spanmetricsprocessor: Removes a comment that is no longer relevant due to a fix. (#12427)
  • sqlqueryreceiver: Metrics did not contain a timestamp. Timestamps are required for a variety of backends, especially prometheus. In order to work with prometheus we must set the metrics timestamp because metrics with the default timestamp (year 1970) will be dropped by prometheus backends. (#12088)
  • statsdreceiver: Fixing parsing issue for values on statsd receiver (#12120)
  • vcenterreceiver: Fixes calculation of vcenter.vm.disk.utilization. (#12342)

v0.55.0

🛑 Breaking changes 🛑

  • datadogexporter: Remove Sanitize method from Config struct. (#8373)

  • datadogexporter: (Under exporter.datadog.hostname.preview feature gate) Remove docker hostname detector (#11834)

  • k8sclusterreceiver: The receiver.k8sclusterreceiver.reportCpuMetricsAsDouble feature gate has been removed (#10838)

    • If users were disabling this feature gate, they may have to update monitoring for a few Kubernetes cpu metrics. For more details see feature-gate-configurations.
  • prometheusexporter: Automatically rename metrics with units to follow Prometheus naming convention (#8950)

🚩 Deprecations 🚩

  • datadogexporter: Deprecate config package in favor of structs on the datadogexporter package. (#8373)

  • k8sattributesprocessor: Announcing pod_association rules will be deprecated. Use pod_association.sources rules instead. This is in order to support metadata enrichment based on multiple attributes. (#4309)

  • hostmetricsreceiver: Remove direction for network, paging and process metrics. The feature gates receiver.hostmetricsreceiver.emitMetricsWithoutDirectionAttribute and receiver.hostmetricsreceiver.emitMetricsWithDirectionAttribute can be used to control the transition (#11815)

    • system.network.dropped will become:
      • system.network.dropped.receive
      • system.network.dropped.transmit
    • system.network.errors will become:
      • system.network.errors.receive
      • system.network.errors.transmit
    • system.network.io will become:
      • system.network.io.receive
      • system.network.io.transmit
    • system.network.packets will become:
      • system.network.packets.receive
      • system.network.packets.transmit
    • system.paging.operations will become:
      • system.paging.operations.page_in
      • system.paging.operations.page_out
    • process.disk.io will become:
      • process.disk.io.read
      • process.disk.io.write
  • logzioexporter: Announcing custom_endpoint, drain_interval, queue_capacity, queue_max_length configuration options will be deprecated in upcoming releases (#10821)

  • simpleprometheusreceiver: Announcing tls_enable, tls_config will be deprecated and use confighttp.HTTPClientSettings instead. (#11553)

🚀 New components 🚀

  • sqlqueryreceiver: Enable the component (#11848)

💡 Enhancements 💡

  • cmd/chloggen: Update CI process to validate new changelog strategy (#11841)
  • cmd/chloggen: Add new tool for conflict-free CHANGELOG.md management (#11539)
  • coralogixexporter: Add support for metrics (#11065)
  • coreinternal/attraction: Supports pattern for delete and hash attractions (#11886)
  • filterprocessor: Add ability to filter Spans (#6341)
  • flinkmetricsreceiver: Add attribute values to metadata (#11520)
  • k8sattributesprocessor: do not ignore hostNetwork pods for enrichment based on non IP attribute (#12073)
  • logzioexporter: Add support for logs pipeline and support for exporterhelper (#10821)
  • pkg/stanza: Export pkg/stanza/fileconsumer package (#11844)
  • prometheusreceiver: Add target_info labels to resource attributes (#11034)
  • redisreceiver: Add more metrics, redis.maxmemory, redis.role, redis.cmd.calls redis.cmd.usec (#11090)
  • sapmexporter: Add config option to log responses from Splunk APM (#11425)
  • splunkhecexporter: Update limits for max_content_length settings (#11550)
  • sqlqueryreceiver: Add core functionality (#10867)
  • tracegen: Add additional resource attributes (#11145)
  • transformprocessor: Add IsMatch factory function. This function allows regex matching in conditions. (#10903)
  • transformprocessor: replace_patternandreplace_all_patterns` use regex for pattern matching and replacing text in attributes/metrics (#11125)

🧰 Bug fixes 🧰

  • aerospikereceiver: Fix issue where namespaces would not be collected (#11465)
  • aerospikereceiver: Fix typo in metric name. Ensure namespace transactions are collected (#12085) (#12083)
  • coralogixexporter: Fix metrics bearer token (#11831)
  • datadogexporter: (Under exporter.datadog.hostname.preview feature gate) Make the hostname reported on GKE match the Datadog GCP integration hostname. (#11893)
  • datadogexporter: The traces.span_name_remappings setting now correctly refers to the OpenTelemetry key to be renamed without any sort of normalization. (#9693)
  • datadogexporter: Unify traces exporter behavior with Datadog Agent OTLP traces ingest. (#9693)
  • filelogreceiver: Read log lines from lost files first in a poll cycle (#12084)
  • filestorageextension: Copy values returned by Get (#11776)
  • cmd/chloggen: Fix problem where 'new' command would fail when branch name contained '/' (#11887)
  • kafkaexporter: Fixed config.Topic mutation causing Logs|Metrics|Traces to default to 1 topic (#11420)
  • mongodbreceiver: do not ignore TLS Settings in mongodbreceiver (#12092)
  • prometheusexporter: Expose the same metric from different targets correctly (#4986)
  • redactionprocessor: Respect allow_all_keys configuration (#11542)
  • saphanareceiver: Fix component memory query, add better error handling (#11507)
  • sapmreceiver: Fix issue where component instance use in multiple pipelines leads to start failures (#11518)
  • signalfxreceiver: Fix issue where component instance use in multiple pipelines leads to start failures (#11513)
  • splunkhecreceiver: Fix issue where component instance use in multiple pipelines leads to start failures (#11517)

v0.54.0

🛑 Breaking changes 🛑

  • transformprocessor: metric.is_monotonic is now accessed via a bool literal instead of a string. (#10473)
  • vcenterreceiver: Changed the attribute effective on vcenter.cluster.host.count as it will now be reported as a bool rather than a string (#10914)

🚩 Deprecations 🚩

  • datadogexporter: Deprecate instrumentation_library_metadata_as_tags (#11135)
  • datadogexporter: Deprecate Sanitize method of Config struct (#8829)
  • observiqexporter: Deprecate the observiq exporter (#10977)
  • honeycombexporter: Deprecate honeycomb exporter (#10318)

🚀 New components 🚀

  • expvarreceiver: Include expvarreceiver in components (#10847)
  • googlemanagedprometheusexporter Add the Google Managed Service for Prometheus exporter. (#10840)
  • googlemanagedprometheusexporter The Google Managed Service for Prometheus exporter is alpha. (#10925)

💡 Enhancements 💡

  • tailsamplingprocessor: Add trace_state policy (#10852)
  • mongodbatlasreceiver Add support for receiving alerts (#10854)
  • cmd/mdatagen: Allow attribute values of any types (#9245)
  • metricstransformprocessor: Migrate the processor from OC to pdata (#10817)
    • This behavior can be reverted by disabling the processor.metricstransformprocessor.UseOTLPDataModel feature gate.
  • transformprocessor: Add byte slice literal to the grammar. Add new SpanID and TraceID functions that take a byte slice and return a Span/Trace ID. (#10487)
  • transformprocessor: Add Summary transform functions. (#11041)
  • transformprocessor: Add nil literal to the grammar. (#11150)
  • elasticsearchreceiver: Add integration test for elasticsearch receiver (#10165)
  • tailsamplingprocessor: New sampler added that allows to sample based on minimum number of spans
  • datadogexporter: Some config validation and unmarshaling steps are now done on Validate and Unmarshal instead of Sanitize (#8829)
  • datadogexporter: Add exporter.datadog.hostname.preview feature flag and related warnings (#10926)
  • datadogexporter: Add instrumentation_scope_metadata_as_tags instead of instrumentation_library_metadata_as_tags in favor of https://github.com/open-telemetry/opentelemetry-proto/releases/tag/v0.15.0 (#11135)
  • examples: Add an example for scraping Couchbase metrics (#10894)
  • filestorageextension: Add background compaction capability (#9327)
  • googlecloudpubsubreceiver: Added new Endpoint and Insecure connection configuration options. (#10845)
  • dynatraceexporter: Provide better estimated summaries for partial histograms. (#11044)
  • mongodbreceiver: Add integration test for mongodb receiver (#10864)
  • mezmoexporter: add logging for HTTP errors (#10875)
  • googlecloudexporter: Support writing to multiple GCP projects by setting the gcp.project.id resource attribute, and support service account impersonation (#11051)
  • k8sattributeprocessor: Add debug logs to help identify missing attributes (#11060)
  • jmxreceiver: Add latest releases of jmx metrics gatherer & wildfly jar to supported jars hash list (#11134)
  • rabbitmqreceiver: Add integration test for rabbitmq receiver (#10865)
  • transformprocessor: Allow using trace_state with key-value struct (#11029)

🧰 Bug fixes 🧰

  • kubletetstatsreceiver: Bring back k8s.container.name attribute (#10848)
  • transformprocessor: Fix issue where some metric fields were not working correctly in conditions. (#10473)
  • transformprocessor: Fix issue where some trace fields were not working correctly in conditions. (#10471)
  • transformprocessor: Fix issue where some log fields were not working correctly in conditions. (#10903)
  • pkg/stanza: Skip building fingerprint in case of configuration change (#10485)
  • windowseventlogreceiver: Fixed example config in readme (#10971)
  • pkg/stanza: Fix access to atomic variable without using atomic package (#11023)
  • exporter/awsemfexporter:: Fix dead links in README.md. (#11027)
  • googlecloudexporter: Fix (self-obs) point_count metric calculation, concurrent map write panic, and dropped log attributes (#11051)
  • signalfxexporter: Event Type is a required field, if not set, set it to unknown to prevent signalfx ingest from dropping it (#11121)
  • prometheusreceiver: validate that combined metric points (e.g. histograms) have the same timestamp (#9385)
  • splunkhecexporter: Fix flaky test when exporting traces (#11418)
  • mongodbatlasexporter: Fix mongodbatlas.system.memory.usage.max not being reported (#11126)
  • receiver/awsxrayreceiver: Fix null span exception fields causing null pointer exception (#11431)
  • pkg/stanza: use ObservedTimestamp to decide if flush log for recombine operator (#11433)

v0.53.0

🛑 Breaking changes 🛑

  • jmxreceiver: Remove properties & groovyscript parameters from JMX Receiver. Add ResourceAttributes & LogLevel parameter to supply some of the removed functionality with reduced attack surface (#9685)
  • resourcedetectionprocessor: 'gke' and 'gce' resource detectors are replaced with a single 'gcp' detector (#10347)
  • pkg/stanza: Removed reference to deprecated ClusterName (#10426)
  • couchbasereceiver: Fully removed unimplemented Couchbase receiver (#10482)
  • hostmetricsreciever: Fix Load Scraper to normalize 1m, 5m, and 15m averages independently (#8267)

🚀 New components 🚀

  • flinkmetricsreceiver: Add implementation of Flink Metric Receiver (#10121)
  • windowseventlogreceiver Added implementation of Windows Event Log Receiver (#9228)
  • vcenterreceiver: Add metrics receiver for new vcenterreceiver component (#9224)
  • googlecloudpubsubreceiver Activate the Google Cloud Pubsub receiver. (#10580)
  • googlecloudpubsubexporter Activate the Google Cloud Pubsub exporter. (#10580)
  • aerospikereceiver: Add implementation of Aerospike Metric Receiver. (#9961)

💡 Enhancements 💡

  • awsemfexporter: Add min and max support for histograms (#10577)
  • tailsamplingprocessor: Add support for string invert matching to and policy (#9553)
  • mezemoexporter: Add user agent string to outgoing HTTP requests (#10470)
  • prometheusreceiver: Improve performance of metrics builder (#10546)
  • transformprocessor: Add functions for conversion of scalar metric types (gauge_to_sum and sum_to_gauge) (#10255)
  • dynatraceexporter: Use min and max when provided in a data point for histograms (#10815)
  • dynatraceexporter: Truncate unmarshalable responses to avoid long log lines (#10568)
  • scrapertest: Add IgnoreResourceAttributeValue option to metric comparison (#10828)

🧰 Bug fixes 🧰

  • transformprocessor: Fix issue where incorrect error was returned if a bad path was passed to a function (#10141)
  • tanzuobservabilityexporter: Improve how negative values in exponential histograms are handled. (#10135)
  • dynatraceexporter: Ensure min is always less than or equal to mean and max is always greater or equal to mean for histogram estimation. (#10257)
  • resourcedetectionprocessor: GCP resource detector now properly detects zone/region on GKE (#10347)
  • resourcedetectionprocessor: GCP resource detector no longer fails to detect resource when using workload identity (#10486)
  • tailsamplingprocessor: Fix composite sampler with inverse policy
  • awsprometheusremotewriteexporter: Fix signing of empty request bodies. (#10578)
  • sigv4authextension: Fix signing of empty request bodies. (#10578)
  • prometheusexporter: Converting monotonic Delta to Cumulative sums (#9919)
  • statsdreceiver: Update the lastIntervalTime for Counter metrics (#9919)
  • resourcedetectionprocessor: GCP resource detector now correctly detects region on Google App Engine standard (#10814)
  • apachereceiver: Update units to follow semconv (#10587)

v0.52.0

🛑 Breaking changes 🛑

  • jmxreceiver: Hash the jars provided to JMX Receiver and only allow if they match an approved list (#9687)
  • jmxreceiver: Remove properties & groovyscript parameters from JMX Receiver. Add ResourceAttributes & LogLevel parameter to supply some of the removed functionality with reduced attack surface (#9685)

🚀 New components 🚀

  • aerospikereceiver: Add implementation of Aerospike Metrics Receiver (#9961)
  • bigipreceiver: Add implementation of F5 Big-IP Metric Receiver (#9680)
  • expvarreceiver: Initial work for a receiver designed to scrape memstats from Golang applications. (#9747)
  • mezmoexporter: Add implementation of Mezmo Log exporter (#9743)
  • nsxtreceiver: Added implementation of NSX-T Metric Receiver (#9568)
  • expvarreceiver: Add implementation of new receiver. (#10183)
  • telemetrygen: Started implementing an upgraded version of tracegen generating traces and metrics (#9597)

💡 Enhancements 💡

  • transformprocessor: Add transformation of metrics (#10100)
  • transformprocessor: Include transform processor in components (#10134)
  • kubeletstatsreceiver: Update receiver to use new Metrics Builder. All emitted metrics remain the same. (#9744)
  • transformprocessor: Add new replace_match and replace_all_matches functions (#10132)
  • resourcedetectionprocessor: Add "cname" and "lookup" hostname sources
  • jmxreceiver: Communicate with JMX metrics gatherer subprocess via properties file (#9685)
  • pkg/stanza: make multiline tests more like integration tests #10353

🧰 Bug fixes 🧰

  • datadogexporter: add error checks for datadog exporter (#9964)
  • datadogexporter: Fix host aliases not being properly sent to the Datadog backend (#9748)
  • groupbyattrsprocessor: copied aggregationtemporality when grouping metrics. (#9088)
  • jaeger: Update OTLP-Jaeger translation of span events according to the OTel Spec: use event log field instead of message to represent OTel Span Event Name (#10273)
  • mongodbreceiver: Fix issue where receiver startup could hang (#10111)
  • transformprocessor: Fix issue where metric.aggregation_temporality and metric.is_monotic were not actually gettable or settable (#10197)
  • signalfxexporter: Emit prometheus compatible histogram/summary to signalfx #10299
    • This behavior can be reverted using the exporter.signalfxexporter.PrometheusCompatible featuregate.
  • podmanreceiver: Container Stats Error structure (#9397)
  • pkg/stanza: pipeline.Operators() will return a consistently ordered list of operators whenever possible (#9761)
  • tanzuobservabilityexporter: add error checks for tanzuobservability exporter (#10188)

v0.51.0

🛑 Breaking changes 🛑

🚩 Deprecations 🚩

  • exporter/azuremonitor: Deprecate use of LogRecord.Name as the log envelope category name. There is no replacement. (#9258)
  • processor/k8sattributes: Deprecate use of k8s.cluster.name metadata parameter (obsolete) (#9968)

🚀 New components 🚀

  • schemaprocessor: Starting the initial work to allow from translating from semantic convention to another (#8371)
  • saphanareceiver: Added implementation of SAP HANA Metric Receiver (#8827)
  • logstransformprocessor: Add implementation of Logs Transform Processor (#9335)

💡 Enhancements 💡

  • cmd/mdatagen: Replace enum attributes values with typed constants (#9683)
  • elasticsearchreceiver: Update metrics scope name from otelcol/elasticsearch to otelcol/elasticsearchreceiver (#9757)
  • k8sclusterreceiver: Validate that k8s API supports a resource before setting up a watcher for it (#9523)
  • internal/stanza: Add support for remove operator (#9524)
  • k8sattributesprocessor: Support regex capture groups in tag_name (#9525)
  • mongoreceiver: Update metrics scope name from otelcol/mongodb to otelcol/mongodbreceiver (#9759)
  • transformprocessor: Add new truncation function to allow truncating string values in maps such as attributes or resource.attributes (#9546)
  • datadogexporter: Add api.fail_on_invalid_key to fail fast if api key is invalid (#9426)
  • transformprocessor: Add support for functions to validate parameters (#9563)
  • googlecloudexporter: Add GCP cloud logging exporter (#9679)
  • transformprocessor: Add new limit function to allow limiting the number of items in a map, such as the number of attributes in attributes or resource.attributes (#9552)
  • processor/attributes: Support attributes set by server authenticator (#9420)
  • datadogexporter: Experimental support for Exponential Histograms with delta aggregation temporality (#8350)
  • prometheusreceiver: Support OpenMetrics Info and Stateset metrics (#9378)

🧰 Bug fixes 🧰

  • k8sclusterreceiver: Fix the receiver to work with 1.19 and 1.20 k8s API versions (#9523)
  • azuremonitorexporter: Fix log exporter bug related to incorrectly mapping SpanId (#9579)
  • mysqlreceiver: Fix attribute values mismatch with its definition (#9688)
  • opencensusreceiver: Do not report fatal error if err is server closed (#9559).
  • sqlserverreceiver: Fix the receiver to have integer types on metrics where applicable (#9601)
  • prometheusreceiver: Fix the memory issue introduced in the 0.49.0 release (#9718)
  • couchdbreceiver: Fix issue where the receiver would not respect custom metric settings (#9598)
  • nginxreceiver: Include nginxreceiver in components (#9572)
  • pkg/translator/prometheusremotewrite: Fix data race when used with other exporters (#9736)
  • examples/demo: fix baggage not work in trace demo app. (#9418)
  • prometheusreceiver: Handle the condition where up metric value is NaN (#9253)
  • tanzuobservabilityexporter: Make metrics stanza in config be optional (#9098)
  • filelogreceiver: Update Kubernetes examples to fix native OTel logs collection issue where 0 length logs cause errors (#9754)
  • logstransformprocessor: Resolve node ordering to fix intermittent failures (#9761)
  • awsinsightreceiver: Migrate from ConfigMapsResourceLock to ConfigMapsLeasesResourceLock as per https://github.com/kubernetes/client-go/commit/276ea3ed979947d7cdd4b3d708862245ddcd8883 (#9885)
  • filelog, journald, syslog, tcplog, udplog: Add support for []string type for converting log record entries (#9887)

v0.50.0

🛑 Breaking changes 🛑

  • stackdriverexporter: Remove the stackdriver exporter in favor of the identical googlecloud exporter (#9274)
  • filelog, journald, syslog, tcplog, udplog: Remove preserve_to field from sub-parsers (#9331)
  • kafkametricsreceiver: instrumentation name updated from otelcol/kafkametrics to otelcol/kafkametricsreceiver (#9406)
  • kubeletstatsreceiver: instrumentation name updated from kubeletstats to otelcol/kubeletstatsreceiver (#9400)
  • datadogexporter: Remove GetHostTags method from TagsConfig struct (#9423)
  • googlecloudexporter: Graduate the exporter.googlecloud.OTLPDirect feature-gate to Beta. This includes changes to the configuration structure, and many changes to default behavior. (#9471)

🚩 Deprecations 🚩

  • cumulativetodeltaprocessor: Deprecated metrics configuration option in favor of include and exclude (#8952)
  • datadogexporter: Deprecate metrics::report_quantiles in favor of metrics::summaries::mode (#8846)
  • datadogexporter: Deprecate traces.sample_rate setting. It was never used anywhere. (#9771)

🚀 New components 🚀

  • iisreceiver: Add implementation of IIS Metric Receiver (#8832)
  • sqlserverreceiver: Add implementation of SQL Server Metric Receiver (#8398)
  • activedirectorydsreceiver: Add implementation of Active Directory Domain Services metric receiver (#9359)
  • sqlqueryreceiver: Add readme, factory, and config to initial implementation of SQL receiver (#9408)

💡 Enhancements 💡

  • pkg/translator/prometheusremotewrite: Allow to disable sanitize metric labels (#8270)
  • basicauthextension: Implement configauth.ClientAuthenticator so that the extension can also be used as HTTP client basic authenticator.(#8847)
  • azuremonitorexporter, lokiexporter, observiqexporter: Update timestamp processing logic (#9130)
  • cumulativetodeltaprocessor: add new include/exclude configuration options with regex support (#8952)
  • datadogexporter: Update deprecation messages to reflect new deprecation plan (#9422)
  • cmd/mdatagen: Update generated functions to have simple parse function to handle string parsing consistently and limit code duplication across receivers (#7574)
  • attributesprocessor: Support filter by severity (#9132)
  • transformprocessor: Add transformation of logs (#9368)
  • datadogexporter: Add metrics::summaries::mode to specify export mode for summaries (#8846)
  • prometheusreceiver: Add resource attributes for kubernetes resource discovery labels (#9416)

🧰 Bug fixes 🧰

  • fluentforwardreceiver: Release port on shutdown (#9111)
  • prometheusexporter: Prometheus fails to generate logs when prometheus exporter produced a check exception occurs. (#8949)
  • resourcedetectionprocessor: Wire docker detector (#9372)
  • kafkametricsreceiver: The kafkametricsreceiver was changed to connect to kafka during scrape, rather than startup. If kafka is unavailable the receiver will attempt to connect during subsequent scrapes until succcessful (#8817).
  • datadogexporter: Update Kubernetes example manifest to new executable name. (#9425).
  • riakreceiver: Fix issue where user configured metric settings were ignored. (#9561)
  • sqlserverreceiver: Update sqlserver.transaction_log.growth.count and sqlserver.transaction_log.shrink.count to be monotonic sums. (#9522)

v0.49.0

⚠️ Warning ⚠️

This release contains an issue in Prometheus receiver causing 30% memory consumption increase when there is a lot of target churn. The issue is currently being investigated and will be fixed in one of the new releases. More details: open-telemetry#9278.

🛑 Breaking changes 🛑

  • filelogreceiver, journaldreceiver, syslogreceiver, tcplogreceiver, udplogreceiver:
    • Updated data model to align with stable logs data model, which includes various breaking changes. (#9139, #8835)
      • A detailed Upgrade Guide is available in the log-collection v0.29.0 release notes.
  • datadogexporter: Remove OnlyMetadata method from Config struct (#8980)
  • datadogexporter: Remove GetCensoredKey method from APIConfig struct (#8980)
  • mongodbatlasreceiver: Updated to uses newer metric builder which changed some metric and resource attributes (#9093)
  • dynatraceexporter: Make serialization package /internal (#9097)
  • attributesprocessor: Remove log names from filters (#9131)
  • k8sclusterreceiver: The receiver.k8sclusterreceiver.reportCpuMetricsAsDouble feature gate is now enabled by default (#9367)

🚩 Deprecations 🚩

  • datadogexporter: Deprecate service setting in favor of service.name semantic convention (#8784)
  • datadogexporter: Deprecate version setting in favor of service.version semantic convention (#8784)
  • datadogexporter: Deprecate env setting in favor of deployment.environment semantic convention (#9017)
  • datadogexporter: Deprecate GetHostTags method from TagsConfig struct (#8975)
  • datadogexporter: Deprecate tags setting in favor of host_metadata::tags (#9100)
  • datadogexporter: Deprecate send_metadata setting in favor of host_metadata::enabled (#9100)
  • datadogexporter: Deprecate use_resource_metadata setting in favor of host_metadata::hostname_source (#9100)
  • prometheusexecreceiver: Deprecate prom_exec receiver (#9058)
  • fluentbitextension: Deprecate Fluentbit extension (#9062)

🚀 New components 🚀

  • riakreceiver: Riak Metric Receiver (#8548)

💡 Enhancements 💡

  • splunkhecexporter: Add support for batching traces (#8995)
  • hostmetricsreceiver: Migrate Processes scraper to the Metrics builder (#8855)
  • tanzuobservabilityexporter: Use resourcetotelemetry helper (#8338)
  • Add make crosslink target to ensure replace statements are included in go.mod for all transitive dependencies within repository (#8822)
  • filestorageextension: Change bbolt DB settings for better performance (#9004)
  • jaegerremotesamplingextension: Add local and remote sampling stores (#8818)
  • attributesprocessor: Add support to filter on log body (#8996)
  • prometheusremotewriteexporter: Translate resource attributes to the target info metric (#8493)
  • prometheusexporter: Add job and instance labels to metrics so they can be scraped with honor_labels: true (#9115)
  • podmanreceiver: Add API timeout configuration option (#9014)
  • cmd/mdatagen: Add sem_conv_version field to metadata.yaml that is used to set metrics SchemaURL (#9010)
  • splunkheceporter: Add an option to disable log or profiling data (#9065)
  • windowsperfcountersreceiver: Move code into separate package for use in other windowsperfcounter receivers (#9108)
  • datadogexporter: Add host_metadata configuration section to configure host metadata export (#9100)
  • cmd/mdatagen: Update documentation generated for attributes to list enumerated values and show the "value" that will be visible on metrics when it is different from the attribute key in metadata.yaml (#8983)
  • routingprocessor: add option to drop resource attribute used for routing (#8990)

🧰 Bug fixes 🧰

  • filestorageextension: use correct bbolt options for compaction (#9134)
  • hostmetricsreceiver: Use cpu times for time delta in cpu.utilization calculation (#8857)
  • dynatraceexporter: Remove overly verbose stacktrace from certain logs (#8989)
  • googlecloudexporter: fix the exporter.googlecloud.OTLPDirect fature-gate, which was not applied when the flag was provided (#9116)
  • signalfxexporter: Fix bug to enable timeouts for correlating traces and metrics (#9101)
  • windowsperfcountersreceiver: fix exported values being integers instead of doubles (#9138)
  • prometheusreceiver: Fix issues with relabelling the job and instance labels. (#8780)
  • dynatraceexporter: Continue processing data points after a serialization error. (#9330)

v0.48.0

💡 Enhancements 💡

  • k8seventsreceiver: Add Api_version and resource_version (#8539)
  • datadogexporter: Add metrics::sums::cumulative_monotonic_mode to specify export mode for cumulative monotonic sums (#8490)
  • dynatraceexporter: add multi-instance deployment note to README.md (#8848)
  • resourcedetectionprocessor: Add attribute allowlist (#8547)
  • datadogexporter: Metrics payload data and Sketches payload data will be logged if collector is started in debug mode (#8929)
  • cmd/mdatagen: Add resource attributes definition to metadata.yaml and move pdata.Metrics creation to the generated code (#8555)

🛑 Breaking changes 🛑

  • windowsperfcountersreceiver: Added metrics configuration (#8376)
  • lokiexporter: Remove deprecated LogRecord.name field (#8951)
  • splunkhecexporter: Remove deprecated LogRecord.name field (#8951)

🚩 Deprecations 🚩

  • datadogexporter: Deprecate OnlyMetadata method from Config struct (#8359)
  • datadogexporter: Deprecate GetCensoredKey method from APIConfig struct (#8830)
  • datadogexporter: Deprecate metrics::send_monotonic_counter in favor of metrics::sums::cumulative_monotonic_mode (#8490)

🚀 New components 🚀

  • sigv4authextension: Enable component (#8518)

v0.47.0

💡 Enhancements 💡

  • googlecloudexporter: Add Validate method in config (#8559)
  • attributesprocessor: Add convert action (#7930)
  • attributesprocessor: Add metric support (#8111)
  • prometheusremotewriteexporter: Write-Ahead Log support enabled (#7304)
  • hostreceiver/filesystemscraper: Add filesystem utilization (#8027)
  • hostreceiver/pagingscraper: Add paging.utilization (#6221)
  • googlecloudexporter: [Alpha] Translate metrics directly from OTLP to gcm using the exporter.googlecloud.OTLPDirect feature-gate (#7177)
  • simpleprometheusreceiver: Add support for static labels (#7908)
  • spanmetricsprocessor: Dropping the condition to replace _ with key_ as __ label is reserved and _ is not (#8057)
  • podmanreceiver: Add container.runtime attribute to container metrics (#8262)
  • dockerstatsreceiver: Add container.runtime attribute to container metrics (#8261)
  • tanzuobservabilityexporter: instrumentation Library and Dropped Counts to Span Tags (#8120)
  • clickhouseexporter: Implement consume log logic. (#9705)
  • influxdbexporter: Add support for cumulative, non-monotonic metrics. (#8348)
  • oauth2clientauthextension: Add support for EndpointParams (#7307)
  • Add NewMetricData function to MetricsBuilder to consistently set instrumentation library name (#8255)
  • googlecloudpubsubreceiver Added implementation of Google Cloud Pubsub receiver. (#8391)
  • googlecloudpubsubexporter Added implementation of Google Cloud Pubsub exporter. (#8391)
  • coralogixexporter Allow exporter timeout to be configured (#7957)
  • prometheusremotewriteexporter support adding trace id and span id attached to exemplars (#8380)
  • influxdbexporter: accept histogram metric missing infinity bucket. (#8462)
  • skywalkingreceiver: Added implementation of Skywalking receiver. (#8549)
  • prometheusreceiver: Fix staleness bug for histograms and summaries (#8561)

🛑 Breaking changes 🛑

  • mongodbatlasreceiver: rename mislabeled attribute memory_state to correct disk_status on partition disk metrics (#7747)
  • mongodbatlasreceiver: Correctly set initial lookback for querying mongodb atlas api (#8246)
  • nginxreceiver: instrumentation name updated from otelcol/nginx to otelcol/nginxreceiver (#8255)
  • postgresqlreceiver: instrumentation name updated from otelcol/postgresql to otelcol/postgresqlreceiver (#8255)
  • redisreceiver: instrumentation name updated from otelcol/redis to otelcol/redisreceiver (#8255)
  • apachereceiver: instrumentation name updated from otelcol/apache to otelcol/apachereceiver ()
  • couchdbreceiver: instrumentation name updated from otelcol/couchdb to otelcol/couchdbreceiver (#8366)
  • prometheusreceiver Change resource attributes on metrics: instance -> service.instance.id, host.name -> net.host.name, port -> net.host.port, scheme -> http.scheme, job removed (#8266)
  • prometheusremotewriteexporter Use service.* resource attributes instead of job and instance resource attributes when adding job and instance labels to metrics (#8266)
  • mysqlreceiver: instrumentation name updated from otel/mysql to otelcol/mysqlreceiver (#8387)
  • zookeeperreceiver: instrumentation name updated from otelcol/zookeeper to otelcol/zookeeperreceiver (#8389)
  • coralogixexporter: Create dynamic subsystem name (#7957)
    • Deprecate configuration changed. Dynamic subsystem name from traces service name property.
  • rabbitmqreceiver: instrumentation name updated from otelcol/rabbitmq to otelcol/rabbitmqreceiver (#8400)

🧰 Bug fixes 🧰

  • zipkinexporter: Set "error" tag value when status is set to error (#8187)
  • prometheusremotewriteexporter: Correctly handle metric labels which collide after sanitization (#8378)
  • prometheusremotewriteexporter: Drop labels when exemplar attributes exceed the max number of characters (#8379)
  • k8sclusterreceiver: Add support to enable k8s node and container cpu metrics to be reported as double values (#8245)
    • Use "--feature-gates=receiver.k8sclusterreceiver.reportCpuMetricsAsDouble" to enable reporting node and container cpu metrics as a double values.
  • tanzuobservabilityexporter: Fix a typo in Instrumentation Library name and version tags (#8384)
  • logreceivers: Fix an issue where receiver would sometimes fail to build using Go 1.18 (#8521)
  • awsxrayreceiver: Add defaults for optional stack frame parameters (#8790)

🚩 Deprecations 🚩

  • datadogexporter: Deprecate automatic environment variable detection (#8397)

🚀 New components 🚀

  • sigv4authextension: New Component: Sigv4 Authenticator Extension (#8263)

v0.46.0

💡 Enhancements 💡

  • internal/stanza: Export metrics from Stanza receivers (#8025)
  • hostreceiver/pagingscraper: Migrate the scraper to the mdatagen metrics builder (#7139)
  • Do not drop zero trace/span id spans in the jaeger conversion (#7946)
  • Upgrade to use semantic conventions 1.6.1 (#7926)
  • dynatraceexporter: Validate QueueSettings and perform config validation in Validate() instead (#8020)
  • sapmexporter: Add validation for sending_queue setting (#8023)
  • signalfxexporter: Add validation for sending_queue setting (#8026)
  • internal/stanza: Add support for arbitrary attribute types (#8081)
  • resourcedetectionprocessor: Add confighttp.HTTPClientSettings To Resource Detection Config Fixes (#7397)
  • hostmetricsreceiver: Add cpu.utilization metrics to cpu scrapper (#7130)
  • honeycombexporter: Add validation for sending_queue setting (#8113)
  • routingprocessor: Expand error handling on failure to build exporters (#8125)
  • skywalkingreceiver: Add new skywalking receiver component folder and structure (#8107)
  • groupbyattrsprocesor: Allow empty keys, which allows to use the processor for compaction (#7793)
  • datadogexporter: Add rbac to example k8s manifest file (#8186)
  • splunkhecexporter: Add validation for sending_queue setting (#8256)

🛑 Breaking changes 🛑

  • Remove deprecated functions from jaeger translator (#8032)
  • internal/stanza: Remove write_to setting from input operators (#8081)
  • mongodbatlasreceiver: rename mongodb.atlas.* attributes to mongodb_atlas.* adhering to naming guidelines. Adding 3 new attributes (#7960)

🧰 Bug fixes 🧰

  • prometheusreceiver: Fix segfault that can occur after receiving stale metrics (#8056)
  • filelogreceiver: Fix issue where logs could occasionally be duplicated (#8123)
  • prometheusremotewriteexporter: Fix empty non-string resource attributes (#8116)

🚀 New components 🚀

v0.45.1

💡 Enhancements 💡

  • sumologicexporter: Move validation to Config (#7936)
  • elasticsearchexporter: Fix crash with batch processor (#7953).
  • splunkhecexporter: Batch metrics payloads (#7760)
  • tanzuobservabilityexporter: Add internal SDK metric tag (#7826)
  • hostreceiver/processscraper: Migrate the scraper to the mdatagen metrics builder (#7287)

🧰 Bug fixes 🧰

  • awsprometheusremotewriteexporter: fix dependencies issue (#7963)

🚀 New components 🚀

  • awsfirehose receiver: Add AWS Kinesis Data Firehose Receiver (#7918)

v0.45.0

💡 Enhancements 💡

  • hostreceiver/filesystemscraper: Migrate the scraper to the mdatagen metrics builder (#7772)
  • hostreceiver/memoryscraper: Migrate the scraper to the mdatagen metrics builder (#7312)
  • lokiexporter: Use record attributes as log labels (#7569)
  • routingprocessor: Do not err on failure to build exporters (#7423)
  • apachereceiver: Update to mdatagen v2 (#7573)
  • datadogexporter: Don't send host metadata if hostname is empty (#7426)
  • datadogexporter: Add insecure_skip_verify flag to configuration (#7422)
  • coralogixexporter: Update readme (#7785)
  • awscloudwatchlogsexporter: Remove name from aws cloudwatch logs exporter (#7554)
  • tanzuobservabilityexporter: Update OTel Collector's Exporter to match WF Proxy Handling of source (#7929)
  • hostreceiver/memoryscraper: Add memory.utilization (#6221)
  • awskinesisexporter: Add Queue Config Validation AWS Kinesis Exporter (#7835)
  • elasticsearchexporter: Remove usage of deprecated LogRecord.Name field (#7829).
  • loadbalancingexporter: Allow non-exist hostname on startup (#7935)
  • datadogexporter: Use exact sum, count and average on Datadog distributions (#7830)
  • storage/filestorage: add optional compaction to filestorage (#7768)
  • tanzuobservabilityexporter: Add attributes from the Resource to the resulting WF metric tags & set source value in WF metric (#8101)

🛑 Breaking changes 🛑

  • Use go mod compat, drops support for reproducibility with go 1.16 (#7915)
  • apachereceiver: Update instrumentation library name from otel/apache to otelcol/apache (#7754)
  • pkg/translator/prometheusremotewrite: Cleanup prw translator public functions (#7776)
  • prometheusreceiver: The OpenCensus-based metric conversion pipeline has been removed.
    • The receiver.prometheus.OTLPDirect feature gate has been removed as the direct pipeline is the only remaining pipeline.
  • translator/jaeger: Cleanup jaeger translator function names (#7775)
    • Deprecate old funcs with Internal word.
  • mysqlreceiver: Update data model and names for several metrics (#7924)
    • Change all metrics to Int values
    • Remove mysql.buffer_pool_pages. Replace with:
      • mysql.buffer_pool.pages
      • mysql.buffer_pool.data_pages
      • mysql.buffer_pool.page_flushes
    • Remove mysql.buffer_pool_size. Replace with:
      • mysql.buffer_pool.limit
      • mysql.buffer_pool.usage
    • Rename mysql.buffer_pool_operations to mysql.buffer_pool.operations

🚩 Deprecations 🚩

  • Deprecated log_names setting from filter processor. (#7552)

🧰 Bug fixes 🧰

  • tailsamplingprocessor: "And" policy only works as a sub policy under a composite policy (#7590)
  • prometheusreceiver: Correctly map description and units when converting Prometheus metadata directly to pdata. (#7748)
  • sumologicexporter: fix exporter panics on malformed histogram (#7548)
  • awsecscontainermetrics: CPU Reserved is now 1024/vCPU for ECS Container Insights (#6734)

🚀 New components 🚀

  • clickhouse exporter: Add ClickHouse Exporter (#6907)
  • pkg/translator/signalfx: Extract signalfx to metrics conversion in a separate package (#7778)
    • Extract FromMetrics to SignalFx translator package (#7823)

v0.44.0

💡 Enhancements 💡

  • kafkaexporter: Add compression and flush max messages options.
  • dynatraceexporter: Write error logs using plugin logger (#7360)
  • dynatraceexporter: Fix docs for TLS settings (#7568)
  • tanzuobservabilityexporter: Turn on metrics exporter (#7281)
  • attributesprocessor resourceprocessor: Add from_context value source
  • resourcedetectionprocessor: check cluster config to verify resource is on aws for eks resources (#7186)
  • awscloudwatchlogsexporter: enable awscloudwatchlogsexporter which accepts and exports log data (#7297)
  • translator/prometheusremotewrite: add a new module to help translate data from OTLP to Prometheus Remote Write (#7240)
  • azuremonitorexporter: In addition to traces, export logs to Azure Application Insights (#7403)
  • jmxreceiver: Added additional_jars configuration option to launch JMX Metric Gatherer JAR with extended CLASSPATH (#7378)
  • awscontainerinsightreceiver: add full pod name when configured to AWS Container Insights Receiver (#7415)
  • hostreceiver/loadscraper: Migrate the scraper to the mdatagen metrics builder (#7288)
  • awsecscontainermetricsreceiver: Rename attributes to follow semantic conventions (#7425)
  • datadogexporter: Always map conventional attributes to tags (#7185)
  • mysqlreceiver: Add golden files for integration test (#7303)
  • nginxreceiver: Standardize integration test (#7515)
  • mysqlreceiver: Update to use mdatagen v2 (#7507)
  • postgresqlreceiver: Add integration tests (#7501)
  • apachereceiver: Add integration test (#7517)
  • mysqlreceiver: Use scrapererror to report errors (#7513)
  • postgresreceiver: Update to mdatagen v2 (#7503)
  • nginxreceiver: Update to mdatagen v2 (#7549)
  • datadogexporter: Fix traces exporter's initialization log (#7564)
  • tailsamplingprocessor: Add And sampling policy (#6910)
  • coralogixexporter: Add Coralogix Exporter (#7383)
  • prometheusexecreceiver: Add default value for scrape_timeout option (#7587)

🛑 Breaking changes 🛑

  • resourcedetectionprocessor: Update os.type attribute values according to semantic conventions (#7544)
  • awsprometheusremotewriteexporter: Deprecation notice; may be removed after v0.49.0
    • Switch to using the prometheusremotewriteexporter + sigv4authextension instead

🧰 Bug fixes 🧰

  • resourcedetectionprocessor: fix meta allow list excluding keys with nil values (#7424)
  • postgresqlreceiver: Fix issue where empty metrics could be returned after failed connection (#7502)
  • resourcetotelemetry: Ensure resource attributes are added to summary and exponential histogram data points. (#7523)

🚩 Deprecations 🚩

  • Deprecated otel_to_hec_fields.name setting from splunkhec exporter. (#7560)

v0.43.0

💡 Enhancements 💡

  • coralogixexporter: First implementation of Coralogix Exporter (#6816)
  • cloudfoundryreceiver: Enable Cloud Foundry client (#7060)
  • elasticsearchexporter: add elasticsearchexporter to the components exporter list (#6002)
  • elasticsearchreceiver: Add metric metadata (#6892)
  • elasticsearchreceiver: Use same metrics as JMX receiver for JVM metrics (#7160)
  • elasticsearchreceiver: Implement scraping logic (#7174)
  • datadogexporter: Add http.status_code tag to trace stats (#6889)
  • datadogexporter: Add configuration option to use OTel span name into the Datatog resource name (#6611)
  • mongodbreceiver: Add initial client code to the component (#7125)
  • tanzuobservabilityexporter: Support delta histograms (#6897)
  • awscloudwatchlogsexporter: Use cwlogs package to export logs (#7152)
  • mysqlreceiver: Add the receiver to available components (#7078)
  • tanzuobservabilityexporter: Documentation for the memory_limiter configuration (#7164)
  • dynatraceexporter: Do not shut down exporter when metrics ingest module is temporarily unavailable (#7161)
  • mongodbreceiver: Add metric metadata (#7163)
  • mongodbreceiver: Add metric scraping (#7175)
  • postgresqlreceiver: add the receiver to available components (#7079)
  • rabbitmqreceiver: Add scraper logic (#7299)
  • tanzuobservability exporter: Support summary metrics (#7121)
  • mongodbatlasreceiver: Add retry and backoff to HTTP client (#6943)
  • Use Jaeger gRPC instead of Thrift in the docker-compose example (#7243)
  • tanzuobservabilityexporter: Support exponential histograms (#7127)
  • receiver_creator: Log added and removed endpoint env structs (#7248)
  • prometheusreceiver: Use the OTLP data conversion path by default. (#7282)
    • Use --feature-gates=-receiver.prometheus.OTLPDirect to re-enable the OpenCensus conversion path.
  • extension/observers: Correctly set image and tag on container endpoints (#7279)
  • tanzuobservabilityexporter: Document how to enable memory_limiter (#7286)
  • hostreceiver/networkscraper: Migrate the scraper to the mdatagen metrics builder (#7048)
  • hostmetricsreceiver: Add MuteProcessNameError config flag to mute specific error reading process executable (#7176)
  • scrapertest: Improve comparison logic (#7305)
  • hostmetricsreceiver: add cpu_average option for load scraper to report the average cpu load (#6999)
  • scrapertest: Add comparison option to ignore specific attributes (#6519)
  • tracegen: Add option to pass in custom headers to export calls via command line (#7308)
  • tracegen: Provide official container images (#7179)
  • scrapertest: Add comparison function for pdata.Metrics (#7400)
  • prometheusremotewriteexporter : Dropping the condition to replace _ with key_ as __ label is reserved and _ is not (#7112)

🛑 Breaking changes 🛑

  • tanzuobservabilityexporter: Remove status.code
  • tanzuobservabilityexporter: Use semantic conventions for status.message (#7126)
  • k8sattributesprocessor: Move kube and observability packages to internal folder (#7159)
  • k8sattributesprocessor: Unexport processor Options (#7311)
  • zookeeperreceiver: Refactored metrics to have correct units, types, and combined some metrics via attributes. (#7280)
  • prometheusremotewriteexporter: PRWExporter struct and NewPRWExporter() function are now unexported. (#TBD)
  • newrelicexporter marked as deprecated (#7284)

🚀 New components 🚀

  • rabbitmqreceiver: Establish codebase for RabbitMQ metrics receiver (#7239)
  • Add basicauth extension (#7167)
  • k8seventsreceiver: Implement core logic (#6885)

🧰 Bug fixes 🧰

  • k8sattributeprocessor: Parse IP out of net.Addr to correctly tag k8s.pod.ip (#7077)
  • k8sattributeprocessor: Process IP correctly for net.Addr instances that are not typed (#7133)
  • mdatagen: Fix validation of enabled field in metadata.yaml (#7166)
  • elasticsearch: Fix timestamp for each metric being startup time (#7255)
  • prometheusremotewriteexporter: Fix index out of range panic caused by expiring metrics (#7149)
  • resourcedetection: Log the error when checking for ec2metadata availability (#7296)

v0.42.0

💡 Enhancements 💡

  • couchbasereceiver: Add couchbase client (#7122)
  • couchdbreceiver: Add couchdb scraper (#7131)
  • couchdbreceiver: Add couchdb client (#6880)
  • elasticsearchreceiver: Implement scraper client (#7019)
  • couchdbreceiver: Add metadata metrics (#6878)
  • prometheusremotewriteexporter: Handling Staleness flag from OTLP (#6679)
  • prometheusexporter: Handling Staleness flag from OTLP (#6805)
  • prometheusreceiver: Set OTLP no-data-present flag for stale scraped metrics. (#7043)
  • mysqlreceiver: Add Integration test (#6916)
  • datadogexporter: Add compatibility with ECS Fargate semantic conventions (#6670)
  • k8s_observer: discover k8s.node endpoints (#6820)
  • redisreceiver: Add missing description fields to keyspace metrics (#6940)
  • redisreceiver: Set start timestamp uniformly for gauge and sum metrics (#6941)
  • kafkaexporter: Allow controlling Kafka acknowledgment behaviour (#6301)
  • lokiexporter: Log the first part of the http body on failed pushes to loki (#6946)
  • resourcedetectionprocessor: add the consul detector (#6382)
  • awsemfexporter: refactor cw_client logic into separate cwlogs package (#7072)
  • prometheusexporter: Dropping the condition to replace _ with key_ as __ label is reserved and _ is not (#7506)

🛑 Breaking changes 🛑

  • memcachedreceiver: Update metric names (#6594)
  • memcachedreceiver: Fix some metric units and value types (#6895)
  • sapm receiver: Use Jaeger status values instead of OpenCensus (#6682)
  • jaeger receiver/exporter: Parse/set Jaeger status with OTel spec values (#6682)
  • awsecscontainermetricsreceiver: remove tag from container.image.name (#6436)
  • k8sclusterreceiver: remove tag from container.image.name (#6436)

🚀 New components 🚀

  • ecs_task_observer: Discover running containers in AWS ECS tasks (#6894)
  • mongodbreceiver: Establish codebase for MongoDB metrics receiver (#6972)
  • couchbasereceiver: Establish codebase for Couchbase metrics receiver (#7046)
  • dbstorage: New experimental dbstorage extension (#7061)
  • redactionprocessor: Remove sensitive data from traces (#6495)

🧰 Bug fixes 🧰

  • ecstaskobserver: Fix "Incorrect conversion between integer types" security issue (#6939)
  • Fix typo in "direction" metrics attribute description (#6949)
  • zookeeperreceiver: Fix issue where receiver could panic during shutdown (#7020)
  • prometheusreceiver: Fix metadata fetching when metrics differ by trimmable suffixes (#6932)
  • Sanitize URLs being logged (#7021)
  • prometheusreceiver: Fix start time tracking for long scrape intervals (#7053)
  • signalfxexporter: Don't use syscall to avoid compilation errors on some platforms (#7062)
  • tailsamplingprocessor: Add support for new policies as composite sub-policies (#6975)

💡 Enhancements 💡

  • lokiexporter: add complete log record to body (#6619)
  • k8sclusterreceiver add container.image.tag attribute (#6436)
  • spanmetricproccessor: use an LRU cache for the cached Dimensions key-value pairs (#2179)
  • skywalkingexporter: add skywalking metrics exporter (#6528)
  • deltatorateprocessor: add int counter support (#6982)
  • filestorageextension: document default values (#7022)
  • redisreceiver: Migrate the scraper to the mdatagen metrics builder (#6938)

v0.41.0

🛑 Breaking changes 🛑

  • None

🚀 New components 🚀

  • asapauthextension (#6627)
  • mongodbatlasreceiver (#6367)

🧰 Bug fixes 🧰

  • filestorageextension: fix panic when configured directory cannot be accessed (#6103)
  • hostmetricsreceiver: fix set of attributes for system.cpu.time metric (#6422)
  • k8sobserver: only record pod endpoints for running pods (#5878)
  • mongodbatlasreceiver: fix attributes fields in metadata.yaml (#6440)
  • prometheusexecreceiver: command line processing on Windows (#6145)
  • spanmetricsprocessor: fix exemplars support (#6140)
  • Remap arm64 to aarch64 on rpm/deb packages (#6635)

💡 Enhancements 💡

  • datadogexporter: do not use attribute localhost-like hostnames (#6477)
  • datadogexporter: retry per network call (#6412)
  • datadogexporter: take hostname into account for cache (#6223)
  • exporter/lokiexporter: adding a feature for loki exporter to encode JSON for log entry (#5846)
  • googlecloudspannerreceiver: added fallback to ADC for database connections. (#6629)
  • googlecloudspannerreceiver: added parsing only distinct items for sample lock request label. (#6514)
  • googlecloudspannerreceiver: added request tag label to metadata config for top query stats. (#6475)
  • googlecloudspannerreceiver: added sample lock requests label to the top lock stats metrics. (#6466)
  • googlecloudspannerreceiver: added transaction tag label to metadata config for top transaction stats. (#6433)
  • groupbyattrsprocessor: added support for metrics signal (#6248)
  • hostmetricsreceiver: ensure SchemaURL is set (#6482)
  • kubeletstatsreceiver: add support for read-only kubelet endpoint (#6488)
  • mysqlreceiver: enable native authentication (#6628)
  • mysqlreceiver: remove requirement for password on MySQL (#6479)
  • receiver/prometheusreceiver: do not add host.name to metrics from localhost/unspecified targets (#6476)
  • spanmetricsprocessor: add setStatus operation (#5886)
  • splunkhecexporter: remove duplication of host.name attribute (#6527)
  • tanzuobservabilityexporter: add consumer for sum metrics. (#6385)
  • Update log-collection library to v0.23.0 (#6593)

v0.40.0

🛑 Breaking changes 🛑

  • tencentcloudlogserviceexporter: change Endpoint to Region to simplify configuration (#6135)

🚀 New components 🚀

  • Add memcached receiver (#5839)

🧰 Bug fixes 🧰

  • Fix token passthrough for HEC (#5435)
  • datadogexporter: Fix missing resource attributes default mapping when resource_attributes_as_tags: false (#6359)
  • tanzuobservabilityexporter: Log and report missing metric values. (#5835)
  • mongodbatlasreceiver: Fix metrics metadata (#6395)

💡 Enhancements 💡

  • awsprometheusremotewrite exporter: Improve error message when failing to sign request
  • mongodbatlas: add metrics (#5921)
  • healthcheckextension: Add path option (#6111)
  • Set unprivileged user to container image (#6380)
  • k8sclusterreceiver: Add allocatable type of metrics (#6113)
  • observiqexporter: Allow Dialer timeout to be configured (#5906)
  • routingprocessor: remove broken debug log fields (#6373)
  • prometheusremotewriteexporter: Add exemplars support (#5578)
  • fluentforwardreceiver: Convert attributes with nil value to AttributeValueTypeEmpty (#6630)

v0.39.0

🛑 Breaking changes 🛑

  • httpdreceiver renamed to apachereceiver to match industry standards (#6207)
  • tencentcloudlogserviceexporter change Endpoint to Region to simplify configuration (#6135)

🚀 New components 🚀

  • Add postgresqlreceiver config and factory (#6153)
  • Add TencentCloud LogService exporter tencentcloudlogserviceexporter (#5722)
  • Restore jaegerthrifthttpexporter (#5666)
  • Add skywalkingexporter (#5690, #6114)

🧰 Bug fixes 🧰

  • datadogexporter: Improve cumulative metrics reset detection using StartTimestamp (#6120)
  • mysqlreceiver: Address issues in shutdown function (#6239)
  • tailsamplingprocessor: End go routines during shutdown (#5693)
  • googlecloudexporter: Update google cloud exporter to correctly close the metric exporter (#5990)
  • statsdreceiver: Fix the summary point calculation (#6155)
  • datadogexporter Correct default value for send_count_sum_metrics (#6130)

💡 Enhancements 💡

  • datadogexporter: Increase default timeout to 15 seconds (#6131)
  • googlecloudspannerreceiver: Added metrics cardinality handling for Google Cloud Spanner receiver (#5981, #6148, #6229)
  • mysqlreceiver: Mysql add support for different protocols (#6138)
  • bearertokenauthextension: Added support of Bearer Auth for HTTP Exporters (#5962)
  • awsxrayexporter: Fallback to rpc.method for segment operation when aws.operation missing (#6231)
  • healthcheckextension: Add new health check feature for collector pipeline (#5643)
  • datadogexporter: Always add current hostname (#5967)
  • k8sattributesprocessor: Add code to fetch all annotations and labels by specifying key regex (#5780)
  • datadogexporter: Do not rely on collector to resolve envvar when possible to resolve them (#6122)
  • datadogexporter: Add container tags to attributes package (#6086)
  • datadogexporter: Preserve original TraceID (#6158)
  • prometheusreceiver: Enhance prometheus receiver logger to determine errors, test real e2e usage (#5870)
  • awsxrayexporter: Added support for AWS AppRunner origin (#6141)

v0.38.0

🛑 Breaking changes 🛑

  • datadogexporter Make distributions the default histogram export option. (#5885)
  • redisreceiver Update Redis receiver's metric names. (#5837)
  • Remove scraperhelper from contrib, use the core version. (#5826)

🚀 New components 🚀

  • googlecloudspannerreceiver Added implementation of Google Cloud Spanner receiver. (#5727)
  • awsxrayproxy Wire up awsxrayproxy extension. (#5747)
  • awscontainerinsightreceiver Enable AWS Container Insight receiver. (#5960)

🧰 Bug fixes 🧰

  • statsdreceiver: fix start timestamp / temporality for counters. (#5714)
  • Fix security issue related to github.com/tidwall/gjson. (#5936)
  • datadogexporter Fix cumulative histogram handling in distributions mode (#5867)
  • datadogexporter Skip nil sketches (#5925)

💡 Enhancements 💡

  • Extend kafkareceiver configuration capabilities. (#5677)
  • Convert mongodbatlas receiver to use scraperhelper. (#5827)
  • Convert dockerstats receiver to use scraperhelper. (#5825)
  • Convert podman receiver to use scraperhelper. (#5822)
  • Convert redisreceiver to use scraperhelper. (#5796)
  • Convert kubeletstats receiver to use scraperhelper. (#5821)
  • googlecloudspannerreceiver Migrated Google Cloud Spanner receiver to scraper approach. (#5868)
  • datadogexporter Use a Consumer interface for decoupling from zorkian's package. (#5315)
  • mdatagen - Add support for extended metric descriptions (#5688)
  • signalfxexporter Log datapoints option. (#5689)
  • cumulativetodeltaprocessor: Update cumulative to delta. (#5772)
  • Update configuration default values in log receivers docs. (#5840)
  • fluentforwardreceiver: support more complex fluent-bit objects. (#5676)
  • datadogexporter Remove spammy logging. (#5856)
  • datadogexporter Remove obsolete report_buckets config. (#5858)
  • Improve performance of metric expression matcher. (#5864)
  • tanzuobservabilityexporter Introduce metricsConsumer and gaugeMetricConsumer. (#5426)
  • awsxrayexporter rpc.system has priority to determine aws namespace. (#5833)
  • tailsamplingprocessor Add support for composite sampling policy to the tailsampler. (#4958)
  • kafkaexporter Add support for AWS_MSK_IAM SASL Auth (#5763)
  • Refactor the client Authenticators for the new "ClientAuthenticator" interfaces (#5905)
  • mongodbatlasreceiver Add client wrapper for MongoDB Atlas support (#5386)
  • redisreceiver Update Redis config options (#5861)
  • routingprocessor: allow routing for all signals (#5869)
  • extension/observer/docker add ListAndWatch to observer (#5851)

v0.37.1

🧰 Bug fixes 🧰

  • Fixes a problem with v0.37.0 which contained dependencies on v0.36.0 components. They should have been updated to v0.37.0.

v0.37.0

🚀 New components 🚀

🛑 Breaking changes 🛑

  • Remove squash on configtls.TLSClientSetting for splunkhecexporter (#5541)
  • Remove squash on configtls.TLSClientSetting for elastic components (#5539)
  • Remove squash on configtls.TLSClientSetting for observiqexporter (#5540)
  • Remove squash on configtls.TLSClientSetting for AWS components (#5454)
  • Move k8sprocessor to k8sattributesprocessor.
  • Rename k8s_tagger configuration k8sattributes.
  • filelog receiver: use empty value for SeverityText field instead of "Undefined" (#5423)
  • Rename configparser.ConfigMap to config.Map
  • Rename pdata.AggregationTemporality* to pdata.MetricAggregationTemporality*
  • Remove deprecated batchpertrace package/module (#5380)

💡 Enhancements 💡

  • k8sattributes processor: add container metadata enrichment (#5467, #5572)
  • resourcedetection processor: Add an option to force using hostname instead of FQDN (#5064)
  • dockerstats receiver: Move docker client into new shared internal/docker (#4702)
  • spanmetrics processor:
    • Add exemplars to metrics (#5263)
    • Support resource attributes in metrics dimensions (#4624)
  • filter processor:
    • Add log filtering by regexp type filters (#5237)
    • Add record level log filtering (#5418)
  • dynatrace exporter: Handle non-gauge data types (#5056)
  • datadog exporter:
    • Add support for exporting histograms as sketches (#5082)
    • Scrub sensitive information from errors (#5575)
    • Add option to send instrumentation library metadata tags with metrics (#5431)
  • podman receiver: Add api_version, ssh_key, and ssh_passphrase config options (#5430)
  • signalfx exporter:
    • Add max_connections config option (#5432)
    • Add dimension name to log when value > 256 chars (#5258)
    • Discourage setting of endpoint path (#4851)
  • kubeletstats receiver: Convert to pdata instead of using OpenCensus (#5458)
  • tailsampling processor: Add invert_match config option to string_attribute policy (#4393)
  • awsemf exporter: Add a feature flag in UserAgent for AWS backend to monitor the adoptions (#5178)
  • splunkhec exporter: Handle explicitly NaN and Inf values (#5581)
  • hostmetrics receiver:
    • Collect more process states in processes scraper (#4856)
    • Add device label to paging scraper (#4854)
  • awskinesis exporter: Extend to allow for dynamic export types (#5440)

🧰 Bug fixes 🧰

  • datadog exporter:
    • Fix tags on summary and bucket metrics (#5416)
    • Fix cache key generation for cumulative metrics (#5417)
  • resourcedetection processor: Fix failure to start collector if at least one detector returns an error (#5242)
  • prometheus exporter: Do not record obsreport calls (#5438)
  • prometheus receiver: Metric type fixes to match Prometheus functionality (#4865)
  • sentry exporter: Fix sentry tracing (#4320)
  • statsd receiver: Set quantiles for metrics (#5647)

v0.36.0

🛑 Breaking changes 🛑

  • filter processor: The configs for logs filter processor have been changed to be consistent with the metrics filter processor. (#4895)
  • splunk_hec receiver:
    • source_key, sourcetype_key, host_key and index_key have now moved under hec_metadata_to_otel_attrs (#4726)
    • path field on splunkhecreceiver configuration is removed: We removed the path attribute as any request going to the Splunk HEC receiver port should be accepted, and added the raw_path field to explicitly map the path accepting raw HEC data. (#4951)
  • feat(dynatrace): tags is deprecated in favor of default_dimensions (#5055)

💡 Enhancements 💡

  • filter processor: Add ability to include logs based on resource attributes in addition to excluding logs based on resource attributes for strict matching. (#4895)
  • kubelet API: Add ability to create an empty CertPool when the system run environment is windows
  • JMX receiver: Allow JMX receiver logging level to be configured (#4898)
  • datadog exporter: Export histograms as in OpenMetrics Datadog check (#5065)
  • dockerstats receiver: Set Schema URL (#5239)
  • Rename memorylimiter -> memorylimiterprocessor (#5262)
  • awskinesis exporter: Refactor AWS kinesis exporter to be synchronous (#5248)

v0.35.0

🛑 Breaking changes 🛑

  • Rename configparser.Parser to configparser.ConfigMap (#5070)
  • Rename TelemetryCreateSettings -> TelemetrySettings (#5169)

💡 Enhancements 💡

  • chore: update influxdb exporter and receiver (#5058)
  • chore(dynatrace): use payload limit from api constants (#5077)
  • Add documentation for filelog's new force_flush_period parameter (#5066)
  • Reuse the gzip reader with a sync.Pool (#5145)
  • Add a trace observer when splunkhecreceiver is used for logs (#5063)
  • Remove usage of deprecated pdata.AttributeValueMapToMap (#5174)
  • Podman Stats Receiver: Receiver and Metrics implementation (#4577)

🧰 Bug fixes 🧰

  • Use staleness markers generated by prometheus, rather than making our own (#5062)
  • datadogexporter exporter: skip NaN and infinite values (#5053)

v0.34.0

🚀 New components 🚀

💡 Enhancements 💡

  • tailsampling processor: Add new policy probabilistic (#3876)

v0.33.0

🎉 OpenTelemetry Collector Contrib v0.33.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

💡 Enhancements 💡

  • Collector contrib has now full support for metrics proto v0.9.0.

v0.32.0

🎉 OpenTelemetry Collector Contrib v0.32.0 (Beta) 🎉

This release is marked as "bad" since the metrics pipelines will produce bad data.

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🛑 Breaking changes 🛑

  • splunk_hec receiver/exporter: com.splunk.source field is mapped to source field in Splunk instead of service.name (#4596)
  • redis receiver: Move interval runner package to internal/interval (#4600)
  • datadog exporter: Export summary count and sum as monotonic counts (#4605)

💡 Enhancements 💡

  • logzio exporter:
    • New implementation of an in-memory queue to store traces, data compression with gzip, and queue configuration options (#4395)
    • Make Hclog2ZapLogger struct and methods private for public go api review (#4431)
  • newrelic exporter (#4392):
    • Marked unsupported metric as permanent error
    • Force the interval to be valid even if 0
  • awsxray exporter: Add PHP stacktrace parsing support (#4454)
  • file_storage extension: Implementation of batch storage API (#4145)
  • datadog exporter:
    • Skip sum metrics with no aggregation temporality (#4597)
    • Export delta sums as counts (#4609)
  • elasticsearch exporter: Add dedot support (#4579)
  • signalfx exporter: Add process metric to translation rules (#4598)
  • splunk_hec exporter: Add profiling logs support (#4464)
  • awsemf exporter: Replace logGroup and logStream pattern with metric labels (#4466)

🧰 Bug fixes 🧰

  • awsxray exporter: Fix the origin on ECS/EKS/EB on EC2 cases (#4391)
  • splunk_hec exporter: Prevent re-sending logs that were successfully sent (#4467)
  • signalfx exporter: Prefix temporary metric translations (#4394)

v0.31.0

🎉 OpenTelemetry Collector Contrib v0.31.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🛑 Breaking changes 🛑

  • influxdb receiver: Removed metrics_schema config option (#4277)

💡 Enhancements 💡

  • Update to OTLP 0.8.0:
    • Remove use of IntHistogram (#4276)
    • Update exporters/receivers for NumberDataPoint
  • Remove use of deprecated pdata slice Resize() (#4203, #4208, #4209)
  • awsemf exporter: Added the option to have a user who is sending metrics from EKS Fargate Container Insights to reformat them to look the same as insights from ECS so that they can be ingested by CloudWatch (#4130)
  • k8scluster receiver: Support OpenShift cluster quota metrics (#4342)
  • newrelic exporter (#4278):
    • Requests are now retry-able via configuration option (defaults to retries enabled). Permanent errors are not retried.
    • The exporter monitoring metrics now include an untagged summary metric for ease of use.
    • Improved error logging to include URLs that fail to post messages to New Relic.
  • datadog exporter: Upscale trace stats when global sampling rate is set (#4213)

🧰 Bug fixes 🧰

  • statsd receiver: Add option to set Counter to be monotonic (#4154)
  • Fix internal/stanza severity mappings (#4315)
  • awsxray exporter: Fix the wrong AWS env resource setting (#4384)
  • newrelic exporter (#4278):
    • Configuration unmarshalling did not allow timeout value to be set to 0 in the endpoint specific section.
    • Request cancellation was not propagated via context into the http request.
    • The queued retry logger is set to a zap.Nop logger as intended.

v0.30.0

🎉 OpenTelemetry Collector Contrib v0.30.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

  • oauth2clientauth extension: ported from core (#3848)
  • metrics-generation processor: is now enabled and available (#4047)

🛑 Breaking changes 🛑

  • Removed jaegerthrifthttp exporter (#4089)

💡 Enhancements 💡

  • tailsampling processor:
    • Add new policy status_code (#3754)
    • Add new tail sampling processor policy: status_code (#3754)
  • awscontainerinsights receiver:
    • Integrate components and fix bugs for EKS Container Insights (#3846)
    • Add Cgroup to collect ECS instance metrics for container insights receiver #3875
  • spanmetrics processor: Support sub-millisecond latency buckets (#4091)
  • sentry exporter: Add exception event capture in sentry (#3854)

v0.29.0

🎉 OpenTelemetry Collector Contrib v0.29.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🛑 Breaking changes 🛑

  • redis receiver (#3808)
    • removed configuration service_name. Use resource processor or resource_attributes setting if using receivercreator
    • removed type label and set instrumentation library name to otelcol/redis as other receivers do

💡 Enhancements 💡

  • tailsampling processor:
    • Add new policy latency (#3750)
    • Add new policy status_code (#3754)
  • splunkhec exporter: Include trace_id and span_id if set (#3850)
  • newrelic exporter: Update instrumentation naming in accordance with otel spec (#3733)
  • sentry exporter: Added support for insecure connection with Sentry (#3446)
  • k8s processor:
    • Add namespace k8s tagger (#3384)
    • Add ignored pod names as config parameter (#3520)
  • awsemf exporter: Add support for TaskDefinitionFamily placeholder on log stream name (#3755)
  • loki exporter: Add resource attributes as Loki label (#3418)

🧰 Bug fixes 🧰

  • datadog exporter:
    • Ensure top level spans are computed (#3786)
    • Update env clobbering behavior (#3851)
  • awsxray exporter: Fixed filtered attribute translation (#3757)
  • splunkhec exporter: Include trace and span id if set in log record (#3850)

v0.28.0

🎉 OpenTelemetry Collector Contrib v0.28.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

🛑 Breaking changes 🛑

💡 Enhancements 💡

  • Enabled Dependabot for Github Actions (#3543)
  • Change obsreport helpers for receivers to use the new pattern created in Collector (#3439,#3443,#3449,#3504,#3521,#3548)
  • datadog exporter:
    • Add logging for unknown or unsupported metric types (#3421)
    • Add collector version tag to internal health metrics (#3394)
    • Remove sublayer stats calc and mutex (#3531)
    • Deduplicate hosts for which we send running metrics (#3539)
    • Add support for summary datatype (#3660)
    • Add datadog span operation name remapping config option (#3444)
    • Update error formatting for error spans that are not exceptions (#3701)
  • nginx receiver: Update the nginx metrics to more closely align with the conventions (#3420)
  • elasticsearch exporter: Init JSON encoding support (#3101)
  • jmx receiver:
    • Allow setting system properties (#3450)
    • Update tested JMX Metric Gatherer release (#3695)
  • Refactor components for the Client Authentication Extensions (#3507)
  • Remove redundant conversion calls (#3688)
  • storage extension: Add a Close method to Client interface (#3506)
  • splunkhec exporter: Add metric_type as key which maps to the type of the metric (#3696)
  • k8s processor: Add semantic conventions to k8s-tagger for pod metadata (#3544)
  • kubeletstats receiver: Refactor kubelet client to internal folder (#3698)
  • newrelic exporter (#3690):
    • Updates the log level from error to debug when New Relic rate limiting occurs
    • Updates the sanitized api key that is reported via metrics
  • filestorage extension: Add ability to specify name (#3703)
  • awsemf exporter: Store the initial value for cumulative metrics (#3425)
  • awskinesis exporter: Refactor to allow for extended types of encoding (#3655)
  • ecsobserver extension:
    • Add task definition, ec2, and service fetcher (#3503)
    • Add exporter to convert task to target (#3333)

🧰 Bug fixes 🧰

  • awsemf exporter: Remove delta adjustment from summaries by default (#3408)
  • alibabacloudlogservice exporter: Sanitize labels for metrics (#3454)
  • statsd receiver: Fix StatsD drop metrics tags when using summary as observer_type for timer/histogram (#3440)
  • awsxray exporter: Restore setting of Throttle for HTTP throttle response (#3685)
  • awsxray receiver: Fix quick start bug (#3653)
  • metricstransform processor: Check all data points for matching metric label values (#3435)

v0.27.0

🎉 OpenTelemetry Collector Contrib v0.27.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

💡 Enhancements 💡

  • splunkhec exporter:
    • Include the response in returned 400 errors (#3338)
    • Map summary metrics to Splunk HEC metrics (#3344)
    • Add HEC telemetry (#3260)
  • newrelic exporter: Include dropped attributes and events counts (#3187)
  • datadog exporter:
    • Add Fargate task ARN to container tags (#3326)
    • Improve mappings for span kind dd span type (#3368)
  • signalfx exporter: Add info log for host metadata properties update (#3343)
  • awsprometheusremotewrite exporter: Add SDK and system information to User-Agent header (#3317)
  • metricstransform processor: Add filtering capabilities matching metric label values for applying changes (#3201)
  • groupbytrace processor: Added workers for queue processing (#2902)
  • resourcedetection processor: Add docker detector (#2775)
  • tailsampling processor: Support regex on span attribute filtering (#3335)

🧰 Bug fixes 🧰

  • datadog exporter:
    • Update Datadog attributes to tags mapping (#3292)
    • Consistent hostname and default metrics behavior (#3286)
  • signalfx exporter: Handle character limits on metric names and dimensions (#3328)
  • newrelic exporter: Fix timestamp value for cumulative metrics (#3406)

v0.26.0

🎉 OpenTelemetry Collector Contrib v0.26.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

  • influxdb exporter to support sending tracing, metrics, and logging data to InfluxDB

🛑 Breaking changes 🛑

  • signalfx exporter (#3207):
    • Additional metrics excluded by default by signalfx exporter
      • system.disk.io_time
      • system.disk.operation_time
      • system.disk.weighted_io_time
      • system.network.connections
      • system.processes.count
      • system.processes.created

💡 Enhancements 💡

  • Add default config and systemd environment file support for DEB/RPM packages (#3123)
  • Log errors on receiver start/stop failures (#3208)
  • newrelic exporter: Update API key detection logic (#3212)
  • splunkhec exporter:
    • Mark permanent errors to avoid futile retries (#3253)
    • Add TLS certs verification (#3204)
  • datadog exporter:
    • Add env and tag name normalization to trace payloads (#3200)
    • add ignore_resources configuration option (#3245)
  • jmx receiver: Update for latest snapshot and header support (#3283)
  • awsxray exporter: Added support for stack trace translation for .NET language (#3280)
  • statsd receiver: Add timing/histogram for statsD receiver as OTLP summary (#3261)

🧰 Bug fixes 🧰

  • awsprometheusremotewrite exporter:
    • Remove sending_queue (#3186)
    • Use the correct default for aws_auth.service (#3161)
    • Identify the Amazon Prometheus region from the endpoint (#3210)
    • Don't panic in case session can't be constructed (#3221)
  • datadog exporter: Add max tag length (#3185)
  • sapm exporter: Fix crash when passing the signalfx access token (#3294)
  • newrelic exporter: Update error conditions (#3322)

v0.25.0

🎉 OpenTelemetry Collector Contrib v0.25.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

  • kafkametricsreceiver new receiver component for collecting metrics about a kafka cluster - primarily lag and offset. configuration instructions
  • file_storage extension to read and write data to the local file system (#3087)

🛑 Breaking changes 🛑

  • newrelic exporter (#3091):
    • Removal of common attributes (use opentelemetry collector resource processor to add attributes)
    • Drop support for cumulative metrics being sent to New Relic via a collector

💡 Enhancements 💡

  • Update opentelemetry-log-collection to v0.17.0 for log receivers (#3017)
  • datadog exporter:
    • Add peer.service priority instead of service.name (#2817)
    • Improve support of semantic conventions for K8s, Azure and ECS (#2623)
  • Improve and batch logs translation for stanza (#2892)
  • statsd receiver: Add timing/histogram as OTLP gauge (#2973)
  • honeycomb exporter: Add Retry and Queue settings (#2714)
  • resourcedetection processor:
    • Add AKS resource detector (#3035)
    • Use conventions package constants for ECS detector (#3171)
  • sumologic exporter: Add graphite format (#2695)
  • Add trace attributes to the log entry for stanza (#3018)
  • splunk_hec exporter: Send log record name as part of the HEC log event (#3119)
  • newrelic exporter (#3091):
    • Add support for logs
    • Performance improvements
    • Optimizations to the New Relic payload to reduce payload size
    • Metrics generated for monitoring the exporter
    • Insert Key vs License keys are auto-detected in some cases
    • Collector version information is properly extracted via the application start info parameters

🧰 Bug fixes 🧰

  • splunk_hec exporter: Fix sending log payload with missing the GZIP footer (#3032)
  • awsxray exporter: Remove propagation of error on shutdown (#2999)
  • resourcedetection processor:
    • Correctly report DRAGONFLYBSD value (#3100)
    • Fallback to os.Hostname when FQDN is not available (#3099)
  • httpforwarder extension: Do not report ErrServerClosed when shutting down the service (#3173)
  • collectd receiver: Do not report ErrServerClosed when shutting down the service (#3178)

v0.24.0

🎉 OpenTelemetry Collector Contrib v0.24.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

  • fluentbit extension and fluentforward receiver moved from opentelemetry-collector

💡 Enhancements 💡

  • Check NO_WINDOWS_SERVICE environment variable to force interactive mode on Windows (#2819)
  • resourcedetection processor:
    • Add task revision to ECS resource detector (#2814)
    • Add GKE detector (#2821)
    • Add Amazon EKS detector (#2820)
    • Add VMScaleSetName field to Azure detector (#2890)
  • awsemf exporter:
    • Add parse_json_encoded_attr_values config option to decode json-encoded strings in attribute values (#2827)
    • Add output_destination config option to support AWS Lambda (#2720)
  • googlecloud exporter: Handle cloud.availability_zone semantic convention (#2893)
  • newrelic exporter: Add instrumentation.provider to default attributes (#2900)
  • Set unprivileged user to container image (#2925)
  • splunkhec exporter: Add max_content_length_logs config option to send log data in payloads less than max content length (#2524)
  • k8scluster and kubeletstats receiver: Replace package constants in favor of constants from conventions in core (#2996)

🧰 Bug fixes 🧰

  • spanmetrics processor:
    • Rename calls metric to calls_total and set IsMonotonic to true (#2837)
    • Validate duplicate dimensions at start (#2844)
  • awsemf exporter: Calculate delta instead of rate for cumulative metrics (#2512)
  • signalfx exporter:
    • Remove more unnecessary translation rules (#2889)
    • Implement summary type (#2998)
  • awsxray exporter: Remove translation to HTTP status from OC status (#2978)
  • awsprometheusremotewrite exporter: Close HTTP body after RoundTrip (#2955)
  • splunkhec exporter: Add ResourceAttributes to Splunk Event (#2843)

v0.23.0

🎉 OpenTelemetry Collector Contrib v0.23.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

  • groupbyattrs processor to group the records by provided attributes
  • dotnetdiagnostics receiver to read metrics from .NET processes

🛑 Breaking changes 🛑

  • stackdriver exporter marked as deprecated and renamed to googlecloud
  • Change the rule expression in receiver creator for matching endpoints types from type.port, type.hostport and type.pod to type == "port", type == "hostport" and type == "pod" (#2661)

💡 Enhancements 💡

  • loadbalancing exporter: Add support for logs (#2470)
  • sumologic exporter: Add carbon formatter (#2562)
  • awsecscontainermetrics receiver: Add new metric for stopped container (#2383)
  • awsemf exporter:
    • Send EMF logs in batches (#2572)
    • Add prometheus type field for CloudWatch compatibility (#2689)
  • signalfx exporter:
    • Add resource attributes to events (#2631)
    • Add translation rule to drop dimensions (#2660)
    • Remove temporary host translation workaround (#2652)
    • Remove unnecessary default translation rules (#2672)
    • Update exclude_metrics option so that the default exclude rules can be overridden by setting the option to [] (#2737)
  • awsprometheusremotewrite exporter: Add support for given IAM roles (#2675)
  • statsd receiver: Change to use OpenTelemetry type instead of OpenCensus type (#2733)
  • resourcedetection processor: Add missing entries for cloud.infrastructure_service (#2777)

🧰 Bug fixes 🧰

  • dynatrace exporter: Serialize each datapoint into separate line (#2618)
  • splunkhec exporter: Retain all otel attributes (#2712)
  • newrelic exporter: Fix default metric URL (#2739)
  • googlecloud exporter: Add host.name label if hostname is present in node (#2711)

v0.22.0

🎉 OpenTelemetry Collector Contrib v0.22.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

💡 Enhancements 💡

  • dynatrace exporter: Send metrics to Dynatrace in chunks of 1000 (#2468)
  • k8s processor: Add ability to associate metadata tags using pod UID rather than just IP (#2199)
  • signalfx exporter:
    • Add statusCode to logging field on dimension client (#2459)
    • Add translation rules for cpu.utilization_per_core (#2540)
    • Updates to metadata handling (#2531)
    • Calculate extra network I/O metrics (#2553)
    • Calculate extra disk I/O metrics (#2557)
  • statsd receiver: Add metric type label and enable_metric_type option (#2466)
  • sumologic exporter: Add support for carbon2 format (#2562)
  • resourcedetection processor: Add Azure detector (#2372)
  • k8scluster receiver: Use OTel conventions for metadata (#2530)
  • newrelic exporter: Multi-tenant support for sending trace data and performance enhancements (#2481)
  • stackdriver exporter: Enable retry_on_failure and sending_queue options (#2613)
  • Use standard way to convert from time.Time to proto Timestamp (#2548)

🧰 Bug fixes 🧰

  • signalfx exporter:
    • Fix calculation of network.total metric (#2551)
    • Correctly convert dimensions on metadata updates (#2552)
  • awsxray exporter and receiver: Fix the type of content_length (#2539)
  • resourcedetection processor: Use values in accordance to semantic conventions for AWS (#2556)
  • awsemf exporter: Fix concurrency issue (#2571)

v0.21.0

🎉 OpenTelemetry Collector Contrib v0.21.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

  • loki exporter to export data via HTTP to Loki

🛑 Breaking changes 🛑

  • signalfx exporter: Allow periods to be sent in dimension keys (#2456). Existing users who do not want to change this functionality can set nonalphanumeric_dimension_chars to _-

💡 Enhancements 💡

  • awsemf exporter:
    • Support unit customization before sending logs to AWS CloudWatch (#2318)
    • Group exported metrics by labels (#2317)
  • datadog exporter: Add basic span events support (#2338)
  • alibabacloudlogservice exporter: Support new metrics interface (#2280)
  • sumologic exporter:
    • Enable metrics pipeline (#2117)
    • Add support for all types of log body (#2380)
  • signalfx exporter: Add nonalphanumeric_dimension_chars config option (#2442)

🧰 Bug fixes 🧰

  • resourcedetection processor: Fix resource attribute environment variable (#2378)
  • k8scluster receiver: Fix nil pointer bug (#2450)

v0.20.0

🎉 OpenTelemetry Collector Contrib v0.20.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

  • spanmetrics processor to aggregate Request, Error and Duration (R.E.D) metrics from span data
  • awsxray receiver to accept spans in the X-Ray Segment format
  • groupbyattrs processor to group the records by provided attributes

🛑 Breaking changes 🛑

  • Rename kinesis exporter to awskinesis (#2234)
  • signalfx exporter: Remove send_compatible_metrics option, use translation_rules instead (#2267)
  • datadog exporter: Remove default prefix from user metrics (#2308)

💡 Enhancements 💡

  • signalfx exporter: Add k8s metrics to default excludes (#2167)
  • stackdriver exporter: Reduce QPS (#2191)
  • datadog exporter:
    • Translate otel exceptions to DataDog errors (#2195)
    • Use resource attributes for metadata and generated metrics (#2023)
  • sapm exporter: Enable queuing by default (#1224)
  • dynatrace exporter: Allow underscores anywhere in metric or dimension names (#2219)
  • awsecscontainermetrics receiver: Handle stopped container's metadata (#2229)
  • awsemf exporter: Enhance metrics batching in AWS EMF logs (#2271)
  • f5cloud exporter: Add User-Agent header with version to requests (#2292)

🧰 Bug fixes 🧰

  • signalfx exporter: Reinstate network/filesystem translation rules (#2171)

v0.19.0

🎉 OpenTelemetry Collector Contrib v0.19.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

  • f5cloud exporter to export metric, trace, and log data to F5 Cloud
  • jmx receiver to report metrics from a target MBean server in conjunction with the JMX Metric Gatherer

🛑 Breaking changes 🛑

  • signalfx exporter: The exclude_metrics option now takes slice of metric filters instead of just metric names (slice of strings) (#1951)

💡 Enhancements 💡

  • datadog exporter: Sanitize datadog service names (#1982)
  • awsecscontainermetrics receiver: Add more metadata (#2011)
  • azuremonitor exporter: Favor RPC over HTTP spans (#2006)
  • awsemf exporter: Always use float64 as calculated rate (#2019)
  • splunkhec receiver: Make the HEC receiver path configurable, and use /* by default (#2137)
  • signalfx exporter:
    • Drop non-default metrics and add include_metrics option to override (#2145, #2146, #2162)
    • Rename system.network.dropped_packets metric to system.network.dropped (#2160)
    • Do not filter cloud attributes from dimensions (#2020)
  • redis receiver: Migrate to pdata metrics #1889

🧰 Bug fixes 🧰

  • datadog exporter: Ensure that version tag is added to trace stats (#2010)
  • loadbalancing exporter: Rolling update of collector can stop the periodical check of DNS updates (#1798)
  • awsecscontainermetrics receiver: Change the type of exit_code from string to int and deal with the situation when there is no data (#2147)
  • groupbytrace processor: Make onTraceReleased asynchronous to fix processor overload (#1808)
  • Handle cases where the time field of Splunk HEC events is encoded as a String (#2159)

v0.18.0

🎉 OpenTelemetry Collector Contrib v0.18.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

  • sumologic exporter to send logs and metrics data to Sumo Logic
  • dynatrace exporter to send metrics to Dynatrace

💡 Enhancements 💡

  • datadog exporter:
    • Add resource attributes to tags conversion feature (#1782)
    • Add Kubernetes conventions for hostnames (#1919)
    • Add container tags to datadog export for container infra metrics in service view (#1895)
    • Update resource naming and span naming (#1861)
    • Add environment variables support for config options (#1897)
  • awsxray exporter: Add parsing of JavaScript stack traces (#1888)
  • elastic exporter: Translate exception span events (#1858)
  • signalfx exporter: Add translation rules to aggregate per core CPU metrics in default translations (#1841)
  • resourcedetection processor: Gather tags associated with the EC2 instance and add them as resource attributes (#1899)
  • simpleprometheus receiver: Add support for passing params to the prometheus scrape config (#1949)
  • azuremonitor exporter: Implement Span status code specification changes - gRPC (#1960)
  • metricstransform processor: Add grouping option ($1887)
  • alibabacloudlogservice exporter: Use producer to send data to improve performance (#1981)

🧰 Bug fixes 🧰

  • datadog exporter: Handle monotonic metrics client-side (#1805)
  • awsxray exporter: Log error when translating span (#1809)

v0.17.0

🎉 OpenTelemetry Collector Contrib v0.17.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

💡 Enhancements 💡

  • awsemf exporter: Add collector version to EMF exporter user agent (#1778)
  • signalfx exporter: Add configuration for trace correlation (#1795)
  • statsd receiver: Add support for metric aggregation (#1670)
  • datadog exporter: Improve logging of hostname detection (#1796)

🧰 Bug fixes 🧰

  • resourcedetection processor: Fix ecs detector to not use the default golang logger (#1745)
  • signalfx receiver: Return 200 when receiver succeed (#1785)
  • datadog exporter: Use a singleton for sublayer calculation (#1759)
  • awsxray and awsemf exporters: Change the User-Agent content order (#1791)

v0.16.0

🎉 OpenTelemetry Collector Contrib v0.16.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🛑 Breaking changes 🛑

  • honeycomb exporter: Update to use internal data format (#1689)

💡 Enhancements 💡

  • newrelic exporter: Add support for span events (#1643)
  • awsemf exporter:
    • Add placeholder support in log_group_name and log_stream_name config (#1623, #1661)
    • Add label matching filtering rule (#1619)
  • resourcedetection processor: Add new resource detector for AWS Elastic Beanstalk environments (#1585)
  • loadbalancing exporter:
    • Add sort of endpoints in static resolver (#1692)
    • Allow specifying port when using DNS resolver (#1650)
  • Add batchperresourceattr helper library that splits an incoming data based on an attribute in the resource (#1694)
  • alibabacloudlogservice exporter:
    • Add logs exporter (#1609)
    • Change trace type from opencensus to opentelemetry (#1713)
  • datadog exporter:
    • Improve trace exporter performance (#1706, #1707)
    • Add option to only send metadata (#1723)
  • awsxray exporter:
    • Add parsing of Python stack traces (#1676)
    • Add collector version to user agent (#1730)

🧰 Bug fixes 🧰

  • loadbalancing exporter:
    • Fix retry queue for exporters (#1687)
    • Fix periodicallyResolve for DNS resolver checks (#1678)
  • datadog exporter: Fix status code handling (#1691)
  • awsxray exporter:
    • Fix empty traces in X-Ray console (#1709)
    • Stricter requirements for adding http request url (#1729)
    • Fix status code handling for errors/faults (#1740)
  • signalfx exporter:
    • Split incoming data requests by access token before enqueuing (#1727)
    • Disable retry on 400 and 401, retry with backoff on 429 and 503 (#1672)
  • awsecscontainermetrics receiver: Improve error handling to fix seg fault (#1738)

v0.15.0

🎉 OpenTelemetry Collector Contrib v0.15.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

  • zookeeper receiver: Collects metrics from a Zookeeper instance using the mntr command
  • loadbalacing exporter: Consistently exports spans belonging to the same trace to the same backend
  • windowsperfcounters receiver: Captures the configured system, application, or custom performance counter data from the Windows registry using the PDH interface
  • awsprometheusremotewrite exporter: Sends metrics data in Prometheus TimeSeries format to a Prometheus Remote Write Backend and signs each outgoing HTTP request following the AWS Signature Version 4 signing process

💡 Enhancements 💡

  • awsemf exporter:
    • Add metric_declarations config option for metric filtering and dimensions (#1503)
    • Add SummaryDataType and remove Min/Max from Histogram (#1584)
  • signalfxcorrelation exporter: Add ability to translate host dimension (#1561)
  • newrelic exporter: Use pdata instead of the OpenCensus for traces (#1587)
  • metricstransform processor:
    • Add combine action for matched metrics (#1506)
    • Add submatch_case config option to specify case of matched label values (#1640)
  • awsecscontainermetrics receiver: Extract cluster name from ARN (#1626)
  • elastic exporter: Improve handling of span status if the status code is unset (#1591)

🧰 Bug fixes 🧰

  • awsemf exporter: Add check for unhandled metric data types (#1493)
  • groupbytrace processor: Make buffered channel to avoid goroutines leak (#1505)
  • stackdriver exporter: Set options.UserAgent so that the OpenCensus exporter does not override the UA ($1620)

v0.14.0

🎉 OpenTelemetry Collector Contrib v0.14.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

  • datadog exporter to send metric and trace data to Datadog (#1352)
  • tailsampling processor moved from core to contrib (#1383)

🛑 Breaking changes 🛑

  • jmxmetricsextension migrated to jmxreceiver (#1182, #1357)
  • Move signalfx correlation code out of sapm to signalfxcorrelation exporter (#1376)
  • Move Splunk specific utils outside of common (#1306)
  • stackdriver exporter:
  • datadog exporter: Remove option to change the namespace prefix (#1483)

💡 Enhancements 💡

  • splunkhec receiver: Add ability to ingest metrics (#1276)
  • signalfx receiver: Improve pipeline error handling (#1329)
  • datadog exporter:
    • Improve hostname resolution (#1285)
    • Add flushing/export of traces and trace-related statistics (#1266)
    • Enable traces on Windows (#1340)
    • Send otel.exporter running metric (#1354)
    • Add tag normalization util method (#1373)
    • Send host metadata (#1351)
    • Support resource conventions for hostnames (#1434)
    • Add version tag extract (#1449)
  • Add batchpertrace library to split the incoming batch into several batches, one per trace (#1257)
  • statsd receiver:
    • Add timer support (#1335)
    • Add sample rate support for counter, transfer gauge to double and transfer counter to int only (#1361)
  • awsemf exporter: Restructure metric translator logic (#1353)
  • resourcedetection processor:
    • Add EC2 hostname attribute (#1324)
    • Add ECS Resource detector (#1360)
  • sapm exporter: Add queue settings (#1390)
  • metrictransform processor: Add metric filter option (#1447)
  • awsxray exporter: Improve ECS attribute and origin translation (#1428)
  • resourcedetection processor: Initial system detector (#1405)

🧰 Bug fixes 🧰

  • Remove duplicate definition of cloud providers with core conventions (#1288)
  • kubeletstats receiver: Handle nil references from the kubelet API (#1326)
  • awsxray receiver:
    • Add kind type to root span to fix the empty parentID problem (#1338)
    • Fix the race condition issue (#1490)
  • awsxray exporter:
    • Setting the tlsconfig InsecureSkipVerify using NoVerifySSL (#1350)
    • Drop invalid xray trace id (#1366)
  • elastic exporter: Ensure span name is limited (#1371)
  • splunkhec exporter: Don't send 'zero' timestamps to Splunk HEC (#1157)
  • stackdriver exporter: Skip processing empty metrics slice (#1494)

v0.13.0

🎉 OpenTelemetry Collector Contrib v0.13.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

💡 Enhancements 💡

  • sapm exporter:
    • Enable queuing by default (#1224)
    • Add SignalFx APM correlation (#1205)
    • Make span source attribute and destination dimension names configurable (#1286)
  • signalfx exporter:
    • Pass context to the http client requests (#1225)
    • Update disk.summary_utilization translation rule to accommodate new labels (#1258)
  • newrelic exporter: Add span.kind attribute (#1263)
  • datadog exporter:
    • Add Datadog trace translation helpers (#1208)
    • Add API key validation (#1216)
  • splunkhec receiver: Add the ability to ingest logs (#1268)
  • awscontainermetrics receiver: Report CpuUtilized metric in percentage (#1283)
  • awsemf exporter: Only calculate metric rate for cumulative counter and avoid SingleDimensionRollup for metrics with only one dimension (#1280)

🧰 Bug fixes 🧰

  • Make signalfx exporter a metadata exporter (#1252)
  • awsecscontainermetrics receiver: Check for empty network rate stats and set zero (#1260)
  • awsemf exporter: Remove InstrumentationLibrary dimension in CloudWatch EMF Logs if it is undefined (#1256)
  • awsxray receiver: Fix trace/span id transfer (#1264)
  • datadog exporter: Remove trace support for Windows for now (#1274)
  • sapm exporter: Correlation enabled check inversed (#1278)

v0.12.0

🎉 OpenTelemetry Collector Contrib v0.12.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

  • awsemf exporter to support exporting metrics to AWS CloudWatch (#498, #1169)
  • http_forwarder extension that forwards HTTP requests to a specified target (#979, #1014, #1150)
  • datadog exporter that sends metric and trace data to Datadog (#1142, #1178, #1181, #1212)
  • awsecscontainermetrics receiver to collect metrics from Amazon ECS Task Metadata Endpoint (#1089, #1148, #1160)

💡 Enhancements 💡

  • signalfx exporter:
    • Add host metadata synchronization (#1039, #1118)
    • Add copy_dimensions translator option (#1126)
    • Update k8s_cluster metric translations (#1121)
    • Add option to exclude metrics (#1156)
    • Add avg aggregation method (#1151)
    • Fallback to host if cloud resource id not found (#1170)
    • Add backwards compatible translation rules for the dockerstatsreceiver (#1201)
    • Enable queuing and retries (#1223)
  • splunkhec exporter:
    • Add log support (#875)
    • Enable queuing and retries (#1222)
  • k8scluster receiver: Standardize metric names (#1119)
  • awsxray exporter:
    • Support AWS EKS attributes (#1090)
    • Store resource attributes in X-Ray segments (#1174)
  • honeycomb exporter:
    • Add span kind to the event sent to Honeycomb (#474)
    • Add option to adjust the sample rate using an attribute on the span (#1162)
  • jmxmetrics extension: Add subprocess manager to manage child java processes (#1028)
  • elastic exporter: Initial metrics support (#1173)
  • k8s processor: Rename default attr names for label/annotation extraction (#1214)
  • Add common SignalFx host id extraction (#1100)
  • Allow MSI upgrades (#1165)

🧰 Bug fixes 🧰

  • awsxray exporter: Don't set origin to EC2 when not on AWS (#1115)

v0.11.0

🎉 OpenTelemetry Collector Contrib v0.11.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

  • add dockerstats receiver as top level component (#1081)
  • add tracegen utility (#956)

💡 Enhancements 💡

  • stackdriver exporter: Allow overriding client options via config (#1010)
  • k8scluster receiver: Ensure informer caches are synced before initial data sync (#842)
  • elastic exporter: Translate deployment.environment resource attribute to Elastic APM's semantically equivalent service.environment (#1022)
  • k8s processor: Add logs support (#1051)
  • awsxray exporter: Log response error with zap (#1050)
  • signalfx exporter
    • Add dimensions to renamed metrics (#1041)
    • Add translation rules for disk_ops.total and disk_ops.pending metrics (#1082)
    • Add event support (#1036)
  • kubeletstats receiver: Cache detailed PVC labels to reduce API calls (#1052)
  • signalfx receiver: Add event support (#1035)

v0.10.0

🎉 OpenTelemetry Collector Contrib v0.10.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

  • add initial docker stats receiver, without sourcing in top level components (#495)
  • add initial jmx metrics extension structure, without sourcing in top level components (#740)
  • routing processor for routing spans based on HTTP headers (#907)
  • splunkhec receiver to receive Splunk HEC metrics, traces and logs (#840)
  • Add skeleton for http_forwarder extension that forwards HTTP requests to a specified target (#979)

💡 Enhancements 💡

  • stackdriver exporter
    • Add timeout parameter (#835)
    • Add option to configurably set UserAgent string (#758)
  • signalfx exporter
    • Reduce memory allocations for big batches processing (#871)
    • Add AWSUniqueId and gcp_id generation (#829)
    • Calculate cpu.utilization compatibility metric (#839, #974, #954)
  • metricstransform processor: Replace {{version}} in label values (#876)
  • resourcedetection processor: Logs Support (#970)
  • statsd receiver: Add parsing for labels and gauges (#903)

🧰 Bug fixes 🧰

  • k8s processor
    • Wrap metrics before sending further down the pipeline (#837)
    • Fix setting attributes on metrics passed from agent (#836)
  • awsxray exporter: Fix "pointer to empty string" is not omitted bug (#830)
  • azuremonitor exporter: Treat UNSPECIFIED span kind as INTERNAL (#844)
  • signalfx exporter: Remove misleading warnings (#869)
  • newrelic exporter: Fix panic if service name is empty (#969)
  • honeycomb exporter: Don't emit default proc id + starttime (#972)

v0.9.0

🎉 OpenTelemetry Collector Contrib v0.9.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🛑 Breaking changes 🛑

  • Remove deprecated lightstep exporter (#828)

🚀 New components 🚀

  • statsd receiver for ingesting StatsD messages (#566)

💡 Enhancements 💡

  • signalfx exporter
    • Add disk usage translations (#760)
    • Add disk utilization translations (#782)
    • Add translation rule to drop redundant metrics (#809)
  • kubeletstats receiver
    • Sync available volume metadata from /pods endpoint (#690)
    • Add ability to collect detailed data from PVC (#743)
  • awsxray exporter: Translate SDK name/version into xray model (#755)
  • elastic exporter: Translate semantic conventions to Elastic destination fields (#671)
  • stackdriver exporter: Add point count metric (#757)
  • awsxray receiver
    • Ported the TCP proxy from the X-Ray daemon (#774)
    • Convert to OTEL trace format (#691)

🧰 Bug fixes 🧰

  • kubeletstats receiver: Do not break down metrics batch (#754)
  • host observer: Fix issue on darwin where ports listening on all interfaces are not correctly accounted for (#582)
  • newrelic exporter: Fix panic on missing span status (#775)

v0.8.0

🎉 OpenTelemetry Collector Contrib v0.8.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

  • Receivers
    • prometheusexec subprocess manager (##499)

💡 Enhancements 💡

  • signalfx exporter
    • Add/Update metric translations (#579, #584, #639, #640, #652, #662)
    • Add support for calculate new metric translator (#644)
    • Add renaming rules for load metrics (#664)
    • Update container.name to k8s.container.name in default translation rule (#683)
    • Rename working-set and page-fault metrics (#679)
  • awsxray exporter
    • Translate exception event into xray exception (#577)
    • Add ingestion of X-Ray segments via UDP (#502)
    • Parse Java stacktrace and populate in xray cause (#687)
  • kubeletstats receiver
    • Add metric_groups option (#648)
    • Set datapoint timestamp in receiver (#661)
    • Change container.name label to k8s.container.name (#680)
    • Add working-set and page-fault metrics (#666)
    • Add basic support for volume metrics (#667)
  • stackdriver trace exporter: Move to new interface and pdata (#486)
  • metricstranform processor: Keep timeseries and points in order after aggregation (#663)
  • k8scluster receiver: Change container.spec.name label to k8s.container.name (#681)
  • Migrate receiver creator to internal data model (#701)
  • Add ec2 support to resourcedetection processor (#587)
  • Enable timeout, sending queue and retry for SAPM exporter (#707)

🧰 Bug fixes 🧰

  • azuremonitor exporter: Correct HTTP status code success mapping (#588)
  • k8scluster receiver: Fix owner reference in metadata updates (#649)
  • awsxray exporter: Fix handling of db system (#697)

🚀 New components 🚀

  • Skeleton for AWS ECS container metrics receiver (#463)
  • prometheus_exec receiver (#655)

v0.7.0

🎉 OpenTelemetry Collector Contrib v0.7.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🛑 Breaking changes 🛑

  • awsxray receiver updated to support udp: tcp_endpoint config option renamed to endpoint (#497)
  • TLS config changed for sapmreceiver (#488) and signalfxreceiver receivers (#488)

🚀 New components 🚀

  • Exporters
    • sentry adds tracing exporter for Sentry (#565)
  • Extensions
    • endpoints observer: adds generic endpoint watcher (#427)
    • host observer: looks for listening network endpoints on host (#432)

💡 Enhancements 💡

  • Update honeycomb exporter for v0.8.0 compatibility
  • Extend metricstransform processor to be able to add a label to an existing metric (#441)
  • Update kubeletstats metrics according to semantic conventions (#475)
  • Updated awsxray receiver config to use udp (#497)
  • Add /pods endpoint support in kubeletstats receiver to add extra labels (#569)
  • Add metric translation options to signalfx exporter (#477, #501, #571, #573)

🧰 Bug fixes 🧰

  • azuremonitor exporter: Mark spanToEnvelope errors as permanent (#500)

v0.6.0

🎉 OpenTelemetry Collector Contrib v0.6.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🛑 Breaking changes 🛑

  • Removed jaegarlegacy (#397) and zipkinscribe receivers (#410)
  • kubeletstats receiver: Renamed k8s.pod.namespace pod label to k8s.namespace.name and k8s.container.name container label to container.name

🚀 New components 🚀

  • Processors
    • metricstransform renames/aggregates within individual metrics (#376) and allow changing the data type between int and float (#402)

💡 Enhancements 💡

  • awsxray exporter: Use peer.service as segment name when set. (#385)
  • splunk exporter: Add trace exports support (#359, #399)
  • Build and publish Windows MSI (#408) and DEB/RPM Linux packages (#405)

🧰 Bug fixes 🧰

  • kubeletstats receiver:
    • Fixed NPE for newly created pods (#404)
    • Updated to latest change in the ReceiverFactoryOld interface (#401)
    • Fixed logging and self reported metrics (#357)
  • awsxray exporter: Only convert SQL information for SQL databases. (#379)
  • resourcedetection processor: Correctly obtain machine-type info from gce metadata (#395)
  • k8scluster receiver: Fix container resource metrics (#416)

v0.5.0

Released 01-07-2020

🎉 OpenTelemetry Collector Contrib v0.5.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🚀 New components 🚀

  • Processors
    • resourcedetection to automatically detect the resource based on the configured set of detectors (#309)

💡 Enhancements 💡

  • kubeletstats receiver: Support for ServiceAccount authentication (#324)
  • signalfx exporter and receiver
    • Add SignalFx metric token passthrough and config option (#325)
    • Set default endpoint of signalfx receiver to :9943 (#351)
  • awsxray exporter: Support aws plugins EC2/ECS/Beanstalk (#343)
  • sapm exporter and receiver: Add SAPM access token passthrough and config option (#349)
  • k8s processor: Add metrics support (#358)
  • k8s observer: Separate annotations from labels in discovered pods (#363)

🧰 Bug fixes 🧰

  • honeycomb exporter: Remove shared use of libhoney from goroutines (#305)

v0.4.0

Released 17-06-2020

🎉 OpenTelemetry Collector Contrib v0.4.0 (Beta) 🎉

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release (be sure to check the release notes here as well!). Check out the Getting Started Guide for deployment and configuration information.

🛑 Breaking changes 🛑

  • signalfx exporter url parameter changed to ingest_url (no impact if only using realm setting)

🚀 New components 🚀

  • Receivers
    • receiver_creator to create receivers at runtime (#145), add observer support to receiver_creator (#173), add rules support (#207), add dynamic configuration values (#235)
    • kubeletstats receiver (#237)
    • prometheus_simple receiver (#184)
    • kubernetes-cluster receiver (#175)
    • redis receiver (#138)
  • Exporters
    • alibabacloudlogservice exporter (#259)
    • SplunkHEC metrics exporter (#246)
    • elastic APM exporter (#240)
    • newrelic exporter (#229)
  • Extensions
    • k8s observer (#185)

💡 Enhancements 💡

  • awsxray exporter
    • Use X-Ray convention of segment name == service name (#282)
    • Tweak xray export to improve rendering of traces and improve parity (#241)
    • Add handling for spans received with nil attributes (#212)
  • honeycomb exporter
    • Use SendPresampled (#291)
    • Add span attributes as honeycomb event fields (#271)
    • Support resource labels in Honeycomb exporter (#20)
  • k8s processor
    • Add support of Pod UID extraction to k8sprocessor (#219)
    • Use k8s.pod.ip to record resource IP instead of just ip (#183)
    • Support same authentication mechanism as other kubernetes components do (#307)
  • sapm exporter: Add TLS for SAPM and SignalFx receiver (#215)
  • signalfx exporter
    • Add metric metadata syncer to SignalFx exporter (#231)
    • Add TLS for SAPM and SignalFx receiver (#215)
  • stackdriver exporter: Add support for resource mapping in config (#163)

🧰 Bug fixes 🧰

  • awsxray exporter: Wrap bad request errors for proper handling by retry queue (#205)
  • lightstep exporter: Ensure Lightstep exporter doesnt crash on nil node (#250)
  • sapm exporter: Do not break Jaeger traces before sending downstream (#193)
  • k8s processor: Ensure Jaeger spans work in passthrough mode (262)

🧩 Components 🧩

Receivers

Traces Metrics
Jaeger Legacy Carbon
SAPM (SignalFx APM) Collectd
Zipkin Scribe K8s Cluster
Redis
SignalFx
Simple Prometheus
Wavefront

Processors

  • K8s

Exporters

Commercial Community
Alibaba Cloud Log Service Carbon
AWS X-ray Elastic
Azure Monitor Jaeger Thrift
Honeycomb Kinesis
Lightstep
New Relic
SAPM (SignalFx APM)
SignalFx (Metrics)
Splunk HEC
Stackdriver (Google)

Extensions

  • Observer
    • K8s

v0.3.0 Beta

Released 2020-03-30

Breaking changes

  • Make prometheus receiver config loading strict. #697 Prometheus receiver will now fail fast if the config contains unused keys in it.

Changes and fixes

  • Enable best effort serve by default of Prometheus Exporter (orijtech/prometheus-go-metrics-exporter#6)
  • Fix null pointer exception in the logging exporter #743
  • Remove unnecessary condition to have at least one processor #744
  • Updated Honeycomb exported to honeycombio/opentelemetry-exporter-go v0.3.1

Features

Receivers / Exporters:

  • AWS X-Ray
  • Carbon
  • CollectD
  • Honeycomb
  • Jaeger
  • Kinesis
  • LightStep
  • OpenCensus
  • OpenTelemetry
  • SAPM
  • SignalFx
  • Stackdriver
  • Wavefront
  • Zipkin
  • Zipkin Scribe

Processors:

  • Attributes
  • Batch
  • Memory Limiter
  • Queued Retry
  • Resource
  • Sampling
  • Span
  • Kubernetes

Extensions:

  • Health Check
  • Performance Profiler
  • zPages

v0.2.8

Released 2020-03-25

Alpha v0.2.8 of OpenTelemetry Collector Contrib.

  • Implemented OTLP receiver and exporter.
  • Added ability to pass config to the service programmatically (useful for custom builds).
  • Improved own metrics / observability.

v0.2.7

Released 2020-03-17

Self-Observability

  • New command-line switch to control legacy and new metrics. Users are encouraged to experiment and migrate to the new metrics.
  • Improved error handling on shutdown.

Processors

  • Fixed passthrough mode k8sprocessor.
  • Added HASH action to attribute processor.

Receivers and Exporters

  • Added Honeycomb exporter.
  • Added LightStep exporter.
  • Added regular expression for Carbon receiver, allowing the metric name to be broken into proper label keys and values.
  • Updated Stackdriver exporter to use a new batch API.

v0.2.6 Alpha

Released 2020-02-18

Self-Observability

  • Updated metrics prefix to otelcol and expose command line argument to modify the prefix value.
  • Batch dropped span now emits zero when no spans are dropped.

Processors

  • Extended Span processor to have include/exclude span logic.
  • Ability to choose strict or regexp matching for include/exclude filters.

Receivers and Exporters

  • Added Carbon receiver and exporter.
  • Added Wavefront receiver.

v0.0.5 Alpha

Released 2020-01-30

  • Regexp-based filtering of span names.
  • Ability to extract attributes from span names and rename span.
  • File exporter for debugging.
  • Span processor is now enabled by default.

v0.0.1 Alpha

Released 2020-01-11

First release of OpenTelemetry Collector Contrib.