trails/infrastructure/grafana/dashboards/infrastructure.json
Ullrich Schäfer 9223eacb91
Remove type:dashboard from annotation config
The type:dashboard field was causing Grafana to filter annotations
by dashboard scope. Our deploy annotations are global (no dashboardUID),
so the target.type:tags is the only filter needed.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-29 21:57:39 +02:00

56 lines
1.6 KiB
JSON

{
"dashboard": {
"title": "Infrastructure",
"uid": "trails-infra",
"annotations": {
"list": [
{
"name": "Deploys",
"enable": true,
"datasource": { "type": "grafana", "uid": "-- Grafana --" },
"iconColor": "rgba(0, 211, 255, 1)",
"target": { "limit": 100, "matchAny": false, "tags": ["deploy"], "type": "tags" }
}
]
},
"timezone": "browser",
"refresh": "30s",
"panels": [
{
"title": "Process Memory (RSS)",
"type": "timeseries",
"gridPos": { "h": 8, "w": 12, "x": 0, "y": 0 },
"targets": [
{ "expr": "process_resident_memory_bytes", "legendFormat": "{{job}}" }
],
"fieldConfig": { "defaults": { "unit": "bytes" } }
},
{
"title": "CPU Usage",
"type": "timeseries",
"gridPos": { "h": 8, "w": 12, "x": 12, "y": 0 },
"targets": [
{ "expr": "rate(process_cpu_seconds_total[5m])", "legendFormat": "{{job}}" }
],
"fieldConfig": { "defaults": { "unit": "percentunit" } }
},
{
"title": "Event Loop Lag",
"type": "timeseries",
"gridPos": { "h": 8, "w": 12, "x": 0, "y": 8 },
"targets": [
{ "expr": "nodejs_eventloop_lag_seconds", "legendFormat": "{{job}}" }
],
"fieldConfig": { "defaults": { "unit": "s" } }
},
{
"title": "Open File Descriptors",
"type": "timeseries",
"gridPos": { "h": 8, "w": 12, "x": 12, "y": 8 },
"targets": [
{ "expr": "process_open_fds", "legendFormat": "{{job}}" }
]
}
]
}
}