Skip to content
A fast data collector in Rust
Rust Other
  1. Rust 98.8%
  2. Other 1.2%
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
ci Github Releases (#53) Jan 8, 2020
docker Lower docker image size and switch to OpenSSL in docker image (#50) Oct 7, 2019
tests/resources Config operational improvements (#19) Sep 6, 2019
.gitignore File rotation implementation and unit test coverage improved (#18) Sep 6, 2019
.travis.yml Github Releases (#53) Jan 8, 2020
Cargo.toml Bumping package version (should have been done with previous changes) ( Jan 16, 2020
LICENSE Switch license to ISC Apr 19, 2019 updates Sep 17, 2019 Update deps, bring capnpc to version 0.8 Jan 12, 2017
flowgger.png Rename the .toml example, add the logo Aug 11, 2015
flowgger.toml Feature/rfc3164 prepend (#43) Sep 17, 2019
record.capnp Restore the previous record_capnp file Jan 12, 2017


Build Status License: BSD2

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

You can’t perform that action at this time.