Vector v0.45.0 release notes
- To prevent a crash at startup, avoid name clashes between enrichment table names and other components like sources, transforms, and sinks in the configuration. To resolve this, you can rename the enrichment table to a unique name that isn’t already used by any other component.
- There are connectivity issues that might prevent
vector topcommand connect to a running Vector instance.
The Vector team is pleased to announce version 0.45.0!
Be sure to check out the upgrade guide for breaking changes in this release.
This release contains a few notable new features, along with numerous enhancements and fixes as listed below:
- A new type of
enrichment_table, calledmemory, was introduced! This table can also act can also act as a sink, which enables several new use cases. For instance, this table can be used as a cache or as an interface with an external key value store. - A new
websocket_serversink that acts as a websocket server and broadcasts events to all connected clients, rather than just the first connected client. - The
tag_cardinality_limittransform now supports customizing limits for metrics that are based on the metric name and namespace.
Vector Changelog
12 new features
VRL was updated to v0.22.0. This includes the following changes:
Breaking Changes & Upgrade Guide
- Removed deprecated
ellipsisargument from thetruncatefunction. Usesuffixinstead. (https://github.com/vectordotdev/vrl/pull/1188) - Fixed
slicetype definition. This is a breaking change because it might change the fallibility of theslicefunction. VRL scripts will need to be updated accordingly. (https://github.com/vectordotdev/vrl/pull/1246)
New Features
- Added new
to_syslog_facility_codefunction to convert syslog facility keyword to syslog facility code. (https://github.com/vectordotdev/vrl/pull/1221) - Downgraded the “can’t abort infallible function” error to a warning. (https://github.com/vectordotdev/vrl/pull/1247)
ip_cidr_containsmethod now also accepts an array of CIDRs. (https://github.com/vectordotdev/vrl/pull/1248)- Faster bytes to Unicode string conversions by using SIMD instructions provided by simdutf8 crate. (https://github.com/vectordotdev/vrl/pull/1249)
- Added
shannon_entropyfunction to generate entropy from a string. (https://github.com/vectordotdev/vrl/pull/1267)
Fixes
- Fix decimals parsing in parse_duration function (https://github.com/vectordotdev/vrl/pull/1223)
- Fix
parse_nginx_logfunction when a format is set to error and an error message contains a comma. (https://github.com/vectordotdev/vrl/pull/1280)
- Removed deprecated
- Allows users to specify a KMS key and tags for newly created AWS CloudWatch log groups.
Thanks to johannesfloriangeiger for contributing this change! Query parameters can now contain either
single valueor an array ofmultiple values. For example:singe_key: single_value "match[]": - '{job="somejob"}' - '{__name__=~"job:.*"}'
Thanks to sainad2222 for contributing this change!- Add a new type of
enrichment_table-memory, which can also act as a sink, ingesting all the data and storing it per key, enabling it to be read from all other enrichment tables.
Thanks to esensar, Quad9DNS for contributing this change! - A new sink for Keep was added.
Thanks to sainad2222 for contributing this change! The
host_metricssource has a new collector,tcp. Thetcpcollector exposes three metrics related to the TCP stack of the system:tcp_connections_total: The total number of TCP connections. It includes thestateof the connection as a tag.tcp_tx_queued_bytes_total: The sum of the number of bytes in the send queue across all connections.tcp_rx_queued_bytes_total: The sum of the number of bytes in the receive queue across all connections.
This collector is enabled only on Linux systems.
Thanks to aryan9600 for contributing this change!- The
tag_cardinality_limittransform now supports customizing limits for specific metrics, matched by metric name and optionally, its namespace.
Thanks to esensar, Quad9DNS for contributing this change! - Add
websocket_serversink that acts as a websocket server and broadcasts events to all clients.
Thanks to esensar, Quad9DNS for contributing this change! Sources running HTTP servers (
http_serversource,prometheussource,datadog_agent, and so on) now support a newcustomauthorization strategy. If a strategy is not explicitly defined, it defaults tobasic, which is the current behavior.You can read more in this how it works section.
Thanks to esensar, Quad9DNS for contributing this change!- The
dnstapsource now uses v20250201 dnstap protobuf schema.
Thanks to esensar, Quad9DNS for contributing this change! - Add a new virtual memory metric
process_memory_virtual_usageto the process host metrics collector. This method returns the size of virtual memory (the amount of memory that the process can access), whether it is currently mapped in a physical RAM or not.
Thanks to nionata for contributing this change! - The
pulsarsource and sink now support configuration of TLS options via thetlsconfiguration field.
Thanks to pomacanthidae for contributing this change!
5 enhancements
Add support for more Google Chronicle regional endpoints:
- SãoPaulo
- Canada
- Dammam
- Doha
- Frankfurt
- London
- Mumbai
- Paris
- Singapore
- Sydney
- TelAviv
- Tokyo
- Turin
- Zurich
Thanks to chocpanda for contributing this change!- Add an option to Google Chronicle sink to set a fallback index if the provided template in the
log_typefield cannot be resolved
Thanks to ArunPiduguDD for contributing this change! When using the Datadog Search syntax as a condition on components that support it, the following now support matching on multiple fields (using OR):
tagswill look up the fieldstagsandddtagssourcewill look up the fieldssourceandddsource
Thanks to 20agbekodo for contributing this change!- The
generate-schemasubcommand accepts an optionaloutput_pathoption.
Thanks to pront for contributing this change! - Allow additional types to be used in
tests.inputs.log_fieldsvalues, including nested objects and arrays.
Thanks to tmccombs for contributing this change!
5 bug fixes
- The
chronicle_unstructuredsink now sets thecontent-encodingheader when compression is enabled.
Thanks to chocpanda for contributing this change! - The systemd service now validates the config with parameter
--no-environmenton service reload.
Thanks to rsrdesarrollo for contributing this change! - Allow users to specify
session_namewhen using AWS authentication in a component.
Thanks to akutta for contributing this change! enrichment_tables loaded from a CSV file withinclude_headers: falseno longer drop the first row of data
Thanks to B-Schmidt for contributing this change!- Downgraded some noisy
info!statements in theaws_s3source todebug!.
Thanks to pront for contributing this change!