Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/postmates/cernan

telemetry aggregation and shipping, last up the ladder
https://github.com/postmates/cernan

graphite influxdb metrics prometheus statsd telemetry telemetry-aggregation

Last synced: about 2 months ago
JSON representation

telemetry aggregation and shipping, last up the ladder

Awesome Lists containing this project

README

        

# Now Archived and Forked
_cernan_ will not be maintained in this repository going forward. Please use, create issues on, and make PRs to the fork of _cernan_ located [here](https://github.com/blt/cernan).

# cernan - telemetry aggregation and shipping, last up the ladder

[![Build Status](https://travis-ci.com/postmates/cernan.svg?branch=master)](https://travis-ci.com/postmates/cernan) [![Codecov](https://img.shields.io/codecov/c/github/postmates/cernan.svg)](https://codecov.io/gh/postmates/cernan)

![Eugene Cernan, Apollo 17 EVA](Gene-Cernan-1-578x485.jpg)

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](https://github.com/postmates/cernan/wiki/).

# Quickstart

To build cernan you will need to
have [Rust](https://www.rust-lang.org/en-US/). 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 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.