All in-repo path references (AGENTS.md, README, old scripts, report artifacts,
test code paths) rewritten in the same commit; focused-test map extended for
.gitignore, old/scripts/*, dankclaw/comfyui/*, and report/* per this repo's
own convention ('add one before committing'). Obsidian wikilinks are
title-based and unaffected.
57 lines
1.7 KiB
Markdown
57 lines
1.7 KiB
Markdown
# Prometheus
|
|
|
|
Prometheus collects metrics from every service on Dankclaw by scraping their `/metrics` endpoints. It feeds the Grafana dashboards. The `node-exporter` containers may add podman/cgroup metrics for full host visibility.
|
|
|
|
**Host:** Dankclaw — **Hostname:** `prometheus.dankclaw.local` — **Port:** 9090 — **Docs:** https://prometheus.io/docs
|
|
|
|
## Facts
|
|
|
|
| Item | Value |
|
|
|------|-------|
|
|
| Image | `docker.io/prom/prometheus:latest` |
|
|
| Port | 9090 (host) → 9090 (container) |
|
|
| Config | `/etc/prometheus/prometheus.yml` (bind mount) |
|
|
| Data volume | TSDB |
|
|
| Retention | `--storage.tsdb.retention.time=30d` |
|
|
|
|
## prometheus.yml Targets
|
|
|
|
```yaml
|
|
scrape_configs:
|
|
- job_name: "prometheus"
|
|
static_configs:
|
|
- targets: ["localhost:9090"]
|
|
|
|
- job_name: "comfyui"
|
|
static_configs:
|
|
- targets: ["comfyui:8188"]
|
|
|
|
- job_name: "node"
|
|
static_configs:
|
|
- targets: ["node-exporter:9100"]
|
|
```
|
|
|
|
Allow the `/metrics` endpoint on each service where the exporter exists. For services without a native exporter, use the Prometheus `blackbox` exporter (probe mode) to check up/down and latency.
|
|
|
|
## Volumes
|
|
|
|
| Container path | Host path (convention) |
|
|
|----------------|------------------------|
|
|
| `/etc/prometheus` | `/opt/prometheus/config` |
|
|
| `/prometheus` | `/opt/prometheus/data` |
|
|
|
|
## Healthcheck
|
|
|
|
Prometheus responds on `/-/healthy` with 200.
|
|
|
|
## Gotchas
|
|
|
|
- Keep scrapes modest for a small homelab; too many targets bloat the TSDB.
|
|
- Use recording rules for heavy queries (see [[Grafana]]).
|
|
- Set a retention policy or the data volume grows without bound.
|
|
|
|
## See Also
|
|
|
|
- [[Dankclaw Stack]]
|
|
- [[Grafana]] — the dashboard frontend
|
|
- [[Observability]] — the whole stack |