W tym tygodniu wydano wersję 0.3.0 darmowej aplikacji Vector, przeznaczonej do zbierania, przetwarzania i przechowywania danych z logów, metryk i zdarzeń.
Napisany w języku Rust, charakteryzuje się wysoką wydajnością i niskim zużyciem pamięci RAM w porównaniu z odpowiednikami. Ponadto szczególną uwagę zwrócono na funkcje związane z poprawnością, w szczególności możliwości przechowywania nieprzesłanych zdarzeń w buforze na dysku oraz rotacji plików.
Architektonicznie Vector jest routerem zdarzeń, przyjmującym wiadomości z jednego lub kilku źródeł, ewentualnie stosującym na tych wiadomościach przetworzenia, i wysyłającym je do jednego lub kilku ujść.
Wdrożono następujące
Źródła
- file — ciągłe odczytywanie zdarzeń z jednego lub kilku lokalnych plików;
- statsd — ciągłe odbieranie zdarzeń za pomocą protokołu StatsD przez UDP;
- stdin — ciągłe odczytywanie zdarzeń z domyślnego strumienia wejściowego;
- syslog — ciągłe odbieranie zdarzeń za pomocą protokołu Syslog 5424;
- tcp — ciągłe odczytywanie zdarzeń z gniazda TCP;
- vector — odbieranie zdarzeń z innej instancji Vector.
Transformacje
- add_fields — dodawanie dodatkowych pól do zdarzeń;
- field_filter — filtracja zdarzenia według wartości pola;
- grok_parser — analiza wartości pól w formacie Grok;
- json_parser — analiza wartości pól w formacie JSON;
- lua — przetwarzanie zdarzeń za pomocą skryptów Lua;
- regex_parser — przetwarzanie wartości pól za pomocą wyrażeń regularnych;
- remove_fields — usuwanie pól ze zdarzeń;
- tokenizer — rozdzielanie wartości pól na tokeny.
Strumienie
- aws_cloudwatch_logs — wysyłanie logów do AWS CloudWatch;
- aws_kinesis_streams — wysyłanie zdarzeń do AWS Kinesis;
- aws_s3 — wysyłanie zdarzeń w partiach do AWS S3;
- blackhole — niszczenie zdarzeń, przeznaczone do testów;
- console — wysyłanie zdarzeń do domyślnego strumienia wyjściowego lub strumienia błędów;
- elasticsearch — wysyłanie zdarzeń do ElasticSearch;
- http — wysyłanie zdarzeń na dowolny adres URL HTTP;
- kafka — wysyłanie zdarzeń do Kafka;
- splunk_hec — wysyłanie zdarzeń do Splunk HTTP Collector;
- tcp — wysyłanie zdarzeń do gniazda TCP;
- vector — wysyłanie zdarzeń do innej instancji Vector.
W wersji 0.3.0 dodano wsparcie dla Lua, Grok, wyrażeń regularnych i tokenizera.
Źródło: linux.org.ru
