8 releases

0.3.3 May 23, 2024
0.3.2 May 17, 2024
0.3.1 Jan 4, 2023
0.2.12 Dec 17, 2021
0.2.9 Jan 16, 2020

#317 in Database interfaces

36 downloads per month

ISC license

320KB
7.5K SLoC

Flowgger

CI Build License: BSD2

New major version: 0.3.0 (2022-03-14)

Breaking Changes


Flowgger is a fast, simple and lightweight data collector written in Rust.

It reads log entries over a given protocol, extracts them, decodes them using a given format, re-encodes them into a different format, and asynchronously pushes the result into a remote data store.

Flowgger is designed to be:

  • Paranoid: it carefully validates input data to prevent injection of malformed/incomplete records down the chain.
  • Safe: written in Rust, without any unsafe code.
  • Fast: even though messages are systematically parsed and validated, Flowgger is orders of magnitude faster than Logstash and Fluentd.
  • Standalone: it comes as a single executable file, and doesn't require a JVM.

Flowgger supports common input types: stdin, UDP, TCP, TLS and Redis, as well as multiple input formats: JSON (GELF), LTSV, Cap'n Proto and RFC5424. Normalized messages can be sent to Kafka, Graylog, to downstream Flowgger servers, or to other log collectors for further processing.

Jump to the Flowgger documentation

Dependencies

~7–37MB
~547K SLoC