Vector v0.44.0 release notes
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.
Known issues
- The
aws_s3source in this version produces many internal logs. These logs will be downgraded todebugin the next release. Until then, you can suppress them withVECTOR_LOG=info,vector::sources::aws_s3=warn.
The Vector team is pleased to announce version 0.44.0!
Be sure to check out the upgrade guide for breaking changes in this release.
This release contains numerous enhancements and fixes.
Vector Changelog
1 new features
VRL was updated to v0.21.0. This includes the following changes:
Breaking Changes & Upgrade Guide
to_unix_timestamp,to_float, anduuid_v7can now return an error if the supplied timestamp is unrepresentable as a nanosecond timestamp. Previously the function calls would panic. (https://github.com/vectordotdev/vrl/pull/979)
New Features
- Added new
crcfunction to calculate CRC (Cyclic Redundancy Check) checksum - Add
parse_cborfunction (https://github.com/vectordotdev/vrl/pull/1152) - Added new
zipfunction to iterate over an array of arrays and produce a new arrays containing an item from each one. (https://github.com/vectordotdev/vrl/pull/1158) - Add new
decode_charset,encode_charsetfunctions to decode and encode strings between different charsets. (https://github.com/vectordotdev/vrl/pull/1162) - Added new
object_from_arrayfunction to create an object from an array of value pairs such as whatzipcan produce. (https://github.com/vectordotdev/vrl/pull/1164) - Added support for multi-unit duration strings (e.g.,
1h2s,2m3s) in theparse_durationfunction. (https://github.com/vectordotdev/vrl/pull/1197) - Added new
parse_bytesfunction to parse given bytes string such as1MiBor1TBeither in binary or decimal base. (https://github.com/vectordotdev/vrl/pull/1198) - Add
mainlog format forparse_nginx_log. (https://github.com/vectordotdev/vrl/pull/1202) - Added support for optional
timezoneargument in theparse_timestampfunction. (https://github.com/vectordotdev/vrl/pull/1207)
Fixes
- Fix a panic in float subtraction that produces NaN values. (https://github.com/vectordotdev/vrl/pull/1186)
11 enhancements
aws_s3source now logs when S3 objects are fetched. If ACKs are enabled, it also logs on delivery.
Thanks to fdamstra for contributing this change!- The file sink now supports any input event type that the configured encoding supports. It previously only supported log events.
Thanks to nionata for contributing this change! - The NATS sink can now parse comma separated urls.
Thanks to whatcouldbepizza for contributing this change! - The
log_to_metrictransformer tag key are now template-able which enables tags expansion.
Thanks to titaneric for contributing this change! - Add VRL function
parse_dnstapthat can parse dnstap data and produce output in the same format asdnstapsource.
Thanks to esensar, Quad9DNS for contributing this change! - Adds a
force_path_styleoption to theaws_s3sink that allows users to configure virtual host style addressing. The value defaults totrueto maintain existing behavior.
Thanks to sam6258 for contributing this change! - The
socketsink now supportsunix_datagramas a validmode. This feature is only available on Linux.
Thanks to jpovixwm for contributing this change! - Add active and inactive metrics for anon and file memory to the cgroup collector. These additional metrics allow you to better understand the existing cgroup memory metrics.
Thanks to nionata for contributing this change! - Add an option to Elasticsearch sink to set a fallback index if the provided template in the
bulk.indexfield cannot be resolved
Thanks to ArunPiduguDD for contributing this change! - The Alpine base image used for Vector
-alpineand-distroless-staticimages was updated to3.21. - A new
GLACIER_IRoption was added tostorage_classforaws_s3sink.
Thanks to MikeHsu0618 for contributing this change!
9 bug fixes
- The
kubernetes_logssource now sets auser-agentheader when querying k8s apiserver.
Thanks to ganelo for contributing this change! - Fix the HTTP config provider to correctly parse TOML provided by the given HTTP endpoint.
Thanks to PriceHiller for contributing this change! - Allow the
skip_unknown_fieldssetting to be optional, thereby allowing use of the defaults provided by the ClickHouse server. Setting it totruewill permit skipping unknown fields andfalsewill make ClickHouse strict on what fields it accepts.
Thanks to PriceHiller for contributing this change! - Retry Kafka messages that error with a policy violation so messages are not lost.
Thanks to PriceHiller for contributing this change! - Changes the fingerprint for file sources to use uncompressed file content
as a source of truth when fingerprinting lines and checking
ignored_header_bytes. Previously this was using the compressed bytes. For now, only gzip compression is supported.
Thanks to roykim98 for contributing this change! - The
filtertransform now generates a more accurate config when generated viavector generateby using a comparison rather than an assignment.
Thanks to abcdam for contributing this change! - The
gcp_pubsubsource no longer has a 4MB message size limit.
Thanks to sbalmos for contributing this change! - Fix
opentelemetrysink input resolution. The sink is now using the underlying protocol to determine what inputs are accepted.
Thanks to pront for contributing this change! - The
sampletransform now correctly uses the configuredsample_rate_keyinstead of always using"sample_rate".
Thanks to dekelpilli for contributing this change!