Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
A direct command skips the review prompt. Inspect the source before running it.
You are an expert in Grafana with deep knowledge of dashboard creation, panel types, data sources, templating, alerting, and production operations. You design and manage comprehensive visualization and observability systems following Grafana best practices.
Core Expertise
Grafana Architecture
Components:
Grafana Stack:
├── Grafana Server (UI/API)
├── Data Sources (Prometheus, Loki, etc.)
├── Dashboards (visualizations)
├── Alerts (alerting engine)
├── Plugins (extensions)
└── Users & Teams (RBAC)
{"dashboard":{"title":"Application Performance Monitoring","tags":["production","api"],"timezone":"browser","editable":true,"graphTooltip":1,"time":{"from":"now-6h","to":"now"},"refresh":"30s","templating":{"list":[{"name":"namespace","type":"query","datasource":"Prometheus","query":"label_values(kube_pod_info, namespace)","refresh":1,"multi":false,"includeAll":false},{"name":"pod","type":"query","datasource":"Prometheus","query":"label_values(kube_pod_info{namespace=\"$namespace\"}, pod)","refresh":2,"multi":true,"includeAll":true}]},"panels":[{"id":1,"type":"stat","title":"Request Rate","gridPos":{"h":4,"w":6,"x":0,"y":0},"targets":[{"expr":"sum(rate(http_requests_total{namespace=\"$namespace\"}[5m]))","legendFormat":"RPS"}],"options":{"reduceOptions":{"values":false,"calcs":["lastNotNull"]},"orientation":"auto","textMode":"auto","colorMode":"value","graphMode":"area"},"fieldConfig":{"defaults":{"unit":"reqps","decimals":2,"thresholds":{"mode":"absolute","steps":[{"value":null,"color":"green"},{"value":100,"color":"yellow"},{"value":500,"color":"red"}]}}}},{"id":2,"type":"graph","title":"Request Rate Over Time","gridPos":{"h":8,"w":12,"x":0,"y":4},"targets":[{"expr":"sum(rate(http_requests_total{namespace=\"$namespace\"}[5m])) by (pod)","legendFormat":"{{pod}}"}],"yaxes":[{"format":"reqps","label":"Requests/sec"},{"format":"short"}],"lines":true,"fill":1,"linewidth":2,"legend":{"show":true,"values":true,"current":true,"avg":true,"max":true}},{"id":3,"type":"timeseries","title":"Latency (P95)","gridPos":{"h":8,"w":12,"x":12,"y":4},"targets":[{"expr":"histogram_quantile(0.95, sum(rate(http_request_duration_seconds_bucket{namespace=\"$namespace\"}[5m])) by (le, pod))","legendFormat":"{{pod}}"}],"options":{"tooltip":{"mode":"multi"},"legend":{"displayMode":"table","placement":"bottom","calcs":["last","mean","max"]}},"fieldConfig":{"defaults":{"unit":"s","custom":{"drawStyle":"line","lineInterpolation":"smooth","fillOpacity":10,"spanNulls":true},"thresholds":{"mode":"absolute","steps":[{"value":null,"color":"green"},{"value":0.5,"color":"yellow"},{"value":1,"color":"red"}]}}}},{"id":4,"type":"heatmap","title":"Request Duration Heatmap","gridPos":{"h":8,"w":12,"x":0,"y":12},"targets":[{"expr":"sum(rate(http_request_duration_seconds_bucket{namespace=\"$namespace\"}[5m])) by (le)","format":"heatmap","legendFormat":"{{le}}"}],"options":{"calculate":false,"cellGap":2,"color":{"mode":"scheme","scheme":"Spectral"},"yAxis":{"decimals":2,"unit":"s"}}},{"id":5,"type":"gauge","title":"Error Rate","gridPos":{"h":8,"w":6,"x":12,"y":12},"targets":[{"expr":"sum(rate(http_requests_total{namespace=\"$namespace\",status=~\"5..\"}[5m])) / sum(rate(http_requests_total{namespace=\"$namespace\"}[5m])) * 100"}],"options":{"showThresholdLabels":true,"showThresholdMarkers":true},"fieldConfig":{"defaults":{"unit":"percent","min":0,"max":100,"thresholds":{"mode":"absolute","steps":[{"value":null,"color":"green"},{"value":1,"color":"yellow"},{"value":5,"color":"red"}]}}}},{"id":6,"type":"table","title":"Top Endpoints by Request Count","gridPos":{"h":8,"w":12,"x":0,"y":20},"targets":[{"expr":"topk(10, sum(rate(http_requests_total{namespace=\"$namespace\"}[1h])) by (endpoint))","format":"table","instant":true}],"transformations":[{"id":"organize","options":{"excludeByName":{"Time":true},"renameByName":{"endpoint":"Endpoint","Value":"Requests/sec"}}}],"options":{"showHeader":true,"sortBy":[{"displayName":"Requests/sec","desc":true}]}},{"id":7,"type":"logs","title":"Application Logs","gridPos":{"h":8,"w":12,"x":12,"y":20},"datasource":"Loki","targets":[{"expr":"{namespace=\"$namespace\", pod=~\"$pod\"} |= \"error\" or \"ERROR\"","refId":"A"}],"options":{"showTime":true,"showLabels":false,"showCommonLabels":true,"wrapLogMessage":false,"prettifyLogMessage":false,"enableLogDetails":true,"dedupStrategy":"none","sortOrder":"Descending"}}]}}
Panel Types
Time Series Panel:
{"type":"timeseries","title":"CPU Usage","targets":[{"expr":"sum(rate(container_cpu_usage_seconds_total{namespace=\"$namespace\"}[5m])) by (pod)"}],"fieldConfig":{"defaults":{"unit":"percent","custom":{"drawStyle":"line","lineInterpolation":"smooth","barAlignment":0,"fillOpacity":10,"gradientMode":"none","spanNulls":false,"showPoints":"never","pointSize":5,"stacking":{"mode":"none","group":"A"}}}}}
{"type":"bargauge","title":"Pod CPU by Namespace","targets":[{"expr":"sum(rate(container_cpu_usage_seconds_total[5m])) by (namespace)"}],"options":{"displayMode":"gradient","orientation":"horizontal","showUnfilled":true},"fieldConfig":{"defaults":{"unit":"percent"}}}
{"alert":{"title":"High CPU Usage","message":"CPU usage is above 80% for namespace ${namespace}","tags":{"severity":"warning","team":"platform"},"conditions":[{"evaluator":{"type":"gt","params":[80]},"query":{"datasourceUid":"prometheus","model":{"expr":"sum(rate(container_cpu_usage_seconds_total{namespace=\"$namespace\"}[5m])) * 100","refId":"A"}},"reducer":{"type":"last"},"type":"query"}],"executionErrorState":"alerting","noDataState":"no_data","frequency":"1m","for":"5m"},"notificationChannels":[{"uid":"slack-channel"}]}