През тази седмица излезе версия 0.3.0 на безплатния инструмент Vector, предназначен за събиране, преобразуване и съхранение на данни от логове, метрики и събития.
Написан на Rust, той предлага висока производителност и ниско потребление на RAM в сравнение с аналогични решения. Освен това, специално внимание е отделено на функциите, свързани с коректността, особено възможностите за кеширане на непратени събития на диска и ротация на файловете.
Архитектурно, Vector е роутер на събития, който приема съобщения от един или повече източници, опционално прилагаща трансформации върху тези съобщения и изпращаща ги в един или повечеприемници Vector е заместител на filebeat и logstash, може да изпълнява и двете роли (да получава и изпраща логове), повече информация можете да намерите в тяхната.
Реализирани са следните
Източници
- 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
