Vector v0.53.0 release notes

The Vector team is excited to announce version 0.53.0!

Release highlights

  • Functions to access internal Vector metrics are now available for VRL: get_vector_metric, find_vector_metrics, and aggregate_vector_metrics. You are now able to fetch snapshots of the metrics that are updated every metrics_storage_refresh_period.
  • The clickhouse sink now supports the arrow_stream format option, enabling high-performance binary data transfer using Apache Arrow IPC. This provides significantly better performance and smaller payload sizes compared to JSON-based formats.
  • Added a new doris sink for sending log data to Apache Doris databases using the Stream Load API.
  • Added syslog codec for encoding Vector events to Syslog format. RFC5424 and RFC3164 are supported.
  • Added moving-mean gauges for source and transform buffers (source_buffer_utilization_mean and transform_buffer_utilization_mean), so observers can track an exponentially weighted moving average (EWMA) of buffer utilization in addition to the instant level.

Breaking Changes

  • Buffers now emit metric names for sizes that better follow the metric naming standard specification while keeping the old related gauges available for a transition period. Operators should update dashboards and alerts to the new variants as the legacy names are now deprecated.

    • buffer_max_size_bytes deprecates buffer_max_byte_size
    • buffer_max_size_events deprecates buffer_max_event_size
    • buffer_size_bytes deprecates buffer_byte_size
    • buffer_size_events deprecates buffer_events
  • Increased the number of buckets in internal histograms to reduce the smallest bucket down to approximately 0.000244 (2.0^-12). If you were manually indexing buckets using VRL, you have to change your indexes since the number of buckets changed from 20 to 26.

Upgrading Vector
When upgrading, we recommend stepping through minor versions as these can each contain breaking changes while Vector is pre-1.0. These breaking changes are noted in their respective upgrade guides.

Vector Changelog

3 new features

  • Functions to access internal Vector metrics are now available for VRL: get_vector_metric, find_vector_metrics and aggregate_vector_metrics. They work with a snapshot of the metrics, and the interval the snapshot is taken in can be controlled with the metrics_storage_refresh_period global option. Aggregation supports max, avg, min, and max functions.
    Thanks to esensar, Quad9DNS for contributing this change!
  • Added a new doris sink for sending log data to Apache Doris databases using the Stream Load API. The sink supports configurable batching, custom HTTP headers for Doris-specific options, authentication, rate limiting, adaptive concurrency control, and includes comprehensive health checks.
    Thanks to bingquanzhao for contributing this change!
  • Added syslog codec for encoding Vector events to Syslog format. It handles RFC5424 and RFC3164 format, including specific field length limitations, character sanitization, and security escaping.
    Thanks to syedriko, polarathene, vparfonov for contributing this change!

7 enhancements

  • The mqtt source config field topic can now be a list of MQTT topic strings instead of just a string. If a list is provided, the mqtt source client subscribes to all the topics.
    Thanks to december1981 for contributing this change!
  • The clickhouse sink now supports the arrow_stream format option, enabling high-performance binary data transfer using Apache Arrow IPC. This provides significantly better performance and smaller payload sizes compared to JSON-based formats.
    Thanks to benjamin-awd for contributing this change!
  • Autocompletion scripts for the Vector CLI can now be generated with vector completion <SHELL>.
    Thanks to weriomat for contributing this change!
  • Added moving-mean gauges for source and transform buffers (source_buffer_utilization_mean and transform_buffer_utilization_mean), so observers can track an EWMA of buffer utilization in addition to the instant level.
    Thanks to bruceg for contributing this change!
  • Added the content_type option to the gcp_cloud_storage sink to override the Content-Type of created objects. If unset, defaults to the encoder’s content type.
    Thanks to AnuragEkkati for contributing this change!
  • Added buffer_utilization_ewma_alpha configuration option to the global options, allowing users to control the alpha value for the exponentially weighted moving average (EWMA) used in source and transform buffer utilization metrics.
    Thanks to bruceg for contributing this change!
  • Vector-specific VRL functions are now available everywhere. Previously some functions were not available inside codec VRL transforms and in the VRL CLI (through vector vrl).
    Thanks to thomasqueirozb for contributing this change!

6 bug fixes

  • Fixed a host_metrics source issue that caused TCP metrics collection to fail with “Could not parse netlink response: invalid netlink buffer” errors on Linux systems.
    Thanks to mushrowan for contributing this change!
  • Fixed recurrent “Failed framing bytes” produced by TCP sources such as Fluent and Logstash by ignoring connection resets that occur after complete frames. Connection resets with partial frame data are still reported as errors.
    Thanks to gwenaskell for contributing this change!
  • Fixed an issue in the postgres sink which made a TLS connection impossible due to a missing sqlx feature flag.
    Thanks to thomasqueirozb for contributing this change!
  • Fixed the OpenTelemetry source to collect HTTP headers for logs with or without the use_otlp_decoding configuration option.
    Thanks to ozanichkovsky for contributing this change!
  • The opentelemetry source now correctly emits the component_received_events_total metric when use_otlp_decoding is enabled for HTTP requests. Previously, this metric would show 0 despite events being received and processed.
    Thanks to thomasqueirozb for contributing this change!
  • Fixed histogram incremental conversion by ensuring all individual buckets increase or reinitializing the entire metric.
    Thanks to dd-sebastien-lb for contributing this change!

2 chore

  • Buffers now emit metric names for sizes that better follow the metric naming standard specification while keeping the old related gauges available for a transition period. Operators should update dashboards and alerts to the new variants as the legacy names are now deprecated.

    • buffer_max_size_bytes deprecates buffer_max_byte_size
    • buffer_max_size_events deprecates buffer_max_event_size
    • buffer_size_bytes deprecates buffer_byte_size
    • buffer_size_events deprecates buffer_events

    Thanks to bruceg for contributing this change!
  • Increased the number of buckets in internal histograms to reduce the smallest bucket down to approximately 0.000244 (2.0^-12). Since this shifts all the bucket values out, it may break VRL scripts that rely on the previous values.
    Thanks to bruceg for contributing this change!

VRL Changelog

[0.30.0 (2026-01-22)]

Breaking Changes & Upgrade Guide

  • The usage() method on the Function trait is now required. Custom VRL functions must implement this method to return a &'static str describing the function’s purpose.

authors: thomasqueirozb (https://github.com/vectordotdev/vrl/pull/1608)

Fixes

  • Corrected the type definition for the format_int function to return bytes instead of integer.

authors: thomasqueirozb (https://github.com/vectordotdev/vrl/pull/1586)

[0.29.0 (2025-12-11)]

Download Version 0.53.0

macOS
tar.gz
Windows
zip
Windows (MSI)
msi