Skip to content

Releases: open-telemetry/opentelemetry-collector

v0.96.0

04 Mar 14:07
v0.96.0
af71d1d
Compare
Choose a tag to compare

Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.96.0

End User Changelog

🛑 Breaking changes 🛑

  • configgrpc: Remove deprecated GRPCClientSettings, GRPCServerSettings, and ServerConfig.ToListenerContext. (#9616)
  • confighttp: Remove deprecated HTTPClientSettings, NewDefaultHTTPClientSettings, and CORSSettings. (#9625)
  • confignet: Removes deprecated NetAddr and TCPAddr (#9614)

💡 Enhancements 💡

  • configtls: Add include_system_ca_certs_pool to configtls, allowing to load system certs and additional custom certs. (#7774)
  • otelcol: Add ConfigProviderSettings to CollectorSettings (#4759)
    This allows passing a custom list of confmap.Providers to otelcol.NewCommand.
  • pdata: Update to OTLP v1.1.0 (#9587)
    Introduces Span and SpanLink flags.
  • confmap: Update mapstructure to use a maintained fork, github.com/go-viper/mapstructure/v2. (#9634)
    See mitchellh/mapstructure#349 for context.

🧰 Bug fixes 🧰

  • configretry: Allow max_elapsed_time to be set to 0 for indefinite retries (#9641)
  • client: Make Metadata.Get thread safe (#9595)

API Changelog

🚩 Deprecations 🚩

  • configgrpc: Deprecates ToServer. Use ToServerContext instead. (#9624)
  • component: deprecate component.ErrNilNextConsumer (#9526)
  • configtls: Rename TLSClientSetting, TLSServerSetting, and TLSSetting based on the naming convention used in other config packages. (#9474)

💡 Enhancements 💡

  • receivertest: add support for metrics in contract checker (#9551)

cmd/builder/v0.96.0

04 Mar 14:07
cmd/builder/v0.96.0
af71d1d
Compare
Choose a tag to compare

v1.2.0/v0.95.0

20 Feb 17:41
v0.95.0
51c31dc
Compare
Choose a tag to compare

Images and binaries here: https://github.com/open-telemetry/opentelemetry-collector-releases/releases/tag/v0.95.0

End User Changelog

🛑 Breaking changes 🛑

  • all: scope name for all generated Meter/Tracer funcs now includes full package name (#9494)

💡 Enhancements 💡

  • confighttp: Adds support for Snappy decompression of HTTP requests. (#7632)
  • configretry: Validate max_elapsed_time, ensure it is larger than max_interval and initial_interval respectively. (#9489)
  • configopaque: Mark module as stable (#9167)
  • otlphttpexporter: Add support for json content encoding when exporting telemetry (#6945)
  • confmap/converter/expandconverter, confmap/provider/envprovider, confmap/provider/fileprovider, confmap/provider/httprovider, confmap/provider/httpsprovider, confmap/provider/yamlprovider: Split confmap.Converter and confmap.Provider implementation packages out of confmap. (#4759, #9460)

API Changelog

🛑 Breaking changes 🛑

  • all: Bump minimum go version to go 1.21 (#9507)
  • service/telemetry: Delete generated_config types, use go.opentelemetry.io/contrib/config types instead (#9546)
  • configcompression: Remove deprecated configcompression types, constants and methods. (#9388)
  • component: Remove host.ReportFatalError (#6344)
  • configgrpc: Remove deprecated configgrpc.ServerConfig.ToListener (#9481)
  • confmap: Remove deprecated confmap.WithErrorUnused (#9484)

🚩 Deprecations 🚩

  • confignet: Deprecate confignet.NetAddr and confignet.TCPAddr in favor of confignet.AddrConfig and confignet.TCPAddrConfig. (#9509)
  • config/configgrpc: Deprecate configgrpc.ClientConfig.SanitizedEndpoint, configgrpc.ServerConfig.ToListener and configgrpc.ServerConfig.ToListenerContext (#9481, #9482)
  • scraperhelper: Deprecate ScraperControllerSettings, use ControllerConfig instead (#6767)

cmd/builder/v0.95.0

20 Feb 17:41
cmd/builder/v0.95.0
51c31dc
Compare
Choose a tag to compare

v0.94.1

07 Feb 23:30
v0.94.1
5ef560b
Compare
Choose a tag to compare

This patch release reverts a dependency update that caused intermittent test failures.

cmd/builder/v0.94.1

07 Feb 23:30
cmd/builder/v0.94.1
5ef560b
Compare
Choose a tag to compare

v1.1.0/v0.94.0

06 Feb 23:40
v0.94.0
ca0eab2
Compare
Choose a tag to compare

End User Changelog

🛑 Breaking changes 🛑

  • receiver/otlp: Update gRPC code from codes.InvalidArgument to codes.Internal when a permanent error doesn't contain a gRPC status (#9415)

🚩 Deprecations 🚩

  • configgrpc: Deprecate GRPCClientSettings, use ClientConfig instead (#6767)

💡 Enhancements 💡

  • mdatagen: Add a generated test that checks the config struct using componenttest.CheckConfigStruct (#9438)

  • component: Add component.UseLocalHostAsDefaultHost feature gate that changes default endpoints from 0.0.0.0 to localhost (#8510)
    The only component in this repository affected by this is the OTLP receiver.

  • confighttp: Add support of Host header (#9395)

  • mdatagen: Remove use of ReportFatalError in generated tests (#9439)

🧰 Bug fixes 🧰

  • service: fix opencensus bridge configuration in periodic readers (#9361)
  • otlpreceiver: Fix goroutine leak when GRPC server is started but HTTP server is unsuccessful (#9165)
  • otlpexporter: PartialSuccess is treated as success, logged as warning. (#9243)

API Changelog

🛑 Breaking changes 🛑

  • confignet: Remove deprecated DialContext and ListenContext functions (#9363)

  • confmap/converter/expandconverter: Add confmap.ConverterSettings argument to experimental expandconverter.New function. (#5615, #9162)

    • The confmap.ConverterSettings struct currently has no fields. It will be used to pass a logger.
  • component: Remove deprecated funcs and types (#9283)

  • otlpexporter: Config struct is moving from embedding the deprecated GRPCClientSettings struct to using ClientConfig instead. (#6767)

  • otlphttpexporter: otlphttpexporter.Config embeds the struct confighttp.ClientConfig instead of confighttp.HTTPClientSettings (#6767)

  • otlpreceiver: HTTPConfig struct is moving from embedding the deprecated ServerSettings struct to using HTTPServerConfig instead. (#6767)

  • component: Validate component.Type at creation and unmarshaling time. (#9208)

    • A component.Type must start with an ASCII alphabetic character and can only contain ASCII alphanumeric characters and '_'.

🚩 Deprecations 🚩

  • configcompressions: Deprecate IsCompressed. Use CompressionType.IsCompressed instead instead. (#9435)
  • configcompression: Deprecate CompressionType, use Type instead. (#9416)
  • confighttp: Deprecate CORSSettings, use CORSConfig instead (#6767)
  • configgrpc: Deprecate ToListener function in favor of ToListenerContext (#9389)
  • configgrpc: Deprecate GRPCServerSettings, use ServerConfig instead (#6767)
  • confighttp: Deprecate HTTPClientSettings, use ClientConfig instead (#6767)
  • confighttp: Deprecate HTTPServerSettings, use ServerConfig instead (#6767)
  • confmap/provider: Deprecate .New in favor of .NewWithSettings for all core providers (#5615, #9162)
    • NewWithSettings now takes an empty confmap.ProviderSettings struct. This will be used to pass a logger in the future.

💡 Enhancements 💡

  • exporter/exporterhelper: Add API for enabling queue in the new exporter helpers. (#7874)
    The following experimental API is introduced in exporter package:

    • exporterhelper.WithRequestQueue: a new exporter helper option for using a queue.
    • exporterqueue.Queue: an interface for queue implementations.
    • exporterqueue.Factory: a queue factory interface, implementations of this interface are intended to be used with WithRequestQueue option.
    • exporterqueue.Settings: queue factory settings.
    • exporterqueue.Config: common configuration for queue implementations.
    • exporterqueue.NewDefaultConfig: a function for creating a default queue configuration.
    • exporterqueue.NewMemoryQueueFactory: a new factory for creating a memory queue.
    • `exporterqueue.NewPersistentQueueFactory: a factory for creating a persistent queue.
  • featuregate: Add the featuregate.ErrAlreadyRegistered error, which is returned by featuregate.Registry's Register when adding a feature gate that is already registered. (#8622)
    Use errors.Is to check for this error.

cmd/builder/v0.94.0

06 Feb 23:40
cmd/builder/v0.94.0
ca0eab2
Compare
Choose a tag to compare

v0.93.0

24 Jan 05:17
v0.93.0
463bb08
Compare
Choose a tag to compare

End user Changelog

🛑 Breaking changes 🛑

  • exporterhelper: remove deprecated exporterhelper.RetrySettings and exporterhelper.NewDefaultRetrySettings (#9256)
  • configopaque: configopaque.String implements fmt.Stringer and fmt.GoStringer, outputting [REDACTED] when formatted with the %s, %q or %#v verbs(#9213) This may break applications that rely on the previous behavior of opaque strings withfmt.Sprintfto e.g. build URLs or headers. Explicitly cast the opaque string to a string before using it infmt.Sprintf` to restore the previous behavior.

🚀 New components 🚀

  • extension/memory_limiter: Introduce a memory_limiter extension which receivers can use to reject incoming requests when collector doesn't have enough memory (#8632)
    The extension has the same configuration interface and behavior as the existing memory_limiter processor, which potentially can be deprecated and removed in the future

💡 Enhancements 💡

  • configtls: add cipher_suites to configtls. (#8105)
    Users can specify a list of cipher suites to pick from. If left blank, a safe default list is used.

  • service: mark telemetry.useOtelForInternalMetrics as stable (#816)

  • exporters: Cleanup log messages for export failures (#9219)

    1. Ensure an error message is logged every time and only once when data is dropped/rejected due to export failure.
    2. Update the wording. Specifically, don't use "dropped" term when an error is reported back to the pipeline.
      Keep the "dropped" wording for failures happened after the enabled queue.
    3. Properly report any error reported by a queue. For example, a persistent storage error must be reported as a storage error, not as "queue overflow".

🧰 Bug fixes 🧰

  • configgrpc: Update dependency to address a potential crash in the grpc instrumentation (#9296)
  • otlpreceiver: Ensure OTLP receiver handles consume errors correctly (#4335)
    Make sure OTLP receiver returns correct status code and follows the receiver contract (gRPC)
  • zpagesextension: Remove mention of rpcz page from zpages extension (#9328)

Go API Changelog

🛑 Breaking changes 🛑

  • bug_fix: Implement encoding.BinaryMarshaler interface to prevent configopaque -> []byte -> string conversions from leaking the value (#9279)

  • configopaque: configopaque.String implements fmt.Stringer and fmt.GoStringer, outputting [REDACTED] when formatted with the %s, %q or %#v verbs(#9213) This may break applications that rely on the previous behavior of opaque strings withfmt.Sprintfto e.g. build URLs or headers. Explicitly cast the opaque string to a string before using it infmt.Sprintf` to restore the previous behavior.

  • all: Remove obsolete "// +build" directives (#9304)

  • connectortest: Remove deprecated connectortest router helpers. (#9278)

🚩 Deprecations 🚩

  • obsreporttest: deprecate test funcs/structs (#8492)
    The following methods/structs have been moved from obsreporttest to componenttest:

    • obsreporttest.TestTelemetry -> componenttest.TestTelemetry
    • obsreporttest.SetupTelemetry -> componenttest.SetupTelemetry
    • obsreporttest.CheckScraperMetrics -> TestTelemetry.CheckScraperMetrics
    • obserporttest.TestTelemetry.TelemetrySettings -> componenttest.TestTelemetry.TelemetrySettings()
  • confignet: Deprecates DialContext and ListenContext functions. Use Dial and Listen instead. (#9258)
    Unlike the previous Dial and Listen functions, the new Dial and Listen functions take a context.Context like DialContext and ListenContext.

cmd/builder/v0.93.0

24 Jan 11:11
cmd/builder/v0.93.0
463bb08
Compare
Choose a tag to compare