Prometheus
Query Prometheus monitoring data to check server metrics, resource usage, and system health. Use when the user asks about server status, disk space, CPU/memo...
Query Prometheus monitoring data to check server metrics, resource usage, and system health. Use when the user asks about server status, disk space, CPU/memo...
Real data. Real impact.
Emerging
Developers
Per week
Open source
Skills give you superpowers. Install in 30 seconds.
Query Prometheus monitoring data from one or multiple instances. Supports federation across multiple Prometheus servers with a single command.
Run the interactive configuration wizard:
cd ~/.openclaw/workspace/skills/prometheus node scripts/cli.js init
This will create a
prometheus.json config file in your OpenClaw workspace (~/.openclaw/workspace/prometheus.json).
# Query default instance node scripts/cli.js query 'up'Query all instances at once
node scripts/cli.js query 'up' --all
List configured instances
node scripts/cli.js instances
By default, the skill looks for config in your OpenClaw workspace:
~/.openclaw/workspace/prometheus.json
Priority order:
PROMETHEUS_CONFIG environment variable~/.openclaw/workspace/prometheus.json~/.openclaw/workspace/config/prometheus.json./prometheus.json (current directory)~/.config/prometheus/config.jsonCreate
prometheus.json in your workspace (or use node cli.js init):
{ "instances": [ { "name": "production", "url": "https://prometheus.example.com", "user": "admin", "password": "secret" }, { "name": "staging", "url": "http://prometheus-staging:9090" } ], "default": "production" }
Fields:
name — unique identifier for the instanceurl — Prometheus server URLuser / password — optional HTTP Basic Auth credentialsdefault — which instance to use when none specifiedFor single-instance setups, you can use environment variables:
export PROMETHEUS_URL=https://prometheus.example.com export PROMETHEUS_USER=admin # optional export PROMETHEUS_PASSWORD=secret # optional
| Flag | Description |
|---|---|
| Path to config file |
| Target specific instance |
| Query all configured instances |
# Interactive configuration wizard node scripts/cli.js init
cd ~/.openclaw/workspace/skills/prometheusQuery default instance
node scripts/cli.js query 'up'
Query specific instance
node scripts/cli.js query 'up' -i staging
Query ALL instances at once
node scripts/cli.js query 'up' --all
Custom config file
node scripts/cli.js query 'up' -c /path/to/config.json
Disk space usage:
node scripts/cli.js query '100 - (node_filesystem_avail_bytes / node_filesystem_size_bytes * 100)' --all
CPU usage:
node scripts/cli.js query '100 - (avg by (instance) (irate(node_cpu_seconds_total{mode="idle"}[5m])) * 100)' --all
Memory usage:
node scripts/cli.js query '(node_memory_MemTotal_bytes - node_memory_MemAvailable_bytes) / node_memory_MemTotal_bytes * 100' --all
Load average:
node scripts/cli.js query 'node_load1' --all
node scripts/cli.js instances
Output:
{ "default": "production", "instances": [ { "name": "production", "url": "https://prometheus.example.com", "hasAuth": true }, { "name": "staging", "url": "http://prometheus-staging:9090", "hasAuth": false } ] }
# List all metrics matching pattern node scripts/cli.js metrics 'node_memory_*'Get label names
node scripts/cli.js labels --all
Get values for a label
node scripts/cli.js label-values instance --all
Find time series
node scripts/cli.js series '{name=~"node_cpu_.", instance=~".:9100"}' --all
Get active alerts
node scripts/cli.js alerts --all
Get scrape targets
node scripts/cli.js targets --all
When using
--all, results include data from all instances:
{ "resultType": "vector", "results": [ { "instance": "production", "status": "success", "resultType": "vector", "result": [...] }, { "instance": "staging", "status": "success", "resultType": "vector", "result": [...] } ] }
Errors on individual instances don't fail the entire query — they appear with
"status": "error" in the results array.
| Metric | PromQL Query |
|---|---|
| Disk free % | |
| Disk used % | |
| CPU idle % | |
| Memory used % | |
| Network RX | |
| Network TX | |
| Uptime | |
| Service up | |
[5m] for rate calculationsdata.result containing the resultshost:port format--all, queries run in parallel for faster resultsNo automatic installation available. Please visit the source repository for installation instructions.
View Installation Instructions1,500+ AI skills, agents & workflows. Install in 30 seconds. Part of the Torly.ai family.
© 2026 Torly.ai. All rights reserved.