Sending graphite metrics to blueflood
Project description
# Description
Graphite _'backend'_. Twisted-based server accepts graphite source metrics and forward them to [blueflood][blueflood-git].
Server accepts only pickle protocols metrics (as it's the only protocol used by graphite `carbon-relay`.)
It does very primitive _'caching'_: aggregates all metrics and flushes them in regular intervals.
# Dependencies
* twisted
* mock
* pytest
* txKeystone
# Installation
```
git clone https://github.com/rackerlabs/blueflood-carbon-forwarder.git
cd blueflood-carbon-forwarder
python setup.py install
```
# Running
```
twistd blueflood-forward
```
| Switch | Description | default |
| ----- | ------- | --------- |
| -e | Endpoint to listen on for pickle protocol metrics | tcp:2004 |
| -i | Metrics send interval, sec | 30.0 |
| -b | Blueflood address | http://localhost:19000 |
| -t | Tenant ID | tenant |
| -p | Prefix to be prepended to metrics name | metric_prefix |
| --ttl | TimeToLive value for metrics, sec | 86400 |
| -u | Keystone user | |
| -k | Keystone key | |
| --auth-url | Keystone token URL | |
In case you need no authentication leave `-u`/`--user` command line argument empty (default value).
# Sending metrics
To send a test metric to the twistd server you started above, you can run the following:
```
python tests/scripts/sendPickle.py
```
Modify the script accordingly for your local testing
# Configuration
Configuration is done with command line arguments passed to twistd daemon when running:
```
twistd -n -l - blueflood-forward --help
```
#Logging
Logging can be controlled using LogObserver provided along or you can use your own LogObserver
```
twistd --logger carbonforwarderlogging.forwarder_log_observer.get_log_observer blueflood-forward
```
[blueflood-git]: https://github.com/rackerlabs/blueflood "blueflood"
# Running unit tests
```
py.test
```
Graphite _'backend'_. Twisted-based server accepts graphite source metrics and forward them to [blueflood][blueflood-git].
Server accepts only pickle protocols metrics (as it's the only protocol used by graphite `carbon-relay`.)
It does very primitive _'caching'_: aggregates all metrics and flushes them in regular intervals.
# Dependencies
* twisted
* mock
* pytest
* txKeystone
# Installation
```
git clone https://github.com/rackerlabs/blueflood-carbon-forwarder.git
cd blueflood-carbon-forwarder
python setup.py install
```
# Running
```
twistd blueflood-forward
```
| Switch | Description | default |
| ----- | ------- | --------- |
| -e | Endpoint to listen on for pickle protocol metrics | tcp:2004 |
| -i | Metrics send interval, sec | 30.0 |
| -b | Blueflood address | http://localhost:19000 |
| -t | Tenant ID | tenant |
| -p | Prefix to be prepended to metrics name | metric_prefix |
| --ttl | TimeToLive value for metrics, sec | 86400 |
| -u | Keystone user | |
| -k | Keystone key | |
| --auth-url | Keystone token URL | |
In case you need no authentication leave `-u`/`--user` command line argument empty (default value).
# Sending metrics
To send a test metric to the twistd server you started above, you can run the following:
```
python tests/scripts/sendPickle.py
```
Modify the script accordingly for your local testing
# Configuration
Configuration is done with command line arguments passed to twistd daemon when running:
```
twistd -n -l - blueflood-forward --help
```
#Logging
Logging can be controlled using LogObserver provided along or you can use your own LogObserver
```
twistd --logger carbonforwarderlogging.forwarder_log_observer.get_log_observer blueflood-forward
```
[blueflood-git]: https://github.com/rackerlabs/blueflood "blueflood"
# Running unit tests
```
py.test
```
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Close
Hashes for blueflood-carbon-forwarder-0.3.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9dd0cb4551c041974246150360d46c798a35f6cd0704bf868284e1ed5fc56860 |
|
MD5 | 30634f2638e9602e2206d5bb12e68ac8 |
|
BLAKE2b-256 | b54b3c7b169bdace64829140359121c5b4df3d47b4df510198b0d7300c7d5a8f |