Skip to content

crccheck/cloudwatch-to-graphite

Repository files navigation

Cloudwatch-to-Graphite

Cloudwatch-to-Graphite (leadbutt) is a small utility to take metrics from CloudWatch to Graphite.

Installation

Install using pip:

pip install cloudwatch-to-graphite

Usage

Cloudwatch-to-Graphite uses boto, so make sure to follow its configuration instructions. The easiest way to do this is to set up the AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables.

Set up a config.yaml. You can copy the included config.yaml.example. If your graphite server is at graphite.local, you can send metrics like:

leadbutt | nc -q0 graphite.local 2003

If you have several configs you want to switch between, you can specify a custom configuration file and send extra data with:

leadbutt --config-file=production.yaml -n 20 | nc -q0 graphite.local 2003

You can even generate configs on the fly and send it in like:

generate_config_from_inventory | leadbutt --config-file=- | nc -q0 graphite.local 2003

config.yaml

What metrics to pull is in a YAML configuration file. See the example config.yaml.example for an idea of what you can do.

Developing

Install requirements:

pip install -r requirements.txt

Running test suite:

make test

Verifying tests run over all supported Python versions:

tox

Prior Art

Cloudwatch-to-Graphite was inspired by edasque's cloudwatch2graphite. I was looking to expand it, but I wanted to use boto.