Skip to content

Releases: open-telemetry/opentelemetry-collector

Release version 0.25.0

20 Apr 19:37
d93c9d2
Compare
Choose a tag to compare

v0.25.0 Beta

🛑 Breaking changes 🛑

  • Rename ForEach (in pdata) with Range to be consistent with sync.Map (#2931)
  • Rename componenthelper.Start to componenthelper.StartFunc (#2880)
  • Rename componenthelper.Stop to componenthelper.StopFunc (#2880)
  • Remove exporterheleper.WithCustomUnmarshaler, processorheleper.WithCustomUnmarshaler, receiverheleper.WithCustomUnmarshaler, extensionheleper.WithCustomUnmarshaler, implement config.CustomUnmarshaler interface instead (#2867)
  • Remove component.CustomUnmarshaler implement config.CustomUnmarshaler interface instead (#2867)
  • Remove testutil.HostPortFromAddr, users can write their own parsing helper (#2919)
  • Remove configparser.DecodeTypeAndName, use config.IDFromString (#2869)
  • Remove config.NewViper, users should use config.NewParser (#2917)
  • Remove testutil.WaitFor, use testify.Eventually helper if needed (#2920)
  • Remove testutil.WaitForPort, users can use testify.Eventually (#2926)
  • Rename processorhelper.NewTraceProcessor to processorhelper.NewTracesProcessor (#2935)
  • Rename exporterhelper.NewTraceExporter to exporterhelper.NewTracesExporter (#2937)
  • Remove InitEmptyWithCapacity, add EnsureCapacity and Clear (#2845)
  • Rename traces methods/objects to include Traces in Kafka receiver (#2966)

💡 Enhancements 💡

  • Add validatable interface with Validate() to all config.<component> (#2898)
    • add the empty Validate() implementation for all component configs
  • Experimental: Add a config source manager that wraps the interaction with config sources (#2857, #2903, #2948)
  • kafka exporter: Key jaeger messages on traceid (#2855)
  • scraperhelper: Don't try to count metrics if scraper returns an error (#2902)
  • Extract ConfigFactory in a ParserProvider interface (#2868)
  • prometheus exporter: Allows Summary metrics to be exported to Prometheus (#2900)
  • prometheus receiver: Optimize dpgSignature function (#2945)
  • kafka receiver: Add logs support (#2944)

🧰 Bug fixes 🧰

  • prometheus receiver:
    • Treat Summary and Histogram metrics without "_sum" counter as valid metric (#2812)
    • Add job and instance as well-known labels (#2897)
  • prometheusremotewrite exporter:
    • Sort Sample by Timestamp to avoid out of order errors (#2941)
    • Remove incompatible queued retry (#2951)
  • kafka receiver: Fix data race with batchprocessor (#2957)
  • jaeger receiver: Jaeger agent should not report ErrServerClosed (#2965)

v0.24.0

06 Apr 20:26
v0.24.0
c5ddd09
Compare
Choose a tag to compare

v0.24.0 Beta

🛑 Breaking changes 🛑

  • Remove legacy internal metrics for memorylimiter processor, spans_dropped and trace_batches_dropped (#2841)
    • For spans_dropped use processor/refused_spans with processor=memorylimiter
  • Rename pdata..[Start|End]Time to pdata..[Start|End]Timestamp (#2847)
  • Rename pdata.DoubleExemplar to pdata.Exemplar (#2804)
  • Rename pdata.DoubleHistogram to pdata.Histogram (#2797)
  • Rename pdata.DoubleSummary to pdata.Summary (#2774)
  • Refactor consumererror package (#2768)
    • Remove PartialError type in favor of signal-specific types
    • Rename CombineErrors() to Combine()
  • Refactor componenthelper package (#2778)
    • Remove ComponentSettings and DefaultComponentSettings()
    • Rename NewComponent() to New()
  • obsReport.NewExporter accepts a settings struct (#2668)
  • Remove ErrorWaitingHost from componenttest (#2582)
  • Move config.Load to use configparser.Load (#2796)
  • Remove configtest.NewViperFromYamlFile(), use config.Parser.NewParserFromFile() (#2806)
  • Move config.ViperSubExact() to use config.Parser.Sub() (#2806)
  • Update LoadReceiver signature to remove unused params (#2823)
  • Move configerror.ErrDataTypeIsNotSupported to componenterror.ErrDataTypeIsNotSupported (#2886)
  • RenameCreateTraceExporter type to CreateTracesExporter in exporterhelper (#2779)
  • Move fluentbit extension to contrib (#2795)
  • Move configmodels to config (#2808)
  • Move fluentforward receiver to contrib (#2723)

💡 Enhancements 💡

  • batch processor: - Support max batch size for logs (#2736)
  • Use Endpoint for health check extension (#2782)
  • Use confignet.TCPAddr for pprof and zpages extensions (#2829)
  • Deprecate consumetest.New[${SIGNAL}]Nop in favor of consumetest.NewNop (#2878)
  • Deprecate consumetest.New[${SIGNAL}]Err in favor of consumetest.NewErr (#2878)
  • Add watcher to values retrieved via config sources (#2803)
  • Updates for cloud semantic conventions (#2809)
    • cloud.infrastructure_service -> cloud.platform
    • cloud.zone -> cloud.availability_zone
  • Add systemd environment file for deb/rpm packages (#2822)
  • Add validate interface in configmodels to force each component do configuration validation (#2802, #2856)
  • Add aws.ecs.task.revision to semantic conventions list (#2816)
  • Set unprivileged user to container image (#2838)
  • Add New funcs for extension, exporter, processor config settings (#2872)
  • Report metric about current size of the exporter retry queue (#2858)
  • Allow adding new signals in ProcessorFactory by forcing everyone to embed BaseProcessorFactory (#2885)

🧰 Bug fixes 🧰

  • pdata.TracesFromOtlpProtoBytes: Fixes to handle backwards compatibility changes in proto (#2798)
  • jaeger receiver: Escape user input used in output (#2815)
  • prometheus exporter: Ensure same time is used for updated time (#2745)
  • prometheusremotewrite exporter: Close HTTP response body (#2875)

Note

As a precautionary measure against the codecov incident, we've rebuilt the binaries, packages and docker images for this release. Please update your builds and checksums.

Release version 0.23.0

23 Mar 20:11
2df27c0
Compare
Choose a tag to compare

v0.23.0 Beta

🛑 Breaking changes 🛑

  • Move fanout consumers to fanoutconsumer package (#2615)
  • Rename ExporterObsReport to Exporter (#2658)
  • Rename ProcessorObsReport to Processor (#2657)
  • Remove ValidateConfig and add Validate on the Config struct (#2665)
  • Rename pdata Size to OtlpProtoSize (#2726)
  • Rename [Traces|Metrics|Logs]Consumer to [Traces|Metrics|Logs] (#2761)
  • Remove public access for componenttest.Example* components:
    • Users of these structs for testing configs should use the newly added componenttest.Nop* (update all components name in the config example* -> nop and use componenttest.NopComponents()).
    • Users of these structs for sink like behavior should use consumertest.*Sink.

💡 Enhancements 💡

  • hostmetrics receiver: List labels along with respective metrics in metadata (#2662)
  • exporter helper: Remove obsreport.ExporterContext, always add exporter name as a tag to the metrics (#2682)
  • jaeger exporter: Change to not use internal data (#2698)
  • kafka receiver: Change to not use internal data (#2697)
  • zipkin receiver: Change to not use internal data (#2699)
  • kafka exporter: Change to not use internal data (#2696)
  • Ensure that extensions can be created and started multiple times (#2679)
  • Use otlp request in logs wrapper, hide members in the wrapper (#2692)
  • Add MetricsWrapper to dissallow access to internal representation (#2693)
  • Add TracesWrapper to dissallow access to internal representation (#2721)
  • Allow multiple OTLP receivers to be created (#2743)

🧰 Bug fixes 🧰

  • prometheus exporter: Fix to work with standard labels that follow the naming convention of using periods instead of underscores (#2707)
  • Propagate name and transport for prometheus receiver and exporter (#2680)
  • zipkin receiver: Ensure shutdown correctness (#2765)

Note

As a precautionary measure against the codecov incident, we've rebuilt the binaries, packages and docker images for this release. Please update your builds and checksums.

Release version 0.22.0

09 Mar 18:49
0345f0d
Compare
Choose a tag to compare

v0.22.0 Beta

🛑 Breaking changes 🛑

  • Rename ServiceExtension to just Extension (#2581)
  • Remove consumerdata.TraceData (#2551)
  • Move consumerdata.MetricsData to internaldata.MetricsData (#2512)
  • Remove custom OpenCensus sematic conventions that have equivalent in otel (#2552)
  • Move ScrapeErrors and PartialScrapeError to scrapererror (#2580)
  • Remove support for deprecated unmarshaler CustomUnmarshaler, only Unmarshal is supported (#2591)
  • Remove deprecated componenterror.CombineErrors (#2598)
  • Rename pdata.TimestampUnixNanos to pdata.Timestamp (#2549)

💡 Enhancements 💡

  • prometheus exporter: Re-implement on top of github.com/prometheus/client_golang/prometheus and add metric_expiration option
  • logging exporter: Add support for AttributeMap (#2609)
  • Add semantic conventions for instrumentation library (#2602)

🧰 Bug fixes 🧰

  • otlp receiver: Fix Shutdown() bug (#2564)
  • batch processor: Fix Shutdown behavior (#2537)
  • logging exporter: Fix handling the loop for empty attributes (#2610)
  • prometheusremotewrite exporter: Fix counter name check (#2613)

Note

As a precautionary measure against the codecov incident, we've rebuilt the binaries, packages and docker images for this release. Please update your builds and checksums.

Release version 0.21.0

24 Feb 18:41
7d7ae2e
Compare
Choose a tag to compare

v0.21.0 Beta

🛑 Breaking changes 🛑

  • Remove deprecated function IsValid from trace/span ID (#2522)
  • Remove accessors for deprecated status code (#2521)

💡 Enhancements 💡

  • otlphttp exporter: Add compression option for gzip encoding of outgoing http requests (#2502)
  • Add ScrapeErrors struct to consumererror to simplify errors usage (#2414)
  • Add cors_allowed_headers option to confighttp (#2454)
  • Add SASL/SCRAM authentication mechanism on kafka receiver and exporter (#2503)

🧰 Bug fixes 🧰

  • otlp receiver: Sets the correct deprecated status code before sending data to the pipeline (#2521)
  • Fix IsPermanent to account for wrapped errors (#2455)
  • otlp exporter: Preserve original error messages (#2459)

Note

As a precautionary measure against the codecov incident, we've rebuilt the binaries, packages and docker images for this release. Please update your builds and checksums.

Release version 0.20.0

10 Feb 03:10
a10a1a7
Compare
Choose a tag to compare

v0.20.0 Beta

🛑 Breaking changes 🛑

  • Move samplingprocessor/probabilisticsamplerprocessor to probabilisticsamplerprocessor (#2392), affects only user who import the code.

💡 Enhancements 💡

  • hostmetrics receiver: Refactor to use metrics metadata utilities (#2405, #2406, #2421)
  • Add k8s.node semantic conventions (#2425)

Note

As a precautionary measure against the codecov incident, we've rebuilt the binaries, packages and docker images for this release. Please update your builds and checksums.

Release version 0.19.0

26 Jan 20:38
f47e98a
Compare
Choose a tag to compare

v0.19.0 Beta

🛑 Breaking changes 🛑

  • Remove deprecated queued_retry processor
  • Remove deprecated configs from resource processor: type (set "opencensus.type" key in "attributes.upsert" map instead) and labels (use "attributes.upsert" instead).

💡 Enhancements 💡

  • hostmetrics receiver: Refactor load metrics to use generated metrics (#2375)
  • Add uptime to the servicez debug page (#2385)
  • Add new semantic conventions for AWS (#2365)

🧰 Bug fixes 🧰

  • jaeger exporter: Improve connection state logging (#2239)
  • pdatagen: Fix slice of values generated code (#2403)
  • filterset processor: Avoid returning always nil error in strict filterset (#2399)

Release version 0.18.0

13 Jan 00:25
a1004bb
Compare
Choose a tag to compare

v0.18.0 Beta

🛑 Breaking changes 🛑

  • Rename host metrics according to metrics spec and rename swap scraper to paging (#2311)

💡 Enhancements 💡

  • Add check for NO_WINDOWS_SERVICE environment variable to force interactive mode on Windows (#2272)
  • hostmetrics receiver: Add disk/weighted_io_time metric (Linux only) (#2312)
  • opencensus exporter: Add queue-retry (#2307)
  • filter processor: Filter metrics using resource attributes (#2251)

🧰 Bug fixes 🧰

  • fluentforward receiver: Fix string conversions (#2314)
  • Fix zipkinv2 translation error tag handling (#2253)

Release version 0.17.0

15 Dec 23:16
59b5827
Compare
Choose a tag to compare

v0.17.0 Beta

💡 Enhancements 💡

  • Default config environment variable expansion (#2231)
  • prometheusremotewrite exporter: Add batched exports (#2249)
  • memorylimiter processor: Introduce soft and hard limits (#2250)

🧰 Bug fixes 🧰

  • Fix nits in pdata usage (#2235)
  • Convert status to not be a pointer in the Span (#2242)
  • Report the error from pprof.StartCPUProfile (#2263)
  • Rename service.Application.SignalTestComplete to Shutdown (#2277)

Release version 0.16.0

02 Dec 03:54
ecb27f4
Compare
Choose a tag to compare

v0.16.0 Beta

🛑 Breaking changes 🛑

  • Rename Push functions to be consistent across signals in exporterhelper (#2203)

💡 Enhancements 💡

  • Change default OTLP/gRPC port number to 4317, also continue receiving on legacy port
    55680 during transition period (#2104).
  • kafka exporter: Add support for exporting metrics as otlp Protobuf. (#1966)
  • Move scraper helpers to its own scraperhelper package (#2185)
  • Add componenthelper package to help build components (#2186)
  • Remove usage of custom init/stop in scraper and use start/shutdown from component (#2193)
  • Add more trace annotations, so zpages are more useful to determine failures (#2206)
  • Add support to skip TLS verification (#2202)
  • Expose non-nullable metric types (#2208)
  • Expose non-nullable elements from slices of pointers (#2200)

🧰 Bug fixes 🧰

  • Change InstrumentationLibrary to be non-nullable (#2196)
  • Add support for slices to non-pointers, use non-nullable AnyValue (#2192)
  • Fix --set flag to work with {} in configs (#2162)