Vector's pipeline model is based on a directed acyclic graph of components that contains independent subgraphs. Events must flow in a single direction from sources to sinks, and cannot create cycles. Each component in the graph can produce zero or more events.
Configuration is checked during compile-time (Vector boot) to present simple mistakes and enforce the DAG properties.
Vector's configured pipeline can be adjusted in real-time without restarting Vector.
Vector supports hot reloading to apply
any configuration changes. This is achieved by sending a
signal to Vector's process.
Vector also includes an API that allows for real-time observation and manipulation of a running Vector instance.