Тази седмица излезе версия 0.3.0 на свободния инструмент Vector, предназначен за събиране, преобразуване и запазване на данни от логове, метрики и събития.
Написан на Rust, той се отличава с висока производителност и ниска консумация на оперативна памет в сравнение с подобни решения. Освен това, голямо внимание се обръща на функции, свързани с надеждността, по-специално въможностите за запазване на неуспешно изпратените събития в буфер на диска и ротация на файловете.
Архитектурно Vector е маршрутизатор на събития, който приема съобщения от едно или повече източници, опционално прилагащи трансформации върху тези съобщения преобразувания, и ги изпраща в един или повече стока.
Реализирани са следните
Източници
- file — непрекъснато четене на събития от един или повече локални файлове;
- statsd — непрекъснато получаване на събития по протокола StatsD чрез UDP;
- stdin — непрекъснато четене на събития от стандартния вход;
- syslog — непрекъснато получаване на събития по протокола Syslog 5424;
- tcp — непрекъснато четене на събития от TCP сокет;
- vector — получаване на събития от друг екземпляр на Vector.
Преобразувания
- add_fields — добавяне на допълнителни полета в събития;
- field_filter — филтриране на събития по стойността на полето;
- grok_parser — разбиране на стойности на полета във формат Grok;
- json_parser — разбиране на стойности на полета във формат JSON;
- lua — преобразуване на събития чрез скриптове на Lua;
- regex_parser — преобразуване на стойности на полета с регулярни изрази;
- remove_fields — премахване на полета от събития;
- tokenizer — разбиване на стойности на полета на токени.
Стоки
- aws_cloudwatch_logs — изпращане на логове в AWS CloudWatch;
- aws_kinesis_streams — изпращане на събития в AWS Kinesis;
- aws_s3 — изпращане на събития на партиди в AWS S3;
- blackhole — унищожаване на събития, предназначено за тестване;
- console — изпращане на събития в стандартния изход или в стандартния поток за грешки;
- elasticsearch — изпращане на събития в ElasticSearch;
- http — изпращане на събития на произволен HTTP URL;
- kafka — изпращане на събития в Kafka;
- splunk_hec — изпращане на събития в Splunk HTTP Collector;
- tcp — изпращане на събития в TCP сокет;
- vector — изпращане на събития в друг екземпляр на Vector.
В версия 0.3.0 беше добавена поддръжка за Lua, Grok, регулярни изрази и токенизатор.
Източник: linux.org.ru
