Esta semana se lanzó la versión 0.3.0 de la utilidad gratuita Vector, diseñada para recopilar, transformar y guardar datos de registro, métricas y eventos.
Al estar escrito en lenguaje Rust, se caracteriza por un alto rendimiento y un bajo consumo de RAM en comparación con sus análogos. Además, se presta mucha atención a las funciones relacionadas con la corrección, en particular, la capacidad de guardar eventos no enviados en un búfer del disco y rotar archivos.
Arquitectónicamente, Vector es un enrutador de eventos que recibe mensajes de uno o más de fuentes, aplicándose opcionalmente sobre estos mensajes transformacionesy enviarlos a uno o más desagües.
Se han implementado los siguientes
fuentes
- archivo: lectura continua de eventos de uno o más archivos locales;
- statsd: recepción continua de eventos a través del protocolo StatsD a través de UDP;
- stdin: lectura continua de eventos del flujo de entrada estándar;
- syslog: recepción continua de eventos a través del protocolo Syslog 5424;
- tcp: lectura continua de eventos desde un socket TCP;
- vector: recibir eventos de otra instancia de Vector.
Transformaciones
- add_fields: agregar campos adicionales a los eventos;
- field_filter — filtrado de eventos por valor de campo;
- grok_parser: analiza los valores de los campos en formato Grok;
- json_parser: analiza los valores de los campos en formato JSON;
- lua: conversión de eventos mediante scripts Lua;
- regex_parser: conversión de valores de campo mediante expresiones regulares;
- remove_fields — eliminar campos de eventos;
- tokenizer: dividir los valores de los campos en tokens.
Acciones
- aws_cloudwatch_logs: envía registros a AWS CloudWatch;
- aws_kinesis_streams: envío de eventos a AWS Kinesis;
- aws_s3: envío de eventos en lotes a AWS S3;
- agujero negro: destrucción de eventos destinados a pruebas;
- consola: envía eventos a salida estándar o error estándar;
- elasticsearch: envío de eventos a ElasticSearch;
- http: envío de eventos a una URL HTTP arbitraria;
- kafka: envío de eventos a Kafka;
- splunk_hec: envío de eventos al recopilador HTTP de Splunk;
- tcp: envío de eventos a un socket TCP;
- vector: envía eventos a otra instancia de Vector.
La versión 0.3.0 agregó soporte para Lua, Grok, expresiones regulares y un tokenizador.
Fuente: linux.org.ru