Prometheus Graphite Exporter
Project description
graphite_exporter
Prometheus Graphite Exporter
Installation
pip install graphite_exporter
Usage
How to run
can use python -m
after install graphite_exporter
>> python3 -m graphite_exporter -h
usage: __main__.py [-h] [-i IP] [-c CONFIG] [-p PORT] [-P LISTEN_PORT]
[-l LOG_LEVEL] [-L APSCHEDULER_LOG_LEVEL]
[-s SYSTEM_METRIC]
optional arguments:
-h, --help show this help message and exit
-i IP, --ip IP graphite web ip. eg: 127.0.0.1 or 127.0.0.1,127.0.0.2
-c CONFIG, --config CONFIG
Metric config path
-p PORT, --port PORT graphite web port
-P LISTEN_PORT, --listen_port LISTEN_PORT
graphite exporter listen port
-l LOG_LEVEL, --log_level LOG_LEVEL
log level
-L APSCHEDULER_LOG_LEVEL, --apscheduler_log_level APSCHEDULER_LOG_LEVEL
apscheduler log level, default warning
-s SYSTEM_METRIC, --system_metric SYSTEM_METRIC
Select the system metric to use. System Metric: carbon
_update_operations,carbon_metrics_received,carbon_comm
itted_points,carbon_points_per_update,carbon_cpu_usage
,carbon_creates
Custom Metric and Config
The graphite_exporter
can be configured to translate specific dot-separated graphite metrics into labeled Prometheus metrics via YAML configuration file.
An example configuration:
# base param
global:
prefix: graphite # prometheus metric prefix
interval: 1m # collection data interval
from: -1min # graphite web requests param. learn more: https://graphite.readthedocs.io/en/latest/render_api.html#from-until
until: now # graphite web requests param. learn more: https://graphite.readthedocs.io/en/latest/render_api.html#from-until
timeout: 10 # requests timeout
metrics:
- metric: example.*.*.user # graphite metric
name: user_cnt # prometheus metric name
doc: user cnt # prometheus metric doc
prefix: gaphite1
interval: 2m
from: -10min
until: now
timeout: 20
labels: # prometheus metric tag info:
service: ${0} # service: ${0} -> {service='example'}
app: ${1}
project: ${2}
- metric: example.*.app1.dau
name: dau
doc: dau
# No base parameters are set,
# this metric base param will auto set from global base param
labels:
service_project: ${0}-${2} # service_project: ${0}-${2} -> {service_project='example-app1'}
app: ${1}
project: ${2}
- metric: aliasByMetric(example.*.*.dau) # graphite return metric name: dau
name: dau
doc: dau
labels:
metric: dau # metric only be one value: dau
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
graphite_exporter-1.2.1.tar.gz
(11.1 kB
view hashes)
Built Distribution
Close
Hashes for graphite_exporter-1.2.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | daeb7d6c535bf3053822c5eaf563dd3cc00ab774a351a8c16d23f17f6938c25b |
|
MD5 | 6dabe6035ef287be9fedadec444cc771 |
|
BLAKE2b-256 | 362bc90ea140ffb956005b2d7ee8ffad8317aafad64c9fe91715b7524ee29866 |