Skip to content

Releases: open-telemetry/opentelemetry-collector-contrib

v0.112.0

23 Oct 13:07
7090083
Compare
Choose a tag to compare

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.

End User Changelog

🛑 Breaking changes 🛑

  • elasticsearchexporter: Enable gzip compression by default (#35865)
    To disable compression, set config compression to none.
  • elasticsearchexporter: Set body.* for log body in OTel mode (#35771)
    Log record body in OTel mapping mode will be stored in body.text, body.structured, body.flattened based on body value type and presence of event.name attribute
  • processor/metricsgeneration: Remove "experimental_" prefix from metrics generator processor name. (#35426)

🚩 Deprecations 🚩

  • sapmreceiver: Deprecate SAPM receiver (#32125)
  • elasticsearchexporter: Deprecate retry::max_requests in favor of retry::max_retries (#32344)
    retry::max_retries will be exactly retry::max_requests - 1

🚀 New components 🚀

  • confmap/aesprovider: Initial aes encryption provider. Allows configurations to decrypt secrets using AES encryption. (#35550)
  • systemdreceiver: Introduce the scaffolding of a new component, systemdreceiver (#33532)
  • ntpreceiver: Introduce new receiver reporting the offset between the local machine and a NTP server. (#34375)
  • tlscheckreceiver: Add TLS Check Receiver component to monitor x.509 certificate expiry (#35423)

💡 Enhancements 💡

  • awsfirehosereceiver: Add support for CloudWatch logs (#35077)

  • awsfirehosereceiver: added OTLP v1 support to Firehose receiver (#34982)

  • awss3receiver: Add support for monitoring the progress of ingesting data from an S3 bucket via OpAMP custom messages. (#30750)

  • azureeventshubreceiver: Updates the Azure Event Hub receiver to use the new Resource Logs translator. (#35357)

  • cloudflarereceiver: Respond 503 on non-permanent and 400 on permanent errors (#35642)

  • elasticsearchexporter: Add hint in error logs for TSDB version_conflict_engine_exception error (#35546)

  • pkg/ottl: Add ConvertAttributesToElementsXML Converter (#35328)

  • logdedupprocessor: Add a condition field to the Log DeDuplication Processor. (#35440)

  • opampextension: Support using auth extensions for authenticating with opamp servers (#35507)

  • azureblobreceiver: adds support for using azidentity default auth, enabling the use of Azure Managed Identities, e.g. Workload Identities on AKS (#35636)
    This change allows to use authentication type "default", which makes the receiver use azidentity default Credentials,
    which automatically picks up, identities assigned to e.g. a container or a VirtualMachine

  • elasticsearchexporter: Introduce an experimental bodymap mapping mode for logs (#35444)

  • googlecloudexporter: Google Cloud exporter is marked as mutating. (#35366)

  • googlemanagedprometheusexporter: GMP exporter is marked as mutating. (#35366)

  • k8sobserver: Emit endpoint per Pod's container (#35491)

  • mongodbreceiver: Add support for MongoDB direct connection (#35427)

  • exporter/clickhouse: Add the ability to override default table names for all metric types. (#34225)
    'metrics_table_name' of the clickhouse exporter config is deprecated and newly introduced parameter 'metrics_tables' should be used instead.

  • metricsgenerationprocessor: Introduce functionality to only do metric calculations on data points whose attributes match (#35425)
    This functionality can be enabled by the metricsgeneration.MatchAttributes feature gate, which is disabled by default.

  • chronyreceiver: Move chronyreceiver to beta (#35913)

  • opampextension: Implement ReportsHealth capability in OpAMP extension (#35433)

  • opampextension: Report OS description semantic convention (os.description) as a part of non-identifying agent description. (#35555)

  • otelarrowexporter: Adjust defaults from https://opentelemetry.io/blog/2024/otel-arrow-production/ experiments. (#35477)

  • pkg/ottl: Parsing invalid statements and conditions now prints all errors instead of just the first one found. (#35728)

  • pkg/ottl: Add ParseSimplifiedXML Converter (#35421)

  • receiver/prometheusremotewrite: Add HTTP Server to handler Prometheus Remote Write requests (#35535)
    Warning - The HTTP Server still doesn't do anything. It's just a placeholder for now.

  • rabbitmqexporter: Allow to configure the name of the AMQP connection in the rabbitmqexporter (#34681)

  • routingconnector: Allow routing based on OTTL Conditions (#35731)
    Each route must contain either a statement or a condition.

  • sapmreceiver: Respond 503 on non-permanent and 400 on permanent errors (#35300)

  • opampsupervisor: Allow collector logs to passthrough to supervisor output to facilitate running in a containerized environment. (#35473)

  • hostmetricsreceiver: Use HOST_PROC_MOUNTINFO as part of configuration instead of environment variable (#35504)

  • pkg/ottl: Add ConvertTextToElements Converter (#35364)

🧰 Bug fixes 🧰

  • metricstransform: The previously removed functionality of aggregating against an empty label set is restored. (#34430)

  • datadogreceiver: Use Check name from Service Check structure as metric name rather than hardcoded string service_check (#35718)

  • azuredataexplorerexporter: Fix compression type for Azure Data Explorer exporter by adding the compression type in ingestion properties. (#35353)

  • telemetrygen: ensure validate is called (#35745)

  • deltatocumulative: fix meter panic on startup (#35685)
    properly constructs the TelemetryBuilder, so it does not panic on startup, rendering the entire component unusable

  • elasticsearchexporter: Log and drop invalid metrics instead of returning error to avoid upstream retries (#35740)

  • elasticsearchexporter: Preserve attribute names and metric names on prefix conflict in OTel mapping mode (#35651)
    e.g. if there are attributes "a" and "a.b", they should be sent to Elasticsearch as is, instead of "a.value" and "a.b", in OTel mapping mode

  • elasticsearchexporter: Make OTel mapping mode send to data streams only (#35839)
    This prevents auto creating regular indices in OTel mapping mode due to a race condition in Elasticsearch where otel-data index templates are not ready.

  • elasticsearchexporter: Sanitize datastream routing fields (#34285)
    Sanitize the dataset and namespace fields according to https://www.elastic.co/guide/en/ecs/current/ecs-data_stream.html.

  • oidcauthextension: Fix a goroutine leak during shutdown. (#30438)
    A goroutine leak was found in oidcauthextension. The goroutine leak was caused by the oidcauthextension not closing the idle connections in the client and transport.

  • filelogreceiver: Supports add_metadata_from_filepath for Windows filepaths (#35558)

  • filelogreceiver: Suppress errors on EBADF when unlocking files. (#35706)
    This error is harmless and happens regularly when delete_after_read is set. This is because we acquire the lock right at the start of the ReadToEnd function and then defer the unlock, but that function also performs the delete. So, by the time it returns and the defer runs the file descriptor is no longer valid.

  • kafkareceiver: Fixes issue causing kafkareceiver to block during Shutdown(). (#30789)

  • hostmetrics receiver: Fix duplicate filesystem metrics (#34635, #34512)
    The hostmetrics exposes duplicate metrics of identical mounts exposed in namespaces. The duplication causes errors in exporters that are sensitive to duplicate metrics. We can safely drop the duplicates as the metrics should be exactly the same.

  • pkg/translator/prometheusremotewrite: Fix metric comparison func in prom translation layer (#35741)

  • pkg/ottl: Allow indexing string slice type (#29441)

  • mysqlreceiver: Add replica metric support for versions of MySQL earlier than 8.0.22. (#35217)

  • stanza/input/windows: Close remote session while resubscribing (#35577)

  • telemetrygen: Enable the --otlp-insecure-skip-verify flag (#35735)

  • receiver/windowseventlog: Errors returned when passing data downstream will now be propagated correctly. (#35461)

  • datadogreceiver: Changes response message for /api/v1/series and /api/v2/series 202 response to be JSON and on par with Datadog API spec (#35743)

API Changelog

🛑 Breaking changes 🛑

  • pkg/translator/jaeger: Remove error from method signature as it always returns nil (#35560)

🚀 New components 🚀

  • pkg/status: Refactors the extension/healthcheckv2extension/internal/status into pkg/status (#34692)

💡 Enhancements 💡

  • pkg/translator/prometheusremotewrite: add FromMetricsV2 (#33661)
    The public function is partially implemented and not ready for use
  • receiver/prometheusremotewrite: Add HTTP Server to handler Prometheus Remote Write requests (#35535)
    Warning - The HTTP Server still doesn't do anything. It's just a placeholder for now.

v0.111.0

04 Oct 12:42
47cd38d
Compare
Choose a tag to compare

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.

🆕 The binary release adds a new OTLP-only distro. Feel free to leave us feedback on this new distro on the opentelemetry-collector-releases issue tracker.

⚠️ The core release removes the logging exporter. See open-telemetry/opentelemetry-collector#11337 for instructions on how to migrate to the debug exporter.

End User Changelog

🛑 Breaking changes 🛑

  • instanaexporter: Remove deprecated instanaexporter (#35367)
    Use the otlp exporter instead as explained in IBM's documentation.
  • elasticsearchexporter: Drop cumulative temporality histogram and exponential histogram (#35442)
    Cumulative temporality histogram and exponential histogram are not supported by Elasticsearch. Use cumulativetodeltaprocessor to convert cumulative temporality to delta temporality.
  • elasticsearchexporter: Implement receiver-based routing under *_dynamic_index config (#34246)
  • config: Move component.UseLocalHostAsDefaultHost feature gate to stable. (#35569)
  • metricsgenerationprocessor: Generate metrics even when the second metric's value is 0 (#35533)
  • signalfxexporter: Do not exclude the metric container.memory.working_set (#35475)
  • sqlqueryreceiver: Fail if value for log column in result set is missing, collect errors (#35068)
  • windowseventlogreceiver: The 'raw' flag no longer suppresses rendering info. (#34720)
    Previously, this flag controlled two behaviors simultaneously:
    1. Whether or not the body of the log record was an XML string or structured object.
    2. Whether or not rendering info was resolved.
      A separate 'suppress_rendering_info' option now controls rendering info resolution.
      This is considered a breaking change because users setting only the 'raw' flag without also setting the
      new 'suppress_rendering_info' flag may see a performance decrease along with more detailed events.

🚩 Deprecations 🚩

  • sapmreceiver: access_token_passthrough is deprecated (#35330)
    • "access_token_passthrough is deprecated."
    • "Please enable include_metadata in the receiver and add the following config to the batch processor:"
    batch:
      metadata_keys: [X-Sf-Token]

🚀 New components 🚀

  • receiver/prometheusremotewrite: Add a new receiver for Prometheus Remote Write.
    (#33782)

💡 Enhancements 💡

  • sumconnector: adds connector and summing logic along with tests (#32669)

  • receivercreator: Validate endpoint's configuration before starting receivers (#33145)

  • otelarrowreceiver: Add admission control in the otelarrow receiver's standard otlp data path.
    Also moves admission control config options to a separate block.
    arrow.admission_limit_mib -> admission.request_limit_mib
    arrow.waiter_limit -> admission.waiter_limit
    (#35021)

  • clickhouseexporter: Upgrading stability for traces to beta (#35186)
    The trace exporter has proven to be stable for production deployments.
    Trace configuration is unlikely to receive any significant changes.

  • clickhouseexporter: Updated the default trace table (#34245)
    Reduced data types, improved partitioning and time range queries

  • opampsupervisor: Add configurable logging for the supervisor. (#35466)

  • datadogreceiver: Move receiver's metrics stability to alpha. (#18278)

  • datadogreceiver: Add container id from v0.5 request header (#35345)

  • elasticsearchexporter: Implement elasticsearch.mapping.hints attribute handling for data points in OTel mapping mode (#35479)
    elasticsearch.mapping.hints takes a slice of strings. _doc_count enables emitting _doc_count for the document. aggregate_metric_double causes histogram or exponential histogram to be emitted as aggregate_metric_double.

  • elasticsearchexporter: Revert TSDB array dimension workaround for metrics OTel mode (#35291)
    Remove the workaround to stringify array dimensions as the limitation has been lifted in Elasticsearch v8.16.0.

  • receiver/statsd: Add support for aggregating on Host/IP.
    (#23809)

  • opampsupervisor: Skip executing the collector if no config is provided (#33680)

  • googlecloudmonitoringreceiver: Move receiver's stability to alpha. (#33762)

  • hostmetricsreceiver: Add ability to mute all errors (mainly due to access rights) coming from process scraper of the hostmetricsreceiver (#20435)

  • kubeletstats: Introduce feature gate for deprecation of container.cpu.utilization, k8s.pod.cpu.utilization and k8s.node.cpu.utilization metrics (#35139)

  • opampsupervisor: Make supervisor runnable as a Windows Service. (#34774)

  • opampsupervisor: Add config option for setting the timeout for the initial bootstrap information retrieval from the agent (#34996)

  • pkg/ottl: Add InsertXML Converter (#35436)

  • pkg/ottl: Add GetXML Converter (#35462)

  • pkg/ottl: Add ToKeyValueString Converter (#35334)

  • pkg/ottl: Add RemoveXML Converter (#35301)

  • geoipprocessor: No longer return an error when geo metadata is not found by a provider. (#35047)

  • sqlserverreceiver: Add computer name resource attribute to relevant metrics (#35040)

  • windowseventlogreceiver: Add 'suppress_rendering_info' option. (#34720)
    When this flag is enabled, the receiver will not attempt to resolve rendering info. This can improve performance
    but comes at a cost of losing some details in the event log.

  • windowseventlogreceiver: Move artificial "remote_server" field to 'attributes["server.address"]'. (#34720)

🧰 Bug fixes 🧰

  • webhookeventreceiver: Fixed a bug where request bodies containing newline characters caused the results to split into multiple log entries (#35028)
  • opampsupervisor: Only use TLS config when connecting to OpAMP server if using wss or https protocols. (#35283)
  • metricsgenerationprocessor: Allow metric calculations to be done on sum metrics (#35428)
  • sqlqueryreceiver: Fix reprocessing of logs when tracking_column type is timestamp (#35194)
  • windowseventlogreceiver: While collecting from a remote windows host, the stanza operator will no longer log "subscription handle is already open" constantly during successful collection. (#35520)
  • windowseventlogreceiver: If collecting from a remote host, the receiver will stop collecting if the host restarts. This change resubscribes when the host restarts. (#35175)

API Changelog

💡 Enhancements 💡

  • opampsupervisor: Pass config structure instead of file path when using NewSupervisor function (#34379)

v0.110.0

24 Sep 08:40
v0.110.0
130f99f
Compare
Choose a tag to compare

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.

End User Changelog

🛑 Breaking changes 🛑

  • pkg/stanza: Move filelog.container.removeOriginalTimeField feature gate to beta (#33389)

    • Disable the filelog.container.removeOriginalTimeField feature gate to get the old behavior.
  • resourcedetectionprocessor: Move processor.resourcedetection.hostCPUSteppingAsString feature gate to stable. (#31136)

  • resourcedetectionprocessor: Remove processor.resourcedetection.hostCPUModelAndFamilyAsString feature gate. (#29025)

🚩 Deprecations 🚩

  • hostmetricsreceiver: Set the receiver.hostmetrics.normalizeProcessCPUUtilization feature gate to stable. (#34763)

🚀 New components 🚀

  • azurelogs_translater: Adds a new translater that converts Azure EventHub logs to OpenTelemetry logs used by the Azure Events Hub receiver. (#39704)
  • dorisexporter: logs implementation (#33479)
  • dorisexporter: traces implementation (#33479)

💡 Enhancements 💡

  • otelarrowexporter: Allow separate arrow exporter per unique value of configured metadataKeys. (#34178)

  • processor/transform: Add custom function to the transform processor to convert exponential histograms to explicit histograms. (#33827)

  • datadogconnector: Map the new OTel semantic convention deployment.environment.name to env for OTLP traces in APM stats. (#35147)
    The old convention deployment.environment still works

  • datadogexporter: Map the new OTel semantic convention deployment.environment.name to env for OTLP traces, metrics and logs. (#35147)
    The old convention deployment.environment still works

  • file_storage: provide a new option to the user to create a directory on start (#34939)

  • headersetterextension: adding default_value config (#34412)
    default_value config item applied in case context value is empty

  • kafkaexporter: Add support for encoding extensions in the Kafka exporter. (#34384)
    This change adds support for encoding extensions in the Kafka exporter. Loading extensions takes precedence over the internally supported encodings.

  • datadogexporter: Adds exporter.datadogexporter.metricremappingdisabled featuregate which disables renaming OpenTelemetry metrics to match Datadog semantics. This feature gate is only for internal use. (#35025)

  • otelarrowexporter: Add BatcherConfig field following similar in OTLP exporter. (#34802)

  • otelarrowreceiver: Add gRPC timeout propagation. (#34742)

  • kafkareceiver: Add support for otlp_json encoding to Kafka receiver. The payload is deserialized into OpenTelemetry traces using JSON format. (#33627)
    This encoding allows the Kafka receiver to handle trace data in JSON format,
    enabling integration with systems that export traces as JSON-encoded data.

  • pkg/ottl: Improved JSON unmarshaling performance by 10-20% by switching dependencies. (#35130)

  • pkg/ottl: Added support for locale in the Time converter (#32978)

  • datadogexporter: Upgrade logs in Datadog Exporter to beta (#35359)

  • remotetapprocessor: Origin header is no longer required for websocket connections (#34925)

  • deltatorateprocessor: Remove unnecessary data copies. (#35165)

  • transformprocessor: Remove unnecessary data copy when transform sum to/from gauge (#35177)

  • sapmexporter: Prioritize token in context when accesstokenpassthrough is enabled (#35123)

  • tailsamplingprocessor: Fix the behavior for numeric tag filters with inverse_match set to true. (#34296)

🧰 Bug fixes 🧰

  • splunkenterprise: Fix a flaky search related to iops metrics. (#35081)

  • azuremonitorexporter: fix issue for property endpoint is ignored when using instrumentation_key (#33971)

  • groupbytraceprocessor: Ensure processor_groupbytrace_incomplete_releases metric has a unit. (#35221)

  • datadogreceiver: Fix numeric span attributes (#35087)

  • deltatocumulative: do not drop gauges and summaries (#35284)
    Gauges and Summaries are no longer dropped from processor output.
    Instead, they are passed through as-is

  • pkg/stanza: Do not get formatted message for Windows events without an event provider. (#35135)
    Attempting to get the formatted message for Windows events without an event provider can result in an error being logged. |
    This change ensures that the formatted message is not retrieved for such events.

  • cmd/opampsupervisor: Ensure the Supervisor processes all fields in a ServerToAgent message. (#34349)

  • signalfxexporter: Ensure token is not sent through for event data (#35154)

  • prometheusreceiver: Fix the retrieval of scrape configurations by also considering scrape config files (#34786)

  • redactionprocessor: Fix panic when using the redaction processor in a logs pipeline (#35331)

  • exporter/splunkhec: Fix incorrect claim that the exporter doesn't mutate data when batching is enabled. (#35306)
    The bug lead to runtime panics when the exporter was used with the batcher enabled in a fanout scenario.

API Changelog

🛑 Breaking changes 🛑

  • all: TimeoutSettings/QueueSettings fields in various Config structs are no longer embedded (#35158)
    Structs in which .TimeoutSettings is no longer embedded:
    • carbonexporter.Config
    • googlecloudpubsubreceiver.Config
      Structs in which .TimeoutSettings and .QueueSettings are no longer embedded:
    • alertmanagerexporter.Config
    • googlecloudexporter.Config
    • googlemanagedprometheusexporter.Config
    • otelarrowexporter.Config

🚩 Deprecations 🚩

  • datadogexporter: The datadog exporter config has been deprecated in favor of the new datadog/config package. The new package is shared between the Datadog exporter and the Datadog Connector.
    (#35067)
    The new datadog/config package is a shared module for Datadog exporter configuration. The module is shared between the Datadog exporter and the Datadog Connector.

💡 Enhancements 💡

  • pkg/datadog: Create a new module for Datadog exporter configuration.
    (#35067)
    This change introduces a new module for Datadog exporter configuration. The module is shared between the Datadog exporter and the Datadog Connector.

  • kafkaexporter: Add option to supply destination topic through context. (#34503, #34432)

v0.109.0

10 Sep 18:02
v0.109.0
bd98b9d
Compare
Choose a tag to compare

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.

End User Changelog

🛑 Breaking changes 🛑

  • clickhouseexporter: Upgrade trace SpanKind and StatusCode string values (#34799)
    This change updates the output of the trace SpanKind and StatusCode fields to be consistent
    with the specification's enum values. While this change will not break any deployments, it may affect
    queries dependent on the old enum names.

    For more details on old->new values, see this related PR:
    open-telemetry/opentelemetry-collector#6250

  • spanmetricsconnector: Improve consistency between metrics generated by spanmetricsconnector. Added traces.span.metrics as default namespace (#33227, #32818)
    Default namespace for the generated metrics is traces.span.metrics now. | The deprecated metrics are: calls, duration and events. | The feature flag connector.spanmetrics.legacyMetricNames was added to revert the behavior.

  • servicegraphconnector: Fix histogram metrics miss unit (#34511)
    All metrics will remove the suffix _seconds. It will not introduce breaking change if users use | prometheusexporter or prometheusremotewriteexporter to exporter metrics in pipeline. | In some cases, like using clickhouseexporter(save data in native OTLP format), it will be a breaking change. | Users can use transformprocessor to add back this suffix.

  • gitproviderreceiver: The Git Provider Receiver has been renamed to GitHub Receiver. (#34731)
    This rename was to better match the OpenTelemetry semantic convention changes in v1.27.0
    and allows for Traces and Log signals to be added to this component. Traces
    as mentioned in issue #27460 will be added in a future release to this component.

  • ottl: Remove tracing from OTTL due to performance concerns (#34910)

  • vcenterreceiver: Updated units on several metrics to be more in line with documented semantics. (#34946)
    The following are the metrics with their respective unit changes:

    • vcenter.datacenter.cpu.limit ({MHz} -> MHz)
    • vcenter.cluster.cpu.limit ({MHz} -> MHz)
    • vcenter.cluster.cpu.effective ({MHz} -> MHz)
    • vcenter.cluster.vsan.operations ({operations/sec} -> {operations/s})
    • vcenter.cluster.vsan.congestions ({congestions/sec} -> {congestions/s})
    • vcenter.host.network.packet.error.rate ({errors/sec} -> {errors/s})
    • vcenter.host.network.packet.rate ({packets/sec} -> {packets/s})
    • vcenter.host.network.packet.drop.rate ({packets/sec} -> {packets/s})
    • vcenter.host.vsan.operations ({operations/sec} -> {operations/s})
    • vcenter.host.vsan.congestions ({congestions/sec} -> {congestions/s})
    • vcenter.resource_pool.cpu.usage ({MHz} -> MHz)
    • vcenter.vm.network.throughput (By/sec -> By/s)
    • vcenter.vm.network.packet.rate ({packets/sec} -> {packets/s})
    • vcenter.vm.vsan.operations ({operations/sec} -> {operations/s})

🚩 Deprecations 🚩

  • instanaexporter: Marking instanaexporter module as deprecated (#34994)

💡 Enhancements 💡

  • pkg/ottl: Added Decode() converter function (#32493)

  • testbed: Add test case scenarios to handle large files to existing testbed. (#34288)

  • filestorage: Add directory validation for compaction on-rebound (#35114)

  • windowseventlogreceiver: Avoid rendering the whole event to obtain the provider name (#34755)

  • datadogreceiver: add support for sketch metrics in Datadog receiver (#18278)

  • datadogconnector: Optimize Datadog connector when there are many peer tags and connector.datadogconnector.NativeIngest is enabled (#34945)
    connector.datadogconnector.NativeIngest is currently enabled by default

  • splunkhecexporter: Drop empty log events (#34871)
    Log records with no body are dropped by Splunk on reception
    as they contain no log message, albeit they may have attributes.

    This PR removes those logs from consideration to be exported.

    This is in tune with the behavior of splunkhecreceiver, which refuses HEC events with no event (#19769)

  • elasticsearchexporter: Add exponential histogram support (#34813)

  • elasticsearchexporter: Add span event support to traces OTel mapping mode (#34831)
    Span events are now supported in OTel mapping mode. They will be routed to logs-${data_stream.dataset}-${data_stream.namespace} if traces_dynamic_index::enabled is true.

  • transformprocessor: Support aggregating metrics based on their attribute values and substituting the values with a new value. (#16224)

  • kafkareceiver: Adds tunable fetch sizes to Kafka Receiver (#22741, #34431)
    Adds the ability to tune the minumum, default and maximum fetch sizes for the Kafka Receiver

  • solarwindsapmsettingsextension: Added logic for refresh function (#27668)

  • githubreceiver: Promote GitHub receiver metrics to alpha status. (#34960)

  • googlecloudmonitoringreceiver: Enhancing the Google Cloud monitoring receiver to establish a client connection, scrape GCP Cloud Metrics, and transform them into an OpenTelemetry compatible format for pipeline processing. (#33762)

    • Implements client connection to Google Cloud Monitoring API.
    • Scrapes timeseries data based on configured metrics.
    • Converts the data into OpenTelemetry format for use in the pipeline.
  • processor/interval: Support for gauge and summary metrics. (#34803)
    Only the last value of a gauge or summary metric is reported in the interval processor, instead of all values.

  • kafkareceiver: Add support for encoding extensions in the Kafka receiver. (#33888)
    This change adds support for encoding extensions in the Kafka receiver. Loading extensions takes precedence over the internally supported encodings.

  • datadogexporter: Add support for setting a custom log source from resource attribute datadog.log.source (#35051)

  • opampextension: Adds the ability to configure the polling interval for the HTTP client. (#34749)

  • otelarrowexporter: Add gRPC timeout propagation. (#34733)

  • pkg/ottl: Add Sort function to sort array to ascending order or descending order (#34200)

  • exporter/prometheusexpoter: Support for Prometheus Created Timestamps. (#32521)

  • redactionprocessor: Add support for logs and metrics (#34479)

  • exceptionsconnector,servicegraphconnector,spanmetricsconnector: Extract the getDimensionValue function as a common function. (#34627)

  • sqlqueryreceiver: Support populating log attributes from sql query (#24459)

  • opampsupervisor: Add new config parameter agent.health_check_port to allow configuring the port used by the agent healthcheck extension. (#34643)

🧰 Bug fixes 🧰

  • apachereceiver: Fix panic on invalid endpoint configuration (#34992)

  • deltatocumulative: drop bad samples (#34979)
    removes bad (rejected) samples from output. previously identified and metric-tracked those as such, but didn't actually drop them.

  • elasticsearchexporter: Fix dynamic mapping for double values storing integers (#34680)

  • elasticsearchexporter: Stringify attribute array values in metrics OTel mode (#35004)
    Elasticsearch TSDB does not support array dimensions. Workaround it by stringifying attribute array values in OTel mapping mode for metrics.

  • fileconsumer: Fix bug where max_concurrent_files could not be set to 1. (#35080)

  • servicegraphconnector: Fix incorrectly reversed latency settings for the server and client (#34933)

  • hostmetricsreceiver: In filesystem scraper, do not prefix partitions when using the environment variable HOST_PROC_MOUNTINFO (#35043)

  • splunkhecreceiver: Fix memory leak when the receiver is used for both metrics and logs at the same time (#34886)

  • geoipprocessor: Avoid using internal empty attribute.Set pointer (#34882)

  • pkg/stanza: Synchronize shutdown in stanza adapter (#31074)
    Stanza-based receivers should now flush all data before shutting down

  • sqlserverreceiver: Fix bug where metrics were being emitted with the wrong database name resource attribute (#35036)

  • signalfxexporter: Fix memory leak by re-organizing the exporter's functionality lifecycle (#32781)

  • otlpjsonconnector: Handle OTLPJSON unmarshal error (#34782)

  • mysqlreceiver: mysql client raise error when the TABLE_ROWS column is NULL, convert NULL to int64 (#34195)

  • pkg/stanza: An operator configured with silent errors shouldn't log errors while processing log entries. (#35008)

  • datadogexporter: Use correct hostname for logs when using Datadog Agent logs pipeline with a gateway deployment. (#35058)

API Changelog

🛑 Breaking changes 🛑

  • pkg/ottl: Change the OTTL grammar to support expressing statements context via path names (#29017)
    The ottl.Path interface requires a new method: Context() string
  • prometheusreceiver: Move the TargetAllocator configuration struct to an internal directory (#33146)

💡 Enhancements 💡

  • pkg/ottl: Add support for localized time parsing into the coreinternal/timeutils (#32977)
  • googlecloudmonitoringreceiver: Enhancing the Google Cloud monitoring receiver to establish a client connection, scrape GCP Cloud Metrics, and transform them into an OpenTelemetry compatible format for pipeline processing. (#33762)
    • Implements client connection to Google Cloud Monitoring API.
    • Scrapes timeseries data based on configured metrics.
    • Converts the data into OpenTelemetry format for use in the pipeline.

v0.108.0

27 Aug 21:13
v0.108.0
3a3b701
Compare
Choose a tag to compare

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.

End User Changelog

🛑 Breaking changes 🛑

  • all: Added support for go1.23, bumped the minimum version to 1.22 (#34658)

  • lokiexporter: Update the scope name for telemetry produced by the lokiexporter from otelcol/loki to github.com/open-telemetry/opentelemetry-collector-contrib/exporter/lokiexporter (#34612)

  • azuretranslator: The scope name has been updated from otelcol/azureresourcelogs and otelcol/azureresourcetraces to github.com/open-telemetry/opentelemetry-collector-contrib/pkg/translator/azure (#34712)

  • datadogreceiver: The scope name has been updated from otelcol/datadogreceiver to github.com/open-telemetry/opentelemetry-collector-contrib/receiver/datadogreceiver/internal/translator (#34711)

  • splunkhecexporter: The scope name has been updated from otelcol/splunkhec to github.com/open-telemetry/opentelemetry-collector-contrib/exporter/splunkhecexporter (#34710)

  • googlecloudmonitorreceiver: The scope name has been updated from otelcol/googlecloudmonitoringreceiver to github.com/open-telemetry/opentelemetry-collector-contrib/receiver/googlecloudmonitoringreceiver (#34709)

  • elasticsearchexporter: Update OTel mapping mode for logs and metrics; Remove trace_flags (#34472)
    Update logs and metrics OTel mapping mode to always emit "scope" and zero int, but not emit empty strings for known fields. Breaking change to remove trace_flags from logs.

  • elasticsearchexporter: Change default retry.retry_on_status to [429] (#32584)
    To retain the previous behavior, set retry.retry_on_status to [429, 500, 502, 503, 504].

  • gitproviderreceiver: Update metric names and attributes to match the newest Semantic Conventions for VCS. (#34278)
    Attribute Changes:

    • branch.name is now ref.name
    • Added a ref.type attribute
    • pull_request.state is now change.state
    • git.vendor.name is now vcs.vendor.name
      Metric Changes:
    • git.repository.count is now vcs.repository.count
    • git.repository.contributor.count is now vcs.repository.contributor.count
    • git.repository.branch.count is now vcs.repository.ref.count
    • git.repository.branch.time is now `vcs.repository.ref.time
    • git.repository.branch.commit.aheadby.count is now vcs.repository.ref.revisions_ahead
    • git.repository.branch.commit.behindby.count is now `vcs.repository.ref.revisions_behind
    • git.repository.branch.line.addition.count is now vcs.repository.ref.lines_added
    • git.repository.branch.line.deletion.count is now vcs.repository.ref.lines_deleted
    • git.repository.pull_request.time_open is now vcs.change.time_open
    • git.repository.pull_request.time_to_merge is now vcs.change.time_to_merge
    • git.repository.pull_request.time_to_approval is now vcs.change.time_to_approval
    • git.repository.pull_request.count is now vcs.change.count
  • transformprocessor: Promote processor.transform.ConvertBetweenSumAndGaugeMetricContext feature flag from alpha to beta (#34567)

  • exporter/datadog: The logs::dump_payloads config option is invalid when the Datadog Agent logs pipeline is enabled (now enabled by default). (#34420)
    An error will be raised if logs::dump_payloads is set while the Datadog Agent logs pipeline is enabled. To avoid this error, remove the logs::dump_payloads config option or temporarily disable the exporter.datadogexporter.UseLogsAgentExporter feature gate.

  • vcenterreceiver: Several host performance metrics now return 1 data point per time series instead of 5. (#34708)
    The 5 data points previously sent represented consecutive 20s sampling periods. Depending on the collection interval
    these could easily overlap. Sending just the latest of these data points is more in line with other performance metrics.

    This change also fixes an issue with the googlecloud exporter seeing these datapoints as duplicates.

    Following is the list of affected metrics which will now only report a single datapoint per set of unique attribute values.

    • vcenter.host.cpu.reserved
    • vcenter.host.disk.latency.avg
    • vcenter.host.disk.latency.max
    • vcenter.host.disk.throughput
    • vcenter.host.network.packet.drop.rate
    • vcenter.host.network.packet.error.rate
    • vcenter.host.network.packet.rate
    • vcenter.host.network.throughput
    • vcenter.host.network.usage

🚀 New components 🚀

  • exporter/doris: Add a new component for exporting logs, traces and metrics to Doris (#33479)

💡 Enhancements 💡

  • geoipprocessor: Add a context configuration option to specify the IP address attribute telemetry location. (#34036)
  • awss3receiver: Enhance the logging of the AWS S3 Receiver in normal operation to make it easier for user to debug what is happening. (#30750)
  • datadogreceiver: Implement '/info' endpoint (#34772)
  • datadogreceiver: Add sampling.priority attribute for Probabilistic Sampling Processor (#34267)
  • datadogreceiver: Implement '/stats' endpoint (#34790)
  • datadogconnector: Add a config traces::bucket_interval (#34554)
    traces::bucket_interval specifies the time interval size of aggregation buckets that aggregate the Datadog trace metrics. It is also the time interval that Datadog trace metrics payloads are flushed to the pipeline. Default is 10s if unset.
  • deltatocumulative: Promote to alpha stability (#34747)
    promotes the deltatocumulative processor to alpha stability, as most features are now implemented and ready for wider testing.
  • deltatocumulative: explicit-bounds histograms (#30705)
    implements aggregation of explicit-bounds (traditional) histograms.
  • elasticsearchexporter: Add OTel mapping mode for metrics (#34248)
  • elasticsearchexporter: Add OTel mapping mode for traces (#34588, #34590)
    Add OTel mapping mode support for traces, without span events.
  • filelogreceiver: If acquire_fs_lock is true, attempt to acquire a shared lock before reading a file. (#34801)
    Unix only. If a lock cannot be acquired then the file will be ignored until the next poll cycle.
  • solacereceiver: Updated the format for generated metrics. Included a receiver_name attribute that identifies the Solace receiver that generated the metrics (#34541)
  • geoipprocessor: Move processor's stability to alpha. (#34737)
  • prometheusreceiver: Ensure Target Allocator's confighttp is used in the receiver's service discovery (#33370)
  • datadogreceiver: Include error when logging unmarshaling failures in Datadog receiver. (#34515)
  • metricstransformprocessor: Add scaling exponential histogram support (#29803)
  • exporter/datadog: Use Datadog Agent logs pipeline by default for exporting logs to Datadog. Upgrades exporter.datadogexporter.UseLogsAgentExporter feature flag to beta. (#34420)
  • pkg/ottl: Introduce UserAgent converter to parse UserAgent strings (#32434)

🧰 Bug fixes 🧰

  • tailsamplingprocessor: Update the policy value in metrics dimension value to be unique across multiple tail sampling components with the same policy name. (#34192)
    This change ensures that the policy value in the metrics exported by the tail sampling processor is unique across multiple tail sampling processors with the same policy name.

  • datadogreceiver: add feature discovery (#34718)

  • datadogconnector: Put back the otelcol_ prefix for Datadog internal metrics on trace and APM stats exporting (#34807)
    Recovers these metrics from an upstream breaking change. See open-telemetry/opentelemetry-collector#9759 and open-telemetry/opentelemetry-collector#10940.

  • datadogexporter: Put back the otelcol_ prefix for Datadog internal metrics on trace and APM stats exporting (#34807)
    Recovers these metrics from an upstream breaking change. See open-telemetry/opentelemetry-collector#9759 and open-telemetry/opentelemetry-collector#10940.

  • awsfirehosereceiver: Fix validation of requests with empty access key (fixes CVE-2024-45043 / GHSA-prf6-xjxh-p698) (#34847)

  • connector/exceptionsconnector: Fix dimensions configuration did not take effect for resource attributes (#34603)

  • prometheusreceiver: Group scraped metrics into resources created from job and instance label pairs (#34237)
    The receiver will now create a resource for each distinct job/instance label combination.
    In addition to the label/instance pairs detected from the scraped metrics, a resource representing the overall
    scrape configuration will be created. This additional resource will contain the scrape metrics, such as the number of scraped metrics, the scrape duration, etc.

  • cmd/opampsupervisor: Fix supervisor support for Windows. (#34570)

  • tailsamplingprocessor: Fix the behavior for numeric tag filters with inverse_match set to true. (#34296)

  • pkg/stanza: fix nil value conversion (#34672)

  • k8sclusterreceiver: Lower the log level of a message indicating a cache miss from WARN to DEBUG. (#34817)

API Changelog

🛑 Breaking changes 🛑

  • pkg/stanza/operator/input/windows: Change type name from EvtRpcLogin to EvtRPCLogin. (#34656)

v0.107.0

13 Aug 05:02
v0.107.0
23d56ed
Compare
Choose a tag to compare

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.

End User Changelog

v0.107.0

This release fixes CVE-2024-42368 on the bearerauthtokenextension (#34516)

🛑 Breaking changes 🛑

  • clickhouseexporter: Add compress option to ClickHouse exporter, with default value of lz4 (#34365)
    This change adds a new compress option to the config field and enables it by default.
    Prior to this change, compression was not enabled by default.
    The only way to enable compression prior to this change was via the DSN URL.
    With this change, lz4 compression will be enabled by default.
    The list of valid options is provided by the underlying clickhouse-go driver.
    While this change is marked as breaking, there should be no effect to existing deployments by enabling compression.
    Compression should improve network performance on most deployments that have a remote ClickHouse server.

  • Update the scope name for telemetry produce by components. The following table summarizes the changes:

Component name Previous scope New scope PR number
azureeventhubreceiver otelcol/azureeventhubreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/azureeventhubreceiver #34611
cloudfoundryreceiver otelcol/cloudfoundry github.com/open-telemetry/opentelemetry-collector-contrib/receiver/cloudfoundryreceiver #34612
cloudflarereceiver otelcol/cloudflare github.com/open-telemetry/opentelemetry-collector-contrib/receiver/cloudflarereceiver #34613
azuremonitorreceiver otelcol/azuremonitorreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/azuremonitorreceiver #34618
fileconsumer otelcol/fileconsumer github.com/open-telemetry/opentelemetry-collector-contrib/pkg/stanza/fileconsumer #34619
loadbalancingexporter otelcol/loadbalancing github.com/open-telemetry/opentelemetry-collector-contrib/exporter/loadbalancingexporter #34429
sumologicexporter otelcol/sumologic github.com/open-telemetry/opentelemetry-collector-contrib/exporter/sumologicexporter #34438
prometheusremotewriteexporter otelcol/prometheusremotewrite github.com/open-telemetry/opentelemetry-collector-contrib/exporter/prometheusremotewriteexporter #34440
activedirectorydsreceiver otelcol/activedirectorydsreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/activedirectorydsreceiver #34492
aerospikereceiver otelcol/aerospikereceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/aerospikereceiver #34518
apachereceiver otelcol/apachereceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/apachereceiver #34517
apachesparkreceiver otelcol/apachesparkreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/apachesparkreceiver #34519
bigipreceiver otelcol/bigipreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/bigipreceiver #34520
chronyreceiver otelcol/chronyreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/chronyreceiver #34524
couchdbreceiver otelcol/couchdbreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/couchdbreceiver #34525
countconnector otelcol/countconnector github.com/open-telemetry/opentelemetry-collector-contrib/connector/countconnector #34583
deltatocumulativeprocessor otelcol/deltatocumulative github.com/open-telemetry/opentelemetry-collector-contrib/processor/deltatocumulativeprocessor #34550
dockerstatsreceiver otelcol/dockerstatsreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/dockerstatsreceiver #34528
elasticsearchreceiver otelcol/elasticsearchreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/elasticsearchreceiver #34529
expvarreceiver otelcol/expvarreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/expvarreceiver #34530
filestatsreceiver otelcol/filestatsreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/filestatsreceiver #34429
filterprocessor otelcol/filter github.com/open-telemetry/opentelemetry-collector-contrib/processor/filterprocessor #34550
flinkmetricsreceiver otelcol/flinkmetricsreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/flinkmetricsreceiver #34533
fluentforwardreceiver otelcol/fluentforwardreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/fluentforwardreceiver #34534
gitproviderreceiver otelcol/gitproviderreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/gitproviderreceiver #34496
googlespannerreceiver otelcol/googlecloudspannermetrics github.com/open-telemetry/opentelemetry-collector-contrib/receiver/googlespannerreceiver #34593
grafanacloudconnector otelcol/grafanacloud github.com/open-telemetry/opentelemetry-collector-contrib/connector/grafanacloudconnector #34552
groupbyattrsprocessor otelcol/groupbyattrs github.com/open-telemetry/opentelemetry-collector-contrib/processor/groupbyattrsprocessor #34550
groupbytraceprocessor otelcol/groupbytrace github.com/open-telemetry/opentelemetry-collector-contrib/processor/groupbytraceprocessor #34550
haproxyreceiver otelcol/haproxyreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/haproxyreceiver #34498
hostmetricsreceiver receiver's scrapers otelcol/hostmetricsreceiver/* github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver/internal/scraper/* #34526
httpcheckreceiver otelcol/httpcheckreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/httpcheckreceiver #34497
iisreceiver otelcol/iisreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/iisreceiver #34535
k8sattributesprocessor otelcol/k8sattributes github.com/open-telemetry/opentelemetry-collector-contrib/processor/k8sattributesprocessor #34550
k8sclusterreceiver otelcol/k8sclusterreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/k8sclusterreceiver #34536
kafkametricsreceiver otelcol/kafkametricsreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/kafkametricsreceiver #34538
kafkareceiver otelcol/kafkareceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/kafkareceiver #34539
kubeletstatsreceiver otelcol/kubeletstatsreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/kubeletstatsreceiver #34537
memcachedreceiver otelcol/memcachedreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/memcachedreceiver #34542
mongodbatlasreceiver otelcol/mongodbatlasreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/mongodbatlasreceiver #34543
mongodbreceiver otelcol/mongodbreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/mongodbreceiver #34544
mysqlreceiver otelcol/mysqlreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/mysqlreceiver #34545
nginxreceiver otelcol/nginxreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/nginxreceiver #34493
nsxtreceiver otelcol/nsxtreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/nsxtreceiver #34429
oracledbreceiver otelcol/oracledbreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/oracledbreceiver #34491
otelarrowreceiver otelcol/otelarrowreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/otelarrowreceiver #34546
podmanreceiver otelcol/podmanreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/podmanreceiver #34429
postgresqlreceiver otelcol/postgresqlreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/postgresqlreceiver #34476
probabilisticsamplerprocessor otelcol/probabilisticsampler github.com/open-telemetry/opentelemetry-collector-contrib/processor/probabilisticsamplerprocessor #34550
prometheusreceiver otelcol/prometheusreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/prometheusreceiver #34589
rabbitmqreceiver otelcol/rabbitmqreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/rabbitmqreceiver #34475
sshcheckreceiver otelcol/sshcheckreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/sshcheckreceiver #34448
vcenterreceiver otelcol/vcenter github.com/open-telemetry/opentelemetry-collector-contrib/receiver/vcenterreceiver #34449
zookeeperreceiver otelcol/zookeeper github.com/open-telemetry/opentelemetry-collector-contrib/receiver/zookeeperreceiver #34450
redisreceiver otelcol/redisreceiver github.com/open-telemetry/opentelemetry-collector-contrib/receiver/redisreceiver #34470
riakreceiver otelcol/riakreceiver `github.com/open-telemetry/opentelemetry-collector-contrib/receiver/riakreceiv...
Read more

v0.106.1

31 Jul 13:14
v0.106.1
67e9293
Compare
Choose a tag to compare

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.

End User Changelog

v0.106.1

🧰 Bug fixes 🧰

v0.106.0

30 Jul 01:48
v0.106.0
5914351
Compare
Choose a tag to compare

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.

End User Changelog

v0.106.0

🛑 Breaking changes 🛑

  • vcenterreceiver: Enables various vCenter metrics that were disabled by default until v0.106.0 (#33607)
    The following metrics will be enabled by default "vcenter.datacenter.cluster.count", "vcenter.datacenter.vm.count", "vcenter.datacenter.datastore.count",
    "vcenter.datacenter.host.count", "vcenter.datacenter.disk.space", "vcenter.datacenter.cpu.limit", "vcenter.datacenter.memory.limit",
    "vcenter.resource_pool.memory.swapped", "vcenter.resource_pool.memory.ballooned", and "vcenter.resource_pool.memory.granted". The
    "resourcePoolMemoryUsageAttribute" has also been bumped up to release v.0.107.0

  • googlemanagedprometheusexporter: Fix typo in exporter.googlemanagedpromethues.intToDouble feature gate (#34232)

🚩 Deprecations 🚩

  • k8sattributesprocessor: Deprecate extract.annotations.regex and extract.labels.regex config fields in favor of the ExtractPatterns function in the transform processor. The FieldExtractConfig.Regex parameter will be removed in version v0.111.0. (#25128)
    Deprecating of FieldExtractConfig.Regex parameter means that it is recommended to use the ExtractPatterns function from the transform processor instead. To convert your current configuration please check the ExtractPatterns function documentation. You should use the pattern parameter of ExtractPatterns instead of using the FieldExtractConfig.Regex parameter.

🚀 New components 🚀

  • otlpjsonconnector: New component that will allow extracting otlpjson data from incoming Logs. (#34239, #34208)
  • redis_storage: Adds a new storage extension using Redis to store data in transit (#31682)

💡 Enhancements 💡

  • processor/transform: Add scale_metric function that scales all data points in a metric. (#16214)

  • vcenterreceiver: Adds vCenter vSAN host metrics. (#33556)
    Introduces the following vSAN host metrics to the vCenter receiver:

    • vcenter.host.vsan.throughput
    • vcenter.host.vsan.iops
    • vcenter.host.vsan.congestions
    • vcenter.host.vsan.cache.hit_rate
    • vcenter.host.vsan.latency.avg
  • transformprocessor: Support aggregating metrics based on their attributes. (#16224)

  • metricstransformprocessor: Adds the 'median' aggregation type to the Metrics Transform Processor. Also uses the refactored aggregation business logic from internal/core package. (#16224)

  • telemetrygen: uses the go logging SDK instead of pdata (#18902)

  • elasticsearchexporter: Add explicit bounds histogram support to metrics (#34045)

  • hostmetricsreceiver: allow configuring log pipeline to send host EntityState event (#33927)

  • elasticsearchexporter: Introduce an experimental OTel native mapping mode for logs (#33290)

  • extension/healthcheckv2: Add extension/subcomponent management logic. (#26661)

  • otlpjsonconnector: Add connector's implementations (#34249, #34208)

  • windowsperfcountersreceiver: Improve handling of non-existing instances for Windows Performance Counters (#33815)
    It is an expected that when querying Windows Performance Counters the targeted instances may not be present.
    The receiver will no longer require the use of recreate_query to handle non-existing instances.
    As soon as the instances are available, the receiver will start collecting metrics for them.
    There won't be warning log messages when there are no matches for the configured instances.

  • kafkareceiver: Add settings session_timeout and heartbeat_interval to Kafka Receiver for group management facilities (#28630)

  • otelarrowreceiver, otelarrowexporter: OTel-Arrow internal packages moved into this repository. (#33567)
    New integration testing between otelarrowexporter and otelarrowreceiver.

  • otlpjsonconnector: Move connector's stability to alpha. (#34208, #34253)

  • pkg/ottl: Adds an Format function to OTTL that calls fmt.Sprintf (#33405)

  • vcenterreceiver: Adds a number of default disabled vSAN metrics for Clusters. (#33556)

  • vcenterreceiver: Adds a number of default disabled vSAN metrics for Virtual Machines. (#33556)

🧰 Bug fixes 🧰

  • clickhouseexporter: Increase the default number of queue consumers to 10 (#34176)
  • opencensusreceiver: Do not report an error into resource status during receiver shutdown when the listener connection was closed. (#33865)
  • datadogconnector: Produce stats for non-root client and producer spans when connector.datadogconnector.NativeIngest and compute_top_level_by_span_kind are enabled (#34197)
    You should have only run into this bug when ALL the conditions below are met
    1. feature gate connector.datadogconnector.NativeIngest is enabled
    2. config compute_top_level_by_span_kind is set to true
    3. config compute_stats_by_span_kind is unset or set to false
    4. you have child spans with client or producer span kind
  • datadogconnector: Respect _dd.measured when connector.datadogconnector.NativeIngest is enabled (#34197)
    Spans with attribute _dd.measured set to 1 will always get Datadog APM stats
  • deltatocumulativeprocessor: fix bucket counts when downscaling exp histograms with odd offsets (#33831)
  • otelarrowreceiver: Fix potential goroutine leak when in stream-shutdown. (#34236)
  • otelarrowreceiver: Eliminate one spurious span error. (#34175)
  • pkg/ottl: Handle JSON array provided to ParseJSON function (#33535)
  • exporter/datadog: Fixes a bug where otelcol_exporter_sent_log_records was reporting double as many logs sent when using the logs agent feature gate. (#33887)
  • statsdeceiver: Log only non-EOF errors when reading payload received via TCP. (#33951)
  • vcenterreceiver: Adds destroys to the ContainerViews in the client. (#34254)
    This may not be necessary, but it should be better practice than not.

v0.105.0

16 Jul 21:48
d6be16b
Compare
Choose a tag to compare

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.

End User Changelog

v0.105.0

🛑 Breaking changes 🛑

  • skywalkingexporter: Remove unmaintained component (#23796)
  • elasticsearchexporter: Make "dedup" option no-op, always de-duplicate. (#33773)
    Elasticsearch does not permit duplicate keys in JSON objects, so there is no value in being able to configure deduplication.
  • elasticsearchexporter: Remove defunct "file" and "fields" configuration settings. (#33803)
    This is a breaking change only because removing the attributes would prevent collector startup if those attributes are specified, but otherwise there is no functional change. These configuration attributes have never done anything.
  • stanza: errors from Operator.Process are returned instead of silently ignored. (#33783)
    This public function is affected: https://pkg.go.dev/github.com/open-telemetry/opentelemetry-collector-contrib/pkg/stanza@v0.104.0/operator/helper#WriterOperator.Write
  • vcenterreceiver: Enables various vCenter metrics that were disabled by default until v0.105 (#34022)
    The following metrics will be enabled by default "vcenter.host.network.packet.drop.rate",
    "vcenter.vm.cpu.readiness", "vcenter.host.cpu.capacity", and "vcenter.host.cpu.reserved".

🚩 Deprecations 🚩

  • lokiexporter: Deprecate component (#33916)

🚀 New components 🚀

  • sumconnector: creates a wireframe and initial pr to develop from (#32669)
  • extensions/observer/cfgardenobserver: Add a new observer that discovers containers through the Garden API (#33618)

💡 Enhancements 💡

  • pkg/ottl: Added Hex() converter function (#31929)

  • pkg/ottl: Add IsRootSpan() converter function. (#32918)
    Converter IsRootSpan() returns true if the span in the corresponding context is root, that means its parent_span_id equals to hexadecimal representation of zero. In all other scenarios function returns false.

  • vcenterreceiver: Adds additional vCenter resource pool metrics and a memory_usage_type attribute for vcenter.resource_pool.memory.usage metric to use. (#33607)
    Added "vcenter.resource_pool.memory.swapped", "vcenter.resource_pool.memory.ballooned", and "vcenter.resource_pool.memory.granted"
    metrics. Also added an additional attribute, "memory_usage_type" for "vcenter.resource_pool.memory.usage" metric, which is
    currently under a feature gate.

  • kubeletstatsreceiver: Add k8s.pod.memory.node.utilization and k8s.container.memory.node.utilization metrics (#33591)

  • vcenterreceiver: Adds vCenter metrics at the datacenter level. (#33607)
    Introduces various datacenter metrics which work by aggregating stats from datastores, clusters, hosts, and VM's.

  • processor/resource, processor/attributes: Add an option to extract value from a client address by specifying client.address value in the from_context field. (#34051)

  • awss3receiver: Add support for retrieving logs and metrics to the AWS S3 Receiver. (#30750)

  • receiver/azuremonitorreceiver: Add support for Managed Identity and Default Credential auth (#31268, #33584)

  • azuremonitorreceiver: Add maximum_number_of_records_per_resource config parameter in order to overwrite default (#32165)

  • clickhouseexporter: Upgrading stability for logs to beta (#33615)
    The logs exporter has been proven to be stable for large scale production deployments.
    Configuration options specific to logs are unlikely to change.

  • cloudfoundryreceiver: Add support to receive CloudFoundry Logs (#32671)

  • datadogreceiver: Add support for metrics in Datadog receiver (#18278)

  • datadogexporter: Add a feature gate exporter.datadogexporter.TraceExportUseCustomHTTPClient that allows a custom HTTP client to be used in trace export (#34025)
    This is an experimental feature. By default the feature gate is disabled and trace export uses a default HTTP client.

  • elasticsearchexporter: Introduce experimental telemetry.log_request_body and telemetry.log_response_body config (#33854)

  • cmd/opampsupervisor: Adds support for forwarding custom messages to/from the agent (#33575)

  • geoipprocessor: Add providers configuration and maxmind provider factory (#33269)

  • healthcheckv2extension: Add partial gRPC service implementation to healthcheckv2. (#26661)

  • healthcheckv2extension: Add support for streaming Watch RPC to healthcheckv2 gRPC service. (#26661)

  • healthcheckv2extension: Add HTTP service to healthcheckv2 (#26661)

  • splunkhecexporter: Increase the performance of JSON marshaling (#34011)

  • pkg/stanza: Add parse_ints config in json parser to support parsing int or float properly (#33696)

  • loadbalancingexporter: Adds a new streamID routingKey, which will route based on the datapoint ID. See updated README for details (#32513)

  • awsxrayexporter: Allow multiple log group names/arns to be set in environmental variables (#33795)

  • dockerobserver: Add hint to error when using float for api_version field (#34043)

  • dockerstatsreceiver: Add hint to error when using float for api_version field (#34043)

  • pkg/ottl: Emit traces for statement sequence executions to troubleshoot OTTL statements/conditions (#33433)

  • pkg/stanza: Bump 'logs.jsonParserArray' and 'logs.assignKeys' feature gates to beta. (#33948)
    This enables the feature gates by default to allow use of the
    json_array_parser and assign_keys operations.

  • receiver/filelog: Add filelog.container.removeOriginalTimeField feature-flag for removing original time field (#33946)

  • statsdreceiver: Allow configuring summary percentiles (#33701)

  • pkg/stanza: Switch to faster json parser lib for container operator (#33929)

  • telemetrygen: telemetrygen --rate flag changed from Int64 to Float64 (#33984)

  • extension/opamp: Rely on the Collector APIs to do config redaction (#34078)
    Previously all config fields had to be redacted, now configopaque.String is used to determine
    which fields should be redacted. As a result, fields that are not sensitive are no longer redacted.

  • azuremonitorreceiver: Upgrade stability to alpha (#33689)

  • windowsperfcountersreceiver: windowsperfcountersreceiver now appends an index number to additional instance names that share a name. An example of this is when scraping 
rocess(*) counters with multiple running instances of the same executable. (#32319)
    NOTES

    • This change can expose cardinality issues where the counters were previously collapsed under the non-indexed instance name.
    • The change mimics Windows Performance Monitor behavior: The first instance name remains unchanged, additional instances are suffixed with #<N> where N=1 and is increased for each duplicate.
      • e.g. Given 3 powershell instances, this will return powershell, powershell#1 and powershell#2.

🧰 Bug fixes 🧰

  • servicegraphconnector: Fix failed label does not work leads to servicegraph metrics error (#32018)
  • apachesparkreceiver: Updating the stability to reflect that the component is shipped as part of contrib. (#33906)
  • azureblobreceiver: Updating the stability to reflect that the component is shipped as part of contrib. (#33902)
  • countconnector: Updating the stability to reflect that the component is shipped as part of contrib. (#33903)
  • deltatorateprocessor: Updating the stability to reflect that the component is shipped as part of contrib. (#33904)
  • httpcheckreceiver: Updating the stability to reflect that the component is shipped as part of contrib. (#33897)
  • metricsgenerationprocessor: Updating the stability to reflect that the component is shipped as part of contrib. (#33905)
  • podmanreceiver: Updating the stability to reflect that the component is shipped as part of contrib. (#33899)
  • purefareceiver: Updating the stability to reflect that the component is shipped as part of contrib. (#33901)
  • purefbreceiver: Updating the stability to reflect that the component is shipped as part of contrib. (#33900)
  • zookeeperreceiver: Updating the stability to reflect that the component is shipped as part of contrib. (#33898)
  • probabilisticsamplerprocessor: Fix bug where log sampling was being reported by the counter otelcol_processor_probabilistic_sampler_count_traces_sampled (#33874)
  • cmd/telemetrygen: Fix make docker-telemetrygen command. (#33989)
  • processor/groupbyattrsprocessor: Fix dropping of metadata fields when processing metrics. (#33419)
  • testbed: Fixes incorrect count for sent data items in load generator. (#34057)
  • prometheusreceiver: Fix hash computation to include non exported fields like regex in scrape configuration for TargetAllocator (#29313)
  • datadogexporter: Exit when API key validation fails and api::fail_on_invalid_key is set to true. (#33935)
  • kafkametricsreceiver: Fix issue with incorrect consumer offset (#33309)
  • sqlserverreceiver: Enable default metrics to properly trigger SQL Server scrape (#34065)
  • syslogreceiver: Allow to define max_octets for octet counting RFC5424 syslog parser (#33182)
  • windowsperfcountersreceiver: Metric definitions with no matching performance counter are no longer included as metrics with zero datapoints in the scrape output. (#4972)

Go API Changelog

No changes.

v0.104.0

01 Jul 23:16
v0.104.0
38f97b6
Compare
Choose a tag to compare

The OpenTelemetry Collector Contrib contains everything in the opentelemetry-collector release, be sure to check the release notes there as well.

⚠️ The Core repository's release includes 2 very important breaking changes.

  1. The otlpreceiver now uses localhost by default instead of 0.0.0.0. This may break the receiver in containerized environments like Kubernetes. If you depend on 0.0.0.0 disable the component.UseLocalHostAsDefaultHost feature gate or explicitly set the endpoint to 0.0.0.0. This change also affects contrib components which are listed in the release notes below.
  2. Expansion of BASH-style environment variables, such as $FOO is no longer supported by default. If you depend on this syntax, disable the confmap.unifyEnvVarExpansion feature gate, but know that the feature will be removed in the future in favor of ${env:FOO}.

End User Changelog

🛑 Breaking changes 🛑

  • sumologicexporter: removed compress_encoding (#33604)

  • exporter/clickhouse: Change behavior of how default database is read from the config (#33693)
    Changed the default database to default.
    The final database will prioritize endpoint, unless database is set to a value not equal to default.
    If neither are specified then it defaults to the default database.
    Possible breaking change if someone has the DSN configured in combination with database config option.

  • exporter/clickhouse: Add async_insert config option to enable inserting asynchronously by default. (#33614)
    Adds async_insert config option to enable inserting asynchronously by default.
    To preserve the previous behavior, set async_insert to false in your config.
    When enabled, the exporter will insert asynchronously, which can improve performance for high-throughput deployments.
    The async_insert option can be set to true or false to enable or disable async inserts, respectively. The default value is true.
    Keep in mind this setting is added since the exporter now sets it to default.
    Async insert and its related settings can still be defined in endpoint and connection_params, which take priority over the new config option.

  • clickhouseexporter: Add AggregationTemporality column to histogram and exponential histogram tables. Rename AggTemp column to AggregationTemporality in sum table. (#33424)
    It's a breaking change. users who upgrade to the latest version need to alter the Clickhouse table:

    ALTER TABLE otel_metrics_exponential_histogram ADD COLUMN AggregationTemporality Int32 CODEC(ZSTD(1));
    ALTER TABLE otel_metrics_histogram ADD COLUMN AggregationTemporality Int32 CODEC(ZSTD(1));
    ALTER TABLE otel_metrics_sum RENAME COLUMN AggTemp TO AggregationTemporality;
  • exporter/clickhouse: Remove deprecated ttl_days config option, use ttl instead. (#33648)

  • vcenterreceiver: Drops support for vCenter 6.7 (#33607)

  • all: Promote component.UseLocalHostAsDefaultHost feature gate to beta. This changes default endpoints from 0.0.0.0 to localhost (#30702)
    This change affects the following components:

    • extension/awsproxy
    • extension/health_check
    • extension/health_checkv2
    • extension/jaegerremotesampling
    • internal/aws/proxy
    • processor/remotetap
    • receiver/awsfirehose
    • receiver/awsxray
    • receiver/influxdb
    • receiver/jaeger
    • receiver/loki
    • receiver/opencensus
    • receiver/sapm
    • receiver/signalfx
    • receiver/skywalking
    • receiver/splunk_hec
    • receiver/zipkin
    • receiver/zookeeper
  • receiver/mongodb: Graduate receiver.mongodb.removeDatabaseAttr feature gate to stable (#24972)

🚩 Deprecations 🚩

  • exporter/elasticsearch: Deprecate the "dedot" configuration. (#33772)
    dedot has been deprecated, and will always be enabled in ECS mode and disabled for other modes in future
  • exporter/elasticsearch: Deprecate the "dedup" configuration. (#33773)
    dedup has been deprecated, and will always be enabled in future.

🚀 New components 🚀

  • otelarrow: OTel-Arrow exporter and receiver are marked alpha, added to otelcontribcol (#26491)

💡 Enhancements 💡

  • exporter/elasticsearch: Add initial support for metrics (#33513)

  • elasticsearchexporter: Add translation for k8s.deployment.name resource attribute (#33622)

  • k8sattributesprocessor: Add support for exposing k8s.pod.ip as a resource attribute (#32960)

  • geoipprocessor: Add MaxMind geoip provider for GeoIP2-City and GeoLite2-City databases. (#32663)

  • vcenterreceiver: Adds vCenter CPU readiness metric for VMs. (#33607)

  • awsemfexporter: AWS EMF Exporter to add AppSignals metadata flag into the user-agent (#32998)

  • receiver/mongodb: Ensure support of 6.0 and 7.0 MongoDB versions with integration tests (#32716)

  • sumologicexporter: added timeout validation (#33151)

  • clickhouseexporter: Updated the default logs table to a more optimized schema (#33611)
    Simplified data types, improved partitioning and time range queries.

  • datadogconnector: Add a feature gate connector.datadogconnector.NativeIngest that enables datadog connector to use the new native OTel API in APM stats computation. (#33297)
    The feature gate connector.datadogconnector.NativeIngest is disabled by default.

  • datadogexporter: Adds Kubernetes DD tags to keep when mapping resource attributes (#33728)
    See DataDog/opentelemetry-mapping-go#334 for details.

  • exporter/elasticsearch: Add data stream routing (#33794, #33756)
    data_stream.dataset and data_stream.namespace in attributes will be respected when config *_dynamic_index.enabled is true.

  • exporter/elasticsearch: Encode metrics resource attributes in ECS mapping mode (#33823)

  • elasticsearchexporter: Preserve host.name resource attribute in ECS mode (#33670)

  • servicegraphprocessor: Added a new configuration option enable_virtual_node_label to allow users to identify which node is the virtual node in each edge of the service graph. (#31889)

  • pkg/stanza: Switch JSON parser used by json_parser to github.com/goccy/go-json (#33784)

  • k8sobserver: Add support for k8s.ingress endpoint. (#32971)

  • statsdreceiver: Optimize statsdreceiver to reduce object allocations (#33683)

  • routingprocessor: Use mdatagen to define the component's telemetry (#33526)

  • loadbalancerexporter: Refactors how the load balancing exporter splits metrics (#32513)
    All splitting is behaviorally, the same. However, the resource routingID now uses the internal/exp/metrics/identity package to generate the load balancing key, instead of bespoke code. This means that when upgrading to this version your routes for specific metric groupings could change. However, this will be stable and all future metrics will follow the new routing

  • receiver/mongodbreceiver: Add server.address and server.port resource attributes to MongoDB receiver. (#32810, #32350)
    The new resource attributes are added to the MongoDB receiver to distinguish metrics coming from different MongoDB instances.

    • server.address: The address of the MongoDB host, enabled by default.
    • server.port: The port of the MongoDB host, disabled by default.
  • observerextension: Expose host and port in endpoint's environment (#33571)

  • rabbitmqexporter: Promote rabbitmqexporter to alpha. (#33331)

  • pkg/ottl: Add a schema_url field to access the SchemaURL in resources and scopes on all signals (#30229)

  • solacereceiver: Renamed some SemConv fields to support latest semantic conventions for messaging spans (version 1.25.0) (#33499)

  • sqlserverreceiver: Enable more perf counter metrics when directly connecting to SQL Server (#33420)
    This enables the following metrics by default on non Windows-based systems:
    sqlserver.batch.request.rate
    sqlserver.batch.sql_compilation.rate
    sqlserver.batch.sql_recompilation.rate
    sqlserver.page.buffer_cache.hit_ratio
    sqlserver.user.connection.count

  • extension/googleclientauth: Add Google-signed ID token support (#33185)
    Update github.com/GoogleCloudPlatform/opentelemetry-operations-go/extension/googleclientauth to v0.48.0.
    With this update, extension/googleclientauth now supports Google-signed ID token as auth header.

  • vcenterreceiver: Adds vCenter CPU capacity and network drop rate metrics to hosts. (#33607)

🧰 Bug fixes 🧰

  • resourcedetectionprocessor: Fetch CPU info only if related attributes are enabled (#33774)

  • datasetexporter: Upgrade dataset-go to v0.19.0 and fix found issues (#33498, #32533, #33675)
    Upgrade dataset-go library from v0.18.0 to v0.19.0.
    Enable skipped integration test and adjust the test so it is passing again.
    Do not validate configuration, let the framework run the validation.

  • datasetexporter: Upgrade dataset-go to v0.20.0 (#33812)
    Upgrade dataset-go library from v0.19.0 to v0.20.0.
    Make number of outgoing connections configurable.

  • datadogexporter: Fix panics on invalid sized trace & span IDs (#33566)
    See DataDog/opentelemetry-mapping-go#340 for details.

  • datadogexporter: Ignore metric datapoints with no recorded value flag (#33728)
    This flag is not supported by Datadog, so we just ignore these datapoints. See DataDog/opentelemetry-mapping-go#330 for details.

  • tailsamplingprocessor: Fix precedence of inverted match in and policy (#33671)
    Previously if the decision from a policy evaluation was NotSampled or InvertNotSampled it would return a NotSampled decision regardless, effectively downgrading the result.

    This was breaking the documented behaviour that inv...

Read more