Exposes all the selected ScaleIO / VxFlex / PowerFlex statistics to a Prometheus endpoint
- 100% Rust
- User definable statistics via
metric_query_selection.json
see REST API Reference Guide - Prometheus customizable metric naming via
metric_definition.json
Grafana version 8+ required
# Default settings
docker run -d --name sio2prom -h sio2prom -e IP=1.1.1.1 -e AUTH_USR=mon -e AUTH_PWD=mon -p 8080:8080 syepes/sio2prom
# Custom / local configuration files: $PWD/cfgmetric_definition.json $PWD/cfg/metric_query_selection.json
docker run -d --name sio2prom -h sio2prom -e IP=1.1.1.1 -e AUTH_USR=mon -e AUTH_PWD=mon -v $PWD/cfg:/app/cfg/ -p 8080:8080 syepes/sio2prom
# Metrics
curl -v -i http://localhost:8080/metrics
git clone https://github.com/syepes/sio2prom.git && cd sio2prom
cargo build --release (nightly)
target/*/release/sio2prom --help
System: {clu_id="", clu_name=""}
Sdr: {clu_id="", clu_name="", sdr_id="", sdr_name=""}
Sdc: {clu_id="", clu_name="", sdc_id="", sdc_name=""}
ProtectionDomain: {clu_id="", clu_name="", pdo_id="", pdo_name=""}
Sds: {clu_id="", clu_name="", pdo_id="", pdo_name="", sds_id="", sds_name=""}
StoragePool: {clu_id="", clu_name="", pdo_id="", pdo_name="", sto_id="", sto_name=""}
Volume: {clu_id="", clu_name="", pdo_id="", pdo_name="", sto_id="", sto_name="", vol_id="", vol_name=""}
Device: {clu_id="", clu_name="", pdo_id="", pdo_name="", sto_id="", sto_name="", sds_id="", sds_name="", dev_id="", dev_name="", dev_path=""}