Skip to content

Releases: open-telemetry/opentelemetry-collector

v1.26.0/v0.120.0

18 Feb 01:10
v0.120.0
c87bda5
Compare
Choose a tag to compare

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

End User Changelog

πŸ›‘ Breaking changes πŸ›‘

  • all: Added support for go1.24, bumped minimum version to 1.23 (#12370)
  • mdatagen: Removing deprecated generated funcs and a few test funcs as well. (#12304)
  • service: Align component logger attributes with those defined in RFC (#12217)
    See Pipeline Component Telemetry RFC

πŸ’‘ Enhancements πŸ’‘

  • otlpreceiver: Update stability for logs (#12335)
  • exporterhelper: Implement sync disabled queue used when batching is enabled. (#12245)
  • exporterhelper: Enable the new pull-based batcher in exporterhelper (#12291)
  • exporterhelper: Update queue size after the element is done exported (#12399)
    After this change the active queue size will include elements in the process of being exported.
  • otelcol: Add featuregate command to display information about available features (#11998)
    The featuregate command allows users to view detailed information about feature gates
    including their status, stage, and description.

🧰 Bug fixes 🧰

  • memorylimiter: Logger no longer attributes to single signal, pipeline, or component. (#12217)
  • otlpreceiver: Logger no longer attributes to random signal when receiving multiple signals. (#12217)
  • exporterhelper: Fix undefined behavior access to request after send to next component. This causes random memory access. (#12281)
  • exporterhelper: Fix default batcher to correctly call all done callbacks exactly once (#12247)
  • otlpreceiver: Fix OTLP http receiver to correctly set Retry-After (#12367)
  • otlphttpexporter: Fix parsing logic for Retry-After in OTLP http protocol. (#12366)
    The value of Retry-After field can be either an HTTP-date or delay-seconds and the current logic only parsed delay-seconds.
  • cmd/builder: Ensure unique aliases for modules with same suffix (#12201)

API Changelog

πŸ›‘ Breaking changes πŸ›‘

  • configauth: Remove NewDefaultAuthentication (#12223)
    The value returned by this function will always cause an error on startup.
    In configgrpc.Client/ServerConfig.Auth, nil should be used instead to disable authentication.

  • otelcol: Make the ConfigProvider interface a struct (#12297)
    Calls to NewConfigProvider will now return *ConfigProvider,
    but will otherwise work the same as before.

  • extension: Remove extension.Settings.ModuleInfo (#12296)

    • The functionality is now available as an optional, hidden interface on service's implementation of the Host
  • component: Remove deprecated field component.TelemetrySettings.MetricsLevel. (#11061)

  • confighttp: Add ToClientOption type and add it to signature of ToClient method. (#12353)

    • This has no use for now, it may be used in the future.
  • mdatagen: Remove unused not_component config for mdatagen (#12237)

🚩 Deprecations 🚩

  • component/componenttest: Deprecate CheckReceiverMetrics in componenenttest (#12185)
    Use the metadatatest.AssertEqualMetric series of functions instead of obsreporttest.CheckReceiverMetrics
  • component/componenttest: Deprecate CheckReceiverTraces in componenenttest (#12185)
    Use the metadatatest.AssertEqualMetric series of functions instead of obsreporttest.CheckReceiverTraces
  • component: Deprecate ConfigValidator and ValidateConfig (#11524)
    Please use Validator and Validate respectively from xconfmap.
  • receiver, scraper, processor, exporter, extension: Deprecate existing MakeFactoryMap functions in favor of generic implementation (#12222)
  • extension, connector, processor, receiver, exporter, scraper: Deprecate Create* methods from Create*Func types. (#12305)
  • extensiontest, connectortest, processortest, receivertest, exportertest, scrapertest: Deprecate *test.NewNopSettings in favor of *test.NewNopSettingsWithType (#12305)

πŸš€ New components πŸš€

  • xconfmap: Create the xconfmap module and add the Validator interface and Validate function to facilitate config validation (#11524)

πŸ’‘ Enhancements πŸ’‘

  • configgrpc: Add the omitempty mapstructure tag to struct fields (#12191)
    This results in unset fields not being rendered when marshaling.
  • confignet: Add the omitempty mapstructure tag to struct fields (#12191)
    This results in unset fields not being rendered when marshaling.
  • configtls: Add the omitempty mapstructure tag to struct fields (#12191)
    This results in unset fields not being rendered when marshaling.
  • consumer: Clarify that data cannot be accessed after Consume* func is called. (#12284)
  • pdata/pprofile: Introduce aggregation temporality constants (#12253)

🧰 Bug fixes 🧰

  • configgrpc: Apply configured Headers automatically (#12307)
    configgrpc now calls metadata.AppendToOutgoingContext automatically in an interceptor.
    Components that were manually using metadata.NewOutgoingContext as a workaround no longer need to
    do so, unless they are overwriting or adding header keys.

  • configgrpc: Set Auth to nil in NewDefaultClientConfig/NewDefaultServerConfig (#12223)
    The value that was used previously would always cause an error on startup.

  • exporterqueue: Fix async queue to propagate cancellation all they way to the queue (#12282)

  • otlpreceiver: Fix OTLP http receiver to correctly set Retry-After (#12367)

  • extension: Explicitly error out at extension creation time if there is a type mismatch. (#12305)

v1.25.0/v0.119.0

04 Feb 00:45
v0.119.0
1565021
Compare
Choose a tag to compare

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

End User Changelog

πŸ›‘ Breaking changes πŸ›‘

  • exporterhelper: Rename exporter span signal specific attributes (e.g. "sent_spans" / "send_failed_span") to "items.sent" / "items.failed". (#12165)
  • cmd/mdatagen: Remove dead field telemetry::level (#12144)
  • exporterhelper: Change exporter ID to be a Span level attribute instead on each event. (#12164)
    This does not have an impact on the level of information emitted, but on the structure of the Span.
  • cmd/mdatagen: Remove level field from metrics definition (#12145)
    This mechanism will be added back once a new views mechanism is implemented.

πŸ’‘ Enhancements πŸ’‘

  • configtls: Allow users to mention their preferred curve types for ECDHE handshake (#12174)
  • service: remove custom code and instead use config package to instantiate meter provider. (#11611)
  • otelcol: Adds support for listing config providers in components command's output (#11570)
  • general: Reduce memory allocations when loading configuration and parsing component names (#11964)

🧰 Bug fixes 🧰

  • exporterhelper: Fix bug that the exporter with new batcher may have been marked as non mutation. (#12239)
    Only affects users that manually turned on exporter.UsePullingBasedExporterQueueBatcher featuregate.

  • service: Preserve URL normalization logic that was present before. (#12254)

  • confighttp: confighttp.ToServer now sets ErrorLog with a default logger backed by Zap (#11820)

    This change ensures that the http.Server's ErrorLog is correctly set using Zap's logger at the error level, addressing the issue of error logs being printed using a different logger.

  • exporterhelper: Fix context propagation for DisabledBatcher (#12231)

  • mdatagen: apply fieldalignment to generated code (#12125)

  • mdatagen: Fix bug where Histograms were marked as not supporting temporaly aggregation (#12168)

  • exporterhelper: Fix MergeSplit issue that ignores the initial message size. (#12257)

  • service: Include validation errors from telemetry.Config when validating the service config (#12100)
    Previously validation errors were only printed to the console

  • service-telemetry: pass the missing async error channel into service telemetry settings (#11417)

API Changelog

πŸ›‘ Breaking changes πŸ›‘

  • exporterhelper: Change queue to embed the async consumers. (#12242)
  • exporterqueue: Change Queue interface to return a callback instead of an index (#8122)
  • cmd/mdatagen: Allow passing OTel Metric SDK options to the generated SetupTelemetry function. (#12166)
  • exporterhelper: Rename exporter span signal specific attributes (e.g. "sent_spans" / "send_failed_span") to "items.sent" / "items.failed". (#12165)
  • component: Change underlying type for component.Kind to be a struct. (#12214)
  • extension: Change extension.Extension to be an interface that embeds component.Component instead of an alias (#11443)
  • component/componenttest: Remove deprecated CheckScraperMetrics functions (#12183)
  • scraperhelper: Remove deprecated ScrapperControllerOption and NewScraperControllerMetrics from scraperhelper. (#12147)

🚩 Deprecations 🚩

  • metadatatest: Deprecate metadatatest.Telemetry in favor of componenttest.Telemetry (#12218)
    metadatatest.Telemetry -> componenttest.Telemetry |
    metadatatest.SetupTelemetry -> componenttest.NewTelemetry |
    metadatatest.Telemetry.NewSettings -> metadatatest.NewSettings |
    metadatatest.Telemetry.AssertMetrics -> metadatatest.AssertEqual* |

  • component/componenttest: Deprecate CheckExporterEnqueue* functions in componenenttest (#12185)
    Use the metadatatest.AssertEqualMetric series of functions instead of obsreporttest.CheckExporterEnqueue* functions.

  • component/componenttest: Deprecate CheckExporterLogs in componenenttest (#12185)
    Use the metadatatest.AssertEqualMetric series of functions instead of obsreporttest.CheckExporterLogs

  • component/componenttest: Deprecate CheckExporterMetricGauge in componenenttest (#12185)
    Use the metadatatest.AssertEqualMetric series of functions instead of obsreporttest.CheckReceiverMetricGauge

  • component/componenttest: Deprecate CheckExporterMetrics in componenenttest (#12185)
    Use the metadatatest.AssertEqualMetric series of functions instead of obsreporttest.CheckExporterMetrics

  • component/componenttest: Deprecate CheckExporterTraces in componenenttest (#12185)
    Use the metadatatest.AssertEqualMetric series of functions instead of obsreporttest.CheckExporterTraces

  • component/componenttest: Deprecate CheckReceiverLogs in componenenttest (#12185)
    Use the metadatatest.AssertEqualMetric series of functions instead of obsreporttest.CheckReceiverLogs

  • mdatagen: Make registration of callback for async metric always optional. (#12204)
    Deprecate metadata.TelemetryBuilder.Init* and metadata.With*Callback in favor of metadata.TelemetryBuilder.Register*Callback

  • component: Deprecate component.TelemetrySettings.MetricsLevel in favor of using views and 'Enabled' method. (#12159)

    • Components will temporarily need the service to support using views.

πŸ’‘ Enhancements πŸ’‘

  • componenttest: Add helper to get a metric for componentest.Telemetry (#12215)
  • componenttest: Extract componenttest.Telemetry as generic struct for telemetry testing (#12151)
  • mdatagen: Generate assert function for each metric in mdatagen (#12179)
  • metadatatest: Generate NewSettings that accepts componenttest.Telemetry (#12216)
  • pdata/pprofile: Add new helper method FromAttributeIndices to build a pcommon.Map out of AttributeIndices. (#12176)
  • scraper: Support logs scraper (#12116)
  • component: Allow component.ValidateConfig to recurse through all fields in a config object (#11524)
  • component: Show path to invalid config in errors returned from component.ValidateConfig (#12108)

🧰 Bug fixes 🧰

  • mdatagen: All register callbacks to async instruments can now be unregistered by calling metadata.TelemetryBuilder.Shutdown() (#12204)
  • mdatagen: Fix bug where Histograms were marked as not supporting temporaly aggregation (#12168)

v1.24.0/v0.118.0

20 Jan 23:52
v0.118.0
e87797c
Compare
Choose a tag to compare

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

End User Changelog

πŸ’‘ Enhancements πŸ’‘

  • exporterhelper: Add blocking option to control queue behavior when full (#12090)
  • debugexporter: Add EventName to debug exporter for Logs. EventName was added as top-level field in the LogRecord from 1.5.0 of proto definition. (#11966)
  • confighttp: Added support for configuring compression levels. (#10467)
    A new configuration option called CompressionParams has been added to confighttp. | This allows users to configure the compression levels for the confighttp client.
  • exporterhelper: Change the memory queue implementation to not pre-allocate capacity objects. (#12070)
    This change improves memory usage of the collector under low utilization and is a prerequisite for supporting different other size limitations (number of items, bytes).

🧰 Bug fixes 🧰

  • mdatagen: apply fieldalignment to generated code (#12121)
  • otelcoltest: Set DefaultScheme to env in the test ConfigProvider to replicate the default provider used by the Collector. (#12066)

API Changelog

πŸ›‘ Breaking changes πŸ›‘

  • exporterqueue: Change Queue Size and Capacity to return explicit int64. (#12076)
  • receiver/scraperhelper: Removing the deprecated receiver/scraperhelper package (#12054)
  • processorteset: Revert the nop_processor.NewNopSettings change, as it is no longer needed (#11433)
  • experimental/storage: Remove deprecated package/module experimental/storage (#12109)
  • mdatagen: Remove deprecated generated_component_telemetry_test file from being generated and delete it. (#12068)
  • receivertest: Remove deprecated receivertest.NewNopFactoryForType (#12110)

🚩 Deprecations 🚩

  • componenttest: Deprecate CheckScraperMetrics in componenenttest (#12105)
    Use metadatatest.AssertMetrics instead of obsreporttest.CheckScraperMetrics
  • scraperhelper: Deprecate scraperhelper.NewScraperControllerReceiver and scraperhelper.ScraperControllerOption. (#12103)
    Use scraperhelper.NewMetricsController instead of scraperhelper.NewScraperControllerReceiver | Use scraperhelper.ScraperControllerOption instead of scraperhelper.ControllerOption

πŸ’‘ Enhancements πŸ’‘

  • exporterhelper: Add capability for memory and persistent queue to block when add items (#12074)
  • scraper/scraperhelper: Add obs_logs for scraper/scraperhelper (#12036)
    This change adds obs for logs in scraper/scraperhelper, also introduced new metrics for scraping logs.
  • mdatagen: Add scraper component type support to mdatagen (#12092)
  • mdatagen: Add tracing support in metadatatest (#12106)
  • exporterhelper: Change persistent queue to not use sized channel, improve memory usage and simplify sized_channel. (#12060)
  • confighttp: Added support for configuring compression levels. (#10467)
    A new configuration option called CompressionParams has been added to confighttp. | This allows users to configure the compression levels for the confighttp client.

v0.117.0

07 Jan 23:24
v0.117.0
795f727
Compare
Choose a tag to compare

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

End User Changelog

v1.23.0/v0.117.0

πŸ›‘ Breaking changes πŸ›‘

  • otelcol: Remove warnings when 0.0.0.0 is used (#11713, #8510)

🧰 Bug fixes 🧰

  • internal/sharedcomponent: Fixed bug where sharedcomponent would use too much memory remembering all the previously reported statuses (#11826)

API Changelog

v1.23.0/v0.117.0

πŸ›‘ Breaking changes πŸ›‘

  • pdata/pprofile: Remove duplicate Attributes field from profile (#11932)
  • connector: Remove deprecated connectorprofiles module, use xconnector instead. (#11778)
  • consumererror: Remove deprecated consumererrorprofiles module, use xconsumererror instead. (#11778)
  • consumer: Remove deprecated consumerprofiles module, use xconsumer instead. (#11778)
  • exporterhelper: Remove deprecated exporterhelperprofiles module, use xexporterhelper instead. (#11778)
  • exporter: Remove deprecated exporterprofiles module, use xexporter instead. (#11778)
  • pipeline: Remove deprecated pipelineprofiles module, use xpipeline instead. (#11778)
  • processorhelper: Remove deprecated processorhelperprofiles module, use xprocessorhelper instead. (#11778)
  • processor: Remove deprecated processorprofiles module, use xprocessor instead. (#11778)
  • receiver: Remove deprecated receiverprofiles module, use xreceiver instead. (#11778)
  • exporterhelper: Remove Merge function from experimental Request interface (#12012)

🚩 Deprecations 🚩

  • mdatagen: Deprecate component_test in favor of metadatatest (#11812)
  • receivertest: Deprecate receivertest.NewNopFactoryForType (#11993)
  • extension/experimental: Deprecate extension/experimental in favor of extension/xextension (#12010)
  • scraperhelper: Move scraperhelper under scraper and in a separate module. (#11003)

πŸ’‘ Enhancements πŸ’‘

  • scrapertest: Add scrapertest package in a separate module (#11988)
  • pdata: Upgrade pdata to opentelemetry-proto v1.5.0 (#11932)

v0.116.0

16 Dec 21:52
v0.116.0
095b183
Compare
Choose a tag to compare

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

End User Changelog

v1.22.0/v0.116.0

πŸ›‘ Breaking changes πŸ›‘

  • pdata/pprofile: Remove deprecated Profile.EndTime and Profile.SetEndTime methods. (#11796)

πŸ’‘ Enhancements πŸ’‘

  • xconfighttp: Add WithOtelHTTPOptions to experimental module xconfighttp (#11770)

🧰 Bug fixes 🧰

  • exporterhelper: Fix memory leak at exporter shutdown (#11401)
  • sharedcomponent: Remove race-condition and cleanup locking (#11819)

API Changelog

v1.22.0/v0.116.0

πŸ›‘ Breaking changes πŸ›‘

  • component: Remove deprecated TelemetrySettings.LeveledMeterProvider (#11811)
  • scraperhelper: Remove deprecated scraperhelper.Scraper and helpers (#11803)

🚩 Deprecations 🚩

  • connector: Deprecate connectorprofiles module in favor of xconnector to allow adding more experimental data types. (#11778)
  • consumererror: Deprecate consumererrorprofiles module in favor of xconsumererror to allow adding more experimental data types. (#11778)
  • consumer: Deprecate consumerprofiles module in favor of xconsumer to allow adding more experimental data types. (#11778)
  • exporterhelper: Deprecate exporterhelperprofiles module in favor of xexporterhelper to allow adding more experimental data types. (#11778)
  • exporter: Deprecate exporterprofiles module in favor of xexporter to allow adding more experimental data types. (#11778)
  • pipeline: Deprecate pipelineprofiles module in favor of xpipeline to allow adding more experimental data types. (#11778)
  • processorhelper: Deprecate processorhelperprofiles module in favor of xprocessorhelper to allow adding more experimental data types. (#11778)
  • processor: Deprecate processorprofiles module in favor of xprocessor to allow adding more experimental data types. (#11778)
  • receiver: Deprecate receiverprofiles module in favor of xreceiver to allow adding more experimental data types. (#11778)
  • receiver/scrapererror: Remove the receiver/scrapererror alias. (#11003)

πŸ’‘ Enhancements πŸ’‘

  • receiver/scraperhelper: Add scraper for logs (#11238)

v0.115.0

04 Dec 00:41
4ed80bb
Compare
Choose a tag to compare

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

End User Changelog

v1.21.0/v0.115.0

πŸ›‘ Breaking changes πŸ›‘

  • otelcol: Change all logged timestamps to ISO8601. (#10543)
    This makes log timestamps human-readable (as opposed to epoch seconds in
    scientific notation), but may break users trying to parse logged lines in the
    old format.
  • pdata/pprofile: Upgrade pdata to opentelemetry-proto v1.4.0 (#11722)

🚩 Deprecations 🚩

  • scraperhelper: Deprecate all Scraper helpers in scraperhelper (#11732)
    Deprecate ScrapeFunc, ScraperOption, WithStart, WithShutdown in favor of equivalent funcs in scraper package.

πŸ’‘ Enhancements πŸ’‘

  • exporterqueue: Introduce a feature gate exporter.UsePullingBasedExporterQueueBatcher to use the new pulling model in exporter queue batching. (#8122, #10368)
    If both queuing and batching is enabled for exporter, we now use a pulling model instead of a
    pushing model. num_consumer in queue configuration is now used to specify the maximum number of
    concurrent workers that are sending out the request.

  • service: label metrics as alpha to communicate their stability (#11729)

  • consumer: Mark consumer as stable. (#9046)

  • service: Add support for ca certificates in telemetry metrics otlp grpc exporter (#11633)
    Before this change the Certificate value in config was silently ignored.

🧰 Bug fixes 🧰

  • service: ensure OTLP emitted logs respect severity (#11718)
  • featuregate: Fix an unfriendly display message runtime error when featuregate is used to display command line usage. (#11651)
  • profiles: Fix iteration over scope profiles while counting the samples. (#11688)

API Changelog

v1.21.0/v0.115.0

πŸ›‘ Breaking changes πŸ›‘

  • extension/auth/authtest: authtest is now its own module (#11465, #11705)
  • pdata/pprofile: AttributeTable is now a slice rather than a map (#11706)
  • scraperhelper: Remove deprecated scraperhelper funcs Scraper.ID, NewScraper, AddScraper. (#11710)
  • mdatagen: Remove deprecated LeveledMeter from the generated code (#11696)

🚩 Deprecations 🚩

  • component: Mark TelemetrySettings.LeveledMeterProvider as deprecated (#11697)
  • receiver/scraper: Move receiver/scrapererror package to scraper/scrapererror and deprecate original receiver/scrapererror package. (#11003)
  • scraperhelper: Make Scraper compatible with the new scraper.Metrics (#11682)
    Deprecate scraperhelper.Scraper in favor of scraper.Metrics

v0.114.0

18 Nov 20:20
v0.114.0
43fbb04
Compare
Choose a tag to compare

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

End User Changelog

v1.20.0/v0.114.0

πŸ’‘ Enhancements πŸ’‘

  • cmd/builder: Allow for replacing of local Providers and Converters when building custom collector with ocb. (#11649)
    Use the property path under gomod to replace an go module with a local folder in
    builder-config.yaml. Ex:

    providers:
      - gomod: module.url/my/custom/provider v1.2.3
        path: /path/to/local/provider
    
  • cmd/builder: Allow configuring confmap.Converter components in ocb. (#11582)
    If no converters are specified, there will be no converters added.
    Currently, the only published converter is expandconverter which is
    deprecated as of v0.107.0, but can still be added for testing purposes.

    To configure a custom converter, make sure your converter implements the converter
    interface and is published as a go module (or replaced locally if not published).
    You may then use the converters key in your OCB build manifest with a list of
    Go modules (and replaces as necessary) to include your converter.

    Please note that converters are order-dependent. The confmap will apply converters
    in order of which they are listed in your manifest if there is more than one.

  • all: shorten time period before removing an unmaintained component from 6 months to 3 months (#11664)

🧰 Bug fixes 🧰

  • all: Updates dialer timeout section documentation in confignet README (#11685)
  • scraperhelper: If the scraper shuts down, do not scrape first. (#11632)
    When the scraper is shutting down, it currently will scrape at least once.
    With this change, upon receiving a shutdown order, the receiver's scraperhelper will exit immediately.

API Changes

v1.20.0/v0.114.0

πŸ›‘ Breaking changes πŸ›‘

  • extensiontest: Make extensiontest into its own module (#11463)
  • component: Make componenttest into its own module (#11464)
  • expandconverter: Remove deprecated expandvar converter (#11672)
  • exporter: Remove deprecated funcs Create[]Exporter and []ExporterStability (#11662)
  • exporterhelper: Remove derprecated NewLogs[Request]Exporter funcs (#11661)
  • extension: Remove deprecated funcs CreateExtension and ExtensionStability (#11663)
  • processortest: Remove deprecated func NewUnhealthyProcessorCreateSettings (#11665)

🚩 Deprecations 🚩

  • component: Deprecate TelemetrySettings.LeveledMeterProvider and undo deprecation of TelemetrySettings.MeterProvider (#11061)
  • scraperhelper: Deprecate Scraper.ID func, pass type when register Scraper (#11238)

v0.113.0

05 Nov 19:55
v0.113.0
3da496b
Compare
Choose a tag to compare

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

End User Changelog

v1.19.0/v0.113.0

πŸ›‘ Breaking changes πŸ›‘

  • internal/fanoutconsumer: Extract internal/fanoutconsumer as a separate go module (#11441)
  • builder: Remove builder support to build old version, and the otelcol_version config (#11405)
    User should remove this property from their config, to build older versions use older builders.
  • receiver: Make receivertest into its own module (#11462)
  • builder: Remove deprecated flags from Builder (#11576)
    Here is the list of flags | --name, --description, --version, --otelcol-version, --go, --module
  • internal/sharedcomponent: Extract internal/sharedcomponent as a separate go module (#11442)

πŸ’‘ Enhancements πŸ’‘

  • mdatagen: Add otlp as supported distribution (#11527)
  • batchprocessor: Move single shard batcher creation to the constructor (#11594)
  • service: add support for using the otelzap bridge and emit logs using the OTel Go SDK (#10544)

🧰 Bug fixes 🧰

  • service: ensure traces and logs emitted by the otel go SDK use the same resource information (#11578)
  • config/configgrpc: Patch for bug in the grpc-go NewClient that makes the way the hostname is resolved incompatible with the way proxy setting are applied. (#11537)
  • builder: Update builder default providers to lastest stable releases (#11566)

API Changes

v1.19.0/v0.113.0

πŸ›‘ Breaking changes πŸ›‘

  • builder: Remove deprecated flags from Builder (#11576)
    Here is the list of flags | --name, --description, --version, --otelcol-version, --go, --module

πŸš€ New components πŸš€

  • processorhelperprofiles: Add processorhelperprofiles to support profiles signal (#11556)

πŸ’‘ Enhancements πŸ’‘

  • mdatagen: Add newTelemetrySettings to be generated all the time even for pkg class (#11535)
  • debugexporter: Add profiles support to debug exporter (#11155)
  • component: Add UnmarshalText for StabilityLevel (#11520)

v0.112.0

22 Oct 18:46
fee2daa
Compare
Choose a tag to compare

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

End User Changelog

v1.18.0/v0.112.0

πŸ›‘ Breaking changes πŸ›‘

  • consumer/consumererror: Extract consumer/consumererror as a separate go module (#11440)
  • exporter/expotertest: Put expotertest into its own module (#11461)
  • service: Remove stable gate component.UseLocalHostAsDefaultHost (#11412)

🚩 Deprecations 🚩

  • processortest: Deprecated 'NewUnhealthyProcessorCreateSettings'. Use NewNopSettings instead. (#11307)

πŸ’‘ Enhancements πŸ’‘

  • mdatagen: Added generated_package_name config field to support custom generated package name. (#11231)
  • mdatagen: Generate documentation for components with resource attributes only (#10705)
  • confighttp: Adding support for lz4 compression into the project (#9128)
  • service: Hide profiles support behind a feature gate while it remains alpha. (#11477)
  • exporterhelper: Retry sender will fail fast when the context timeout is shorter than the next retry interval. (#11183)

🧰 Bug fixes 🧰

  • cmd/builder: Fix default configuration for builder for httpprovider, httpsprovider, and yamlprovider. (#11357)
  • processorhelper: Fix issue where in/out parameters were not recorded when error was returned from consumer. (#11351)

API Changes

v1.18.0/v0.112.0

πŸ›‘ Breaking changes πŸ›‘

  • service: Change Host to not implement GetExportersWithSignal (#11444)
    Use Host.GetExporters if still needed.
  • componentstatus: Remove deprecated NewInstanceIDWithPipelineIDs, AllPipelineIDsWithPipelineIDs, and WithPipelineIDs. Use NewInstanceID, AllPipelineIDs and WithPipelines instead. (#11363)
  • configgrpc: Removed deprecated ClientConfig.ToClientConnWithOptions/ServerConfig.ToServerWithOptions. (#11359, #9480)
    These methods were renamed to ClientConfig.ToClientConn/ServerConfig.ToServer in v0.111.0.
  • connector: Put connectortest in its own module (#11216)
  • exporter: Disables setting batch option to batch sender directly. (#10368)
    Removed WithRequestBatchFuncs(BatcherOption) in favor of WithBatchFuncs(Option), where | BatcherOption is a function that operates on batch sender and Option is one that operates | on BaseExporter
  • exporter: Made mergeFunc and mergeSplitFunc required method of exporter.Request (#10368)
    mergeFunc and mergeSplitFunc used to be part of the configuration pass to the exporter. Now it is changed | to be a method function of request.
  • componentprofiles: Move componentprofiles to pipelineprofiles (#11421)
  • processor: Put processortest in its own module (#11218)
  • receivertest: Removed deprecated NewNopFactoryForTypeWithSignal. Use NewNopFactoryForType instead. (#11362)
  • processor: Remove deprecated funcs from processor package (#11368)
  • receiver: Remove deprecated funcs from receiver package (#11367)
  • processorhelper: Remove deprecated funcs/types from processorhelper & componenttest (#11302)
  • service: Remove deprecated pipelines.ConfigWithPipelineID and Config.PipelinesWithPipelineID. Use pipelines.Config and Config.Pipelines instead. (#11361)

🚩 Deprecations 🚩

  • extension: Deprecate funcs that repeat extension in name (#11413)
    Factory.CreateExtension -> Factory.Create |
    Factory.ExtensionStability -> Factory.Stability

  • exporter: Deprecate funcs that repeate exporter in name (#11370)
    Factory.Create[Traces|Metrics|Logs|Profiles]Exporter -> Factory.Create[Traces|Metrics|Logs|Profiles] |
    Factory.[Traces|Metrics|Logs|Profiles]ExporterStability -> Factory.[Traces|Metrics|Logs|Profiles]Stability

πŸš€ New components πŸš€

  • consumererrorprofiles: Add new module consumereerrorprofiles for consumer error profiles. (#11131)

πŸ’‘ Enhancements πŸ’‘

  • configcompression: Add support for lz4 compression (#9128)
  • otlpexporter: Add profiles support to OTLP exporter (#11435)
  • otlphttpexporter: Add profiles support to OTLP HTTP exporter (#11450)

v1.17.0/v0.111.0

04 Oct 08:16
080b765
Compare
Choose a tag to compare

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

πŸ†• 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.

End User Changelog

πŸ› Known bugs πŸ›

  • The ocb binary has an identified bug caused by the fact that some of the providers have been marked stable and the default providers in the ocb binary still use the unstable version. In order to fix this explicitly add the default providers in your otel builder config, if not already configured:
providers:
  - gomod: go.opentelemetry.io/collector/confmap/provider/envprovider v1.17.0
  - gomod: go.opentelemetry.io/collector/confmap/provider/fileprovider v1.17.0
  - gomod: go.opentelemetry.io/collector/confmap/provider/httpprovider v1.17.0
  - gomod: go.opentelemetry.io/collector/confmap/provider/httpsprovider v1.17.0
  - gomod: go.opentelemetry.io/collector/confmap/provider/yamlprovider v1.17.0

This release removes the logging exporter. See #11337 to migrate to the debug exporter.

πŸ›‘ Breaking changes πŸ›‘

  • service/telemetry: Change default metrics address to "localhost:8888" instead of ":8888" (#11251)
    This behavior can be disabled by disabling the feature gate telemetry.UseLocalHostAsDefaultMetricsAddress.
  • loggingexporter: Removed the deprecated logging exporter. Use the debug exporter instead. (#11037).
    You can read issue #11337 for migration instructions.

🚩 Deprecations 🚩

  • service/telemetry: Deprecate service::telemetry::metrics::address in favor of service::telemetry::metrics::readers. (#11205)
  • processorhelper: Deprecate BuildProcessorMetricName as it's no longer needed since introduction of mdatagen (#11302)

πŸ’‘ Enhancements πŸ’‘

  • ocb: create docker images for OCB, per open-telemetry/opentelemetry-collector-releases#671 (#5712)
    Adds standard Docker images for OCB to Dockerhub and GitHub, see hub.docker.com/r/otel/opentelemetry-collector-builder
  • confighttp: Snappy compression to lazy read for memory efficiency (#11177)
  • httpsprovider: Mark the httpsprovider as stable. (#11191)
  • httpprovider: Mark the httpprovider as stable. (#11191)
  • yamlprovider: Mark the yamlprovider as stable. (#11192)
  • confmap: Allow using any YAML structure as a string when loading configuration including time.Time formats (#10659)
    Previously, fields with time.Time formats could not be used as strings in configurations

🧰 Bug fixes 🧰

  • processorhelper: Fix data race condition, concurrent writes to the err variable, causes UB (Undefined Behavior) (#11350)
  • cmd/builder: re-adds function to properly set and view version number of OpenTelemetry Collector Builder (ocb) binaries (#11208)
  • pdata: Unmarshal Span and SpanLink flags from JSON (#11267)

API Changes

πŸ›‘ Breaking changes πŸ›‘

  • service/telemetry: Change default metrics address to "localhost:8888" instead of ":8888" (#11251)
    This behavior can be disabled by disabling the feature gate 'telemetry.UseLocalHostAsDefaultMetricsAddress'.

  • componentprofiles: Removed deprecated DataTypeProfiles. Use SignalProfiles instead. (#11312)

  • configgrpc: Replace ToClientConn and ToServer with ToClientConnWithOptions and ToServerWithOptions. (#11271, #9480)
    ClientConfig.ToClientConn and ServerConfig.ToServer were deprecated in v0.110.0 in favor of
    ClientConfig.ToClientConnWithOptions and ServerConfig.ToServerWithOptions which use a more
    flexible option type. The original functions are now removed, and the new ones are renamed to the
    old names. The WithOptions names are kept as deprecated aliases for now.

  • exporterhelper: Removed deprecated QueueTimeout/TimeoutSettings aliases in favor of QueueConfig/TimeoutConfig. (#11264, #6767)
    NewDefaultQueueSettings and NewDefaultTimeoutSettings have been similarly renamed.

  • exporterqueue: Remove deprecated Settings.DataType. Use Settings.Signal instead. (#11305)

  • exportertest: Remove deprecated CheckConsumeContractParams.DataType. Use CheckConsumeContractParams.Signal instead. (#11305)

  • component: Removed deprecated ErrDataTypeIsNotSupported, DataType, DataTypeTraces, DataTypeMetrics, and DataTypeLogs. Use pipeline.ErrSignalNotSupported, pipeline.Signal, pipeline.SignalTraces, pipeline.SignalMetrics, and pipeline.SignalLogs instead. (#11253)

  • pdata/pprofile: Replace slices of values to slices of pointers for the Mapping, Location, Line, Function, AttributeUnit, Link, Value, Sample and Labels attributes. (#11339)

  • receivertest: Remove deprecated CheckConsumeContractParams.DataType. Use CheckConsumeContractParams.Signal instead. (#11304)

  • scraperhelper: Remove deprecated function NewScraperWithComponentType. (#11294)

  • processorhelper: Remove deprecated funcs form processorhelper.ObsReport (#11289)
    The "otelcol_processor_dropped_log_records", "otelcol_processor_dropped_log_records" | and "otelcol_processor_dropped_spans" metrics are complete removed, before they were always record with 0 values.

🚩 Deprecations 🚩

  • componentstatus: Deprecated NewInstanceIDWithPipelineIDs, AllPipelineIDsWithPipelineIDs, and WithPipelineIDs. Use NewInstanceID, AllPipelineIDs, and WithPipelines instead. (#11313)

  • processorhelper: Deprecate unused and empty struct processorhelper.ObsReport (#11293)

  • processor: Deprecate funcs that repeat "processor" in name (#11310)
    Factory.Create[Traces|Metrics|Logs|Profiles]Processor -> Factory.Create[Traces|Metrics|Logs|Profiles]
    Factory.[Traces|Metrics|Logs|Profiles]ProcessorStability -> Factory.[Traces|Metrics|Logs|Profiles]Stability

  • receiver: Deprecate funcs that repeat "receiver" in name (#11287)
    Factory.Create[Traces|Metrics|Logs|Profiles]Receiver -> Factory.Create[Traces|Metrics|Logs|Profiles]
    Factory.[Traces|Metrics|Logs|Profiles]ReceiverStability -> Factory.[Traces|Metrics|Logs|Profiles]Stability

  • receivertest: Deprecated NewNopFactoryForTypeWithSignal. Use NewNopFactoryForType instead. (#11304)

  • service: Deprecates Config.PipelinesWithPipelineID, pipelines.ConfigWithPipelineID and GetExportersWithSignal interface implementation. Use Config.Pipelines, pipelines.Config, and GetExporters interface implementation instead. (#11303)