15 releases

Uses old Rust 2015

0.9.0 Jun 13, 2018
0.8.17 May 22, 2018
0.8.16 Mar 7, 2018
0.8.12 Jan 31, 2018
0.5.4 Feb 21, 2017

#242 in Debugging

Download history 54/week @ 2024-02-23 8/week @ 2024-03-01 3/week @ 2024-03-08

65 downloads per month

MIT license

1.5MB
16K SLoC

cernan - telemetry aggregation and shipping, last up the ladder

Build Status Codecov

Eugene Cernan, Apollo 17 EVA

Cernan is a telemetry and logging aggregation server. It exposes multiple interfaces for ingestion and can emit to multiple aggregation sources while doing in-flight manipulation of data. Cernan has minimal CPU and memory requirements and is intended to service bursty telemetry without load shedding. Cernan aims to be reliable and convenient to use, both for application engineers and operations staff.

Why you might choose to use cernan:

  • You need to ingest telemetry from multiple protocols.
  • You need to multiplex telemetry over aggregation services.
  • You want to convert log lines into telemetry.
  • You want to convert telemetry into log lines.
  • You want to transform telemetry or log lines in-flight.

If you'd like to learn more, please do have a look in our wiki.

Quickstart

To build cernan you will need to have Rust. This should be as simple as:

> curl -sSf https://static.rust-lang.org/rustup.sh | sh

Once Rust is installed, from the root of this project run:

> cargo run -- --config examples/configs/quickstart.toml

and you're good to go. Cernan will report to stdout what ports it is now listening on. If you would like to debug your service--to determine if the telemetry you intend is issued--run cernan like:

> cargo run -- -vvvv --config examples/configs/quickstart.toml

and full trace output will be reported to stdout.

Usage

The cernan server has a few command-line toggles to control its behaviour:

-C, --config <config>    The config file to feed in.
-v               Turn on verbose output.

The verbose flag -v allows multiples, each addition cranking up the verbosity by one. So:

  • -v -- error, warning
  • -vv -- error, warning, info
  • -vvv -- error, warning, info, debug
  • -vvvv -- error, warning, info, debug, trace

License

cernan is copyright © 2017-2018 Postmates, Inc and released to the public under the terms of the MIT license.

Dependencies

~61MB
~1M SLoC