This directory houses the Rust libraries used to power Vector Remap Language, or VRL for short. VRL is a language for transforming, routing, and filtering observability data (logs and metrics). Although VRL was originally created for use in Vector, in principle it can be used in other systems.
Library | Purpose |
---|---|
vrl-cli |
VRL has a command-line interface that can be used either under the vector CLI (vector vrl ) or on its own via cargo run |
vrl-compiler |
The VRL compiler converts a system of VRL expressions (parsed from a VRL program) into runnable Rust code |
vrl-core |
Some core bits for the language, including the Target trait that needs to be implemented by events |
vrl-diagnostic |
Compiler and runtime error messages as well as runtime error logging |
vrl-parser |
The VRL parser uses an abstract syntax tree (AST) to convert VRL programs inside of Vector configurations into systems of expressions |
vrl-proptests |
A collection of property-based tests for VRL parser |
vrl-stdlib |
The current standard library of VRL functions |
vrl-tests |
A harness used to run a variety of test cases |
vrl |
A fully packaged version of VRL, bundling together all internal components into a public interface |