blob: b7f2030a00f861eeb9e3c49656ffe46a744713d9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
# Grafana Dashboard
A dashboard is provided that shows all Epimetheus test metrics.
## Panels
1. Request Rate (line graph)
2. Total Requests (stat)
3. Active Connections (gauge with thresholds)
4. Temperature (gauge with thresholds)
5. Request Duration Histogram (p50, p90, p99)
6. Average Request Duration (stat)
7. Jobs Processed by Type (bar gauge)
8. Jobs Status Breakdown (table)
Auto-refresh: 10 seconds. Time range: last 15 minutes (configurable). Optimized for dark theme.
## Deployment
### Option 1: Kubernetes ConfigMap (recommended)
If you have a manifest that defines the dashboard as a ConfigMap with Grafana’s discovery label:
```bash
kubectl apply -f ../prometheus/epimetheus-dashboard.yaml
```
Grafana will pick it up automatically.
### Option 2: Manual import
1. Port-forward Grafana: `kubectl port-forward -n monitoring svc/prometheus-grafana 3000:80`
2. Open http://localhost:3000
3. Dashboards → Import → Upload `grafana-dashboard.json`
### Option 3: Deploy script
```bash
./scripts/deploy-dashboard.sh
# Or with credentials:
GRAFANA_URL="http://localhost:3000" GRAFANA_USER="admin" GRAFANA_PASSWORD="yourpassword" ./scripts/deploy-dashboard.sh
```
## Datasource
Use Prometheus (or a Prometheus-compatible backend such as VictoriaMetrics) as the datasource. Point it at the same instance Epimetheus writes to (e.g. http://localhost:9090 after port-forward).
## Panel guidelines
When creating or updating Grafana panels, follow the project’s [AGENT.md](../../AGENT.md) (Grafana dashboard guidelines): e.g. sort time series by last value descending, use `sort_desc()` in bar gauges, set table sort options as specified.
|