Skip to content

Releases: open-telemetry/opentelemetry-collector

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

v1.0.1/v0.92.0

09 Jan 23:24
40c7db8
Compare
Choose a tag to compare

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

End user Changelog

v1.0.1/v0.92.0

πŸ›‘ Breaking changes πŸ›‘

  • exporters/sending_queue: Do not re-enqueue failed batches, rely on the retry_on_failure strategy instead. (#8382)
    The current re-enqueuing behavior is not obvious and cannot be configured. It takes place only for persistent queue
    and only if retry_on_failure::enabled=true even if retry_on_failure is a setting for a different backoff retry
    strategy. This change removes the re-enqueuing behavior. Consider increasing retry_on_failure::max_elapsed_time
    to reduce chances of data loss or set it to 0 to keep retrying until requests succeed.

  • confmap: Make the option WithErrorUnused enabled by default when unmarshaling configuration (#7102)
    The option WithErrorUnused is now enabled by default, and a new option WithIgnoreUnused is introduced to ignore
    errors about unused fields.

  • status: Deprecate ReportComponentStatus in favor of ReportStatus. This new function does not return an error. (#9148)

🚩 Deprecations 🚩

  • connectortest: Deprecate connectortest.New[Metrics|Logs|Traces]Router in favour of connector.New[Metrics|Logs|Traces]Router (#9095)

  • exporterhelper: Deprecate exporterhelper.RetrySettings in favor of configretry.BackOffConfig (#9091)

  • extension/ballast: Deprecate memory_ballast extension. (#8343)
    Use GOMEMLIMIT environment variable instead.

  • connector: Deprecate [Metrics|Logs|Traces]Router in favour of [Metrics|Logs|Traces]RouterAndConsumer (#9095)

πŸ’‘ Enhancements πŸ’‘

  • exporterhelper: Add RetrySettings validation function (#9089)
    Validate that time.Duration, multiplier values in configretry are non-negative, and randomization_factor is between 0 and 1

  • service: Enable telemetry.useOtelForInternalMetrics by updating the flag to beta (#7454)
    The metrics generated should be consistent with the metrics generated
    previously with OpenCensus. Users can disable the behaviour
    by setting --feature-gates -telemetry.useOtelForInternalMetrics at
    collector start.

  • mdatagen: move component from contrib to core (#9172)

  • semconv: Generated Semantic conventions 1.22.0. (#8686)

  • confignet: Add dialer_timeout config option. (#9066)

  • processor/memory_limiter: Update config validation errors (#9059)

    • Fix names of the config fields that are validated in the error messages
    • Move the validation from start to the initialization phrase
  • exporterhelper: Add config Validate for TimeoutSettings (#9104)

🧰 Bug fixes 🧰

  • memorylimiterprocessor: Fixed leaking goroutines from memorylimiterprocessor (#9099)
  • cmd/otelcorecol: Fix the code detecting if the collector is running as a service on Windows. (#7350)
    Removed the NO_WINDOWS_SERVICE environment variable given it is not needed anymore.
  • otlpexporter: remove dependency of otlphttpreceiver on otlpexporter (#6454)

API Changelog

This changelog includes only developer-facing changes.
If you are looking for user-facing changes, check out CHANGELOG.md.

v1.0.1/v0.92.0

πŸ›‘ Breaking changes πŸ›‘

  • otlpexporter: Change Config members names to use Config suffix. (#9091)
  • component: Remove deprecated unused TelemetrySettingsBase (#9145)

🚩 Deprecations 🚩

  • confignet: Deprecates the Dial and Listen functions in favor of DialContext and ListenContext. (#9163)
  • component: Deprecate unnecessary type StatusFunc (#9146)

cmd/builder/v0.92.0

09 Jan 23:24
40c7db8
Compare
Choose a tag to compare