Vector v0.4.0 release notes

Code name Hello World Again

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.

Changelog

12 new features

new transform New add_tags transform 785 new transform New remove_tags transform 785 new sink New file sink 688 new source Initial journald source implementation 702 new source Add new kafka source 774 new sink Initial clickhouse sink implementation 693 new sink Initial aws_cloudwatch_metrics sink implementation 707 new source Initial udp source implementation 738 new transform add coercer transform 666 syslog source add all parsed syslog fields to event 836 elasticsearch sink Support AWS authentication 864 new transform add split transform 850

45 enhancements

file source favor older files and allow configuring greedier reads 810 journald source Add checkpointing support 816 file source allow aggregating multiple lines into one event 809 http sink Add support for unverified HTTPS 815 file source make fingerprinting strategy configurable 780 tcp sink Add support for TLS 765 lua transform Add tags support to log_to_metric transform 786 prometheus sink add namespace config 782 prometheus sink add labels support 773 elasticsearch sink Add support for custom query parameters 766 metric data model add tags into metrics model 754 aws_cloudwatch_logs sink Add dynamic group creation 759 elasticsearch sink Add support for additional headers to the Elasticsearch sink 758 prometheus sink Support sets 733 elasticsearch sink Add HTTP Basic authorization 749 config Validation of sinks and sources for non-emptiness. 739 topology Add sink healthcheck disable 731 metric data model add timestamps into metrics 726 prometheus sink Support histograms 675 file source fall back to global data_dir option (#644) 673 elasticsearch sink use templates for ES index and S3 key prefix 686 aws_kinesis_streams sink Add configurable partition keys 692 observability Add rate limit notice when it starts 696 operations Build for x86_64-unknown-linux-musl with all features and optimized binary size 689 elasticsearch sink Default doc_type to _doc and make it op… 695 aws_cloudwatch_logs sink Add retry ability to cloudwatch 663 log_to_metric transform use templates for metric names in log_to_metric 668 config reusable templating system for event values 656 log_to_metric transform push Histogram and Set metrics from logs 650 operations Add jemallocator feature flag 653 console sink accept both logs and metrics 631 grok_parser transform add type coercion 632 config Improve configuration validation and make it more strict 552 file source Add File checkpoint feature. 609 aws_cloudwatch_logs sink Add cloudwatch partitioning and refactor partition buffer 519 cli Add --color option and tty check for ansi colors 623 regex_parser transform Log when regex does not match 618 aws_s3 sink Add filename extension option and fix trailing slash 596 observability Initial rate limit subscriber 494 tokenizer transform Convert “-” into “nil” 580 metric data model Use floats for metrics values 553 log_to_metric transform output multiple metrics from a single log topology adjust transform trait for multiple output events file source log a single warning when ignoring small files 863 config default config path “/etc/vector/vector.toml” 900

14 bug fixes

elasticsearch sink Make the headers and query tables optional. 831 operations Fix docker nightly builds 830 aws_cloudwatch_logs sink encoding = "text" overrides 803 operations Use GNU ld instead of LLVM lld for x86_64-unknown-linux-musl 794 prometheus sink Update Metric::Set usage 756 config reload with unparsable config 752 topology It is now possible to reload a with a non-overlap… 681 log data model don’t serialize MapValue::Null as a string 725 security RUSTSEC-2019-0011 by updating crossbeam-epoch 723 log data model unflatten event before outputting 678 networking Retry requests on timeouts 691 aws_s3 sink retry HttpDispatch errors for s3 and kinesis 651 add_fields transform rename config tag 902 operations Use OpenSSL instead of LibreSSL for x86_64-unknown-linux-musl 904

91 chore

operations Increase docker-release timeout 858 testing Topology test refactoring 748 testing Add missing clickhouse integration test feature 818 udp source Update to tokio-udp v0.1.5 817 udp source Use new UdpFramed 808 testing add test for tokenizer handling multiple spaces testing add build steps as part of overall testing 788 operations Docker build image tweaks 802 operations Restore rust-toolchain after building 792 operations Only notify on failed/fixed master builds 779 keep nightly builds 772 Error type for types conversion 735 Add rust-toolchain file and bump to 1.37 761 docs fix docs generator file ext Ignore topology replace source and transform 740 Hot fix (cargo-fmt) operations Improve x86_64-unknown-linux-musl build 722 fix release-s3 error operations remove filter on nightly builds testing add prometheus histograms test 719 testing Use a locked down version of localstack 720 metric data model use double for storing metric values 717 all new * as a commit title category operations fix build syntax error operations fix nightly builds, release to docker and s3 chore update installer script to use musl statically linked archive operations update vector docker images to reflect their base image 705 operations release nightly instead of on each commit 703 operations make binary stripping an option during the release process, fixes an issue stripping armv7 binaries operations add TARGET env var to musl build archive step Remove extra debug flags operations Fix build-archive script to support multiple features operations Disable armv7 musleabihf build 698 remove Slack since we no longer use Slack remove forum references, we recommend filing a help issue or joining our Slack channel instead Update nom from 0.5.0-beta2 to 0.5 679 operations Use multi-stage builds for vector-slim Docker image 672 operations fix broken build process operations build x86_64-unknown-linux-musl with all features 669 operations add support for armv7 releases, both gnueabihf and musleabihf 662 operations add timberio/vector-alpine docker image 659 operations remove labels support from log_to_metric 657 operations rename call when releasing to latest and edge channels in s3 operations add support for x86_64-unknown-linux-musl releases 654 tech debt Update smallvec to v0.6.10 652 add test around min file size for fingerprinting metric data model Refactor metrics sampling, rename Timer to Histogram 648 testing test thread usage to ensure tests pass on all machines 646 Add semtantic.yml to only check PR titles Fix argument type 639 Fix cloudwatch test by dropping sink 626 Back out change to dash handling File tests timeout instead of hang if channel is stuck open. 612 operations Debian 10 verification step 615 operations Fix debian-slim install line in docs Rename tracing crates 608 testing Reduce test threads from 8 to 4 587 Rename tokio-trace to tracing 578 Add make signoff command in pull request template testing Fix tests Remove makefile from list of languages operations Use printf in the install.sh script operations Bump check-stable box size 555 make sure Cargo.lock gets updated on version bump Ensure new bumped version uses -dev Start v0.4.0-dev add logging when we can’t tail file ignore .tmp files Error types 811 switch to more modern kafka image 875 Fix some typos in file-source crate 871 Fix String error return in elasticsearch config parser 883 Introduce crate-level Result type 884 add commit types for semantic prs Add release-meta make target for preparing release metadata 898 operations update checker docker image too include activesupport operations Generate CHANGELOG.md 903 fix archive name for nightly builds operations dont upload version triple archives to s3 operations use consistent archive names across all release channels cleanup unused variables in release-s3.sh script operations Add release-commit make target 911 testing Remove $VERSION from package-deb 910 operations Remove ARMv7 support – for now 913 operations Add libssl-dev to musl builder 917 operations Remove $VERSION when building archives 918 operations Use vendored OpenSSL for x86_64-unknown-linux-musl CI build 919 operations verify builds by default 914 Prepare v0.4.0 release operations update release-github to include release notes operations use common setup.rb script for boiler plate setup

Download Version 0.4.0

macOS
tar.gz
Windows
zip
Windows (MSI)
msi