0.26 Upgrade Guide
An upgrade guide that addresses breaking changes in 0.26.0
Vector’s 0.26.0 release includes breaking changes:
- Removal of
check_fieldscondition type - Removal of
lanesparameter forroutetransform - Removal of
geoiptransform
We cover them below to help you upgrade quickly:
Upgrade guide
Breaking changes
Removal of check_fields condition type
Nearly two years ago, as part of the 0.12.0 release, we had deprecated many transforms and conditions after initially releasing Vector Remap Language. Over time, many of these transforms and conditions were fully removed, but some of them were left as the performance gap between them and their equivalent usage in VRL had significant performance differences.
Since then, many of these performance gaps have been significantly reduced, if not closed entirely.
After taking another look at check_fields, it now has less than a 10% performance difference
compared to the equivalent VRL, which we feel is close enough to allow us to finally remove support
for check_fields.
As we don’t always have a full view into what features of Vector are being used, please do not
hesitate to let us know if the removal of check_fields, and having to switch over to using VRL,
represents a significant performance regression for you.
Removal of lanes parameter for route transform
Similarly to the removal of check_fields, the lanes parameter of the route transform is a
holdover from when the transform was originally called swimlanes. It is an alias to the route
parameter used to configure the actual routing logic for the transform. We deprecated being able to
reference the route transform by its former name of swimlanes in the 0.24.0 release, and removed
the ability entirely in 0.25.0.
In following with removing the swimlanes alias, we’re now removing the lanes alias as well to
finally drop all remaining ties to the original swimlanes name.
A simple change of the field name in your configuration is all that has to change:
transforms:
my_route:
type: route
lanes: # <-- change this to "route"
route_a: ..
Removal of geoip transform
The geoip transform was deprecated in 0.24.0 and has now been removed. You can
get the same functionality through a remap transform with geoip enrichment
tables. These can be used
with VRL’s enrichment table functions to
enrich events using a GeoIP database.
For example,
transforms:
geoip:
type: geoip
inputs:
- with_ip_info
database: /etc/vector/GeoLite2-City.mmdb
source: ip_address
target: geoip
can be migrated as:
enrichment_tables:
geoip_table:
path: /etc/vector/GeoLite2-City.mmdb
type: geoip
transforms:
geoip:
type: remap
inputs:
- with_ip_info
source: |-
.geoip = get_enrichment_table_record!("geoip_table",
{
"ip": .ip_address
}
)
(credit to Jacq for this migration example)