- OpenMLDB Prometheus Exporter exposing metrics
- OpenMLDB mixin provides well-configured examples for Prometheus server and Grafana dashboard
- A runnable OpenMLDB instance that is accessible from your network
- OpenMLDB version >= 0.5.0
- Python >= 3.8
You can run openmdlb-exporter from docker, or install and run directly from PyPI.
Use docker
docker run ghcr.io/4paradigm/openmldb-exporter \
--config.zk_root=<openmldb_zk_addr> \
--config.zk_path=<openmldb_zk_path>
Install and Run from PyPI
pip install openmldb-exporter
# start
openmldb-exporter \
--config.zk_root=<openmldb_zk_addr> \
--config.zk_path=<openmldb_zk_path>
And replace <openmdlb_zk_addr>
and <openmldb_zk_path>
to correct value. Afterwards, you can check metrics with curl:
curl http://<IP>:8000/metrics
<IP>
is docker container IP, or 127.0.0.1
if installing from PyPI.
Example output
# HELP openmldb_connected_seconds_total duration for a component conncted time in seconds
# TYPE openmldb_connected_seconds_total counter
openmldb_connected_seconds_total{endpoint="172.17.0.15:9520",role="tablet"} 208834.70900011063
openmldb_connected_seconds_total{endpoint="172.17.0.15:9521",role="tablet"} 208834.70700001717
openmldb_connected_seconds_total{endpoint="172.17.0.15:9522",role="tablet"} 208834.71399998665
openmldb_connected_seconds_total{endpoint="172.17.0.15:9622",role="nameserver"} 208833.70000004768
openmldb_connected_seconds_total{endpoint="172.17.0.15:9623",role="nameserver"} 208831.70900011063
openmldb_connected_seconds_total{endpoint="172.17.0.15:9624",role="nameserver"} 208829.7230000496
# HELP openmldb_connected_seconds_created duration for a component conncted time in seconds
# TYPE openmldb_connected_seconds_created gauge
openmldb_connected_seconds_created{endpoint="172.17.0.15:9520",role="tablet"} 1.6501813860467942e+09
openmldb_connected_seconds_created{endpoint="172.17.0.15:9521",role="tablet"} 1.6501813860495396e+09
openmldb_connected_seconds_created{endpoint="172.17.0.15:9522",role="tablet"} 1.650181386050323e+09
openmldb_connected_seconds_created{endpoint="172.17.0.15:9622",role="nameserver"} 1.6501813860512116e+09
openmldb_connected_seconds_created{endpoint="172.17.0.15:9623",role="nameserver"} 1.650181386051238e+09
openmldb_connected_seconds_created{endpoint="172.17.0.15:9624",role="nameserver"} 1.6501813860512598e+09
You can view the help from:
openmldb-exporter -h
--config.zk_root
and --config.zk_path
are mandatory.
Available options
usage: openmldb-exporter [-h] [--log.level LOG.LEVEL] [--web.listen-address WEB.LISTEN_ADDRESS]
[--web.telemetry-path WEB.TELEMETRY_PATH] [--config.zk_root CONFIG.ZK_ROOT]
[--config.zk_path CONFIG.ZK_PATH] [--config.interval CONFIG.INTERVAL]
OpenMLDB exporter
optional arguments:
-h, --help show this help message and exit
--log.level LOG.LEVEL
config log level, default WARN
--web.listen-address WEB.LISTEN_ADDRESS
process listen port, default 8000
--web.telemetry-path WEB.TELEMETRY_PATH
Path under which to expose metrics, default metrics
--config.zk_root CONFIG.ZK_ROOT
endpoint to zookeeper, default 127.0.0.1:6181
--config.zk_path CONFIG.ZK_PATH
root path in zookeeper for OpenMLDB, default /
--config.interval CONFIG.INTERVAL
interval in seconds to pull metrics periodically, default 30.0
- Same in Requirements
- poetry as build tool
-
Setup python dependencies:
poetry install
-
Start openmldb exporter
poetry run openmldb-exporter
Pass in necessary flags after
openmldb-exporter
. Runpoetry run openmldb-exporter --help
to get the help info.
OpenMLDB Exporter version | OpenMLDB supported version | Grafana Dashboard revision | Explaination |
---|---|---|---|
>= 0.9.0 | >= 0.8.4 | >=4 | OpenMLDB removed deploy response time in database since 0.8.4 |
< 0.9.0 | >= 0.5.0, < 0.8.4 | 3 |
-
0.9.0
- Features
- BREAKING support OpenMLDB 0.8.4. OpenMLDB 0.8.4 removed deploy response time, please use openmldb-exporter >= 0.9.0. Ref Compatibility info above
- BREAKING update grafana dashboard config, use the latest revision (4 or later) if you upgrade OpenMLDB cluster >=0.8.4. For legacy OpenMLDB <= 0.8.3, select revison 3. You can also download corresponding Grafana dashboard from Github Release asserts
- Tests
- Remove deploy response time related tests
- Chores
- update deps
- add CI jobs
- Features
-
0.8.2
- Chores
- deps: restrict OpenMLDB version < 0.8.4
- Chores
-
0.8.1
- Features
- update openmldb-exporter docker image
- Chores
- doc and workflow updates
- Features
-
0.8.0
- Features
- Upgrade OpenMLDB SDK to v0.8
- improve test code
- Features
-
0.7.1
- Features
- Upgrade OpenMLDB SDK to v0.7
- Upgrade prometheus client to 0.16
- Features
-
0.6.0
- Features
- Depends on OpenMLDB SDK v0.6
- Features