Claude Prompt Library

30 Claude Prompts for Grafana

30 copy-paste prompts

Paste these into Claude to get dashboard layouts, working PromQL queries, alert rule definitions, and panel recommendations you can drop straight into a real Grafana instance.

In short: This page contains 30 copy-paste ready prompts, organized into 6 categories with a description and pro tip for each. The first 5 prompts are free instantly, no signup needed. Hand-curated and tested by the AI Academy team.

Louis Corneloup
By Louis Corneloup · Founder, Techpresso
Last updated ·Hand-curated & tested by the AI Academy team

Dashboard Design and Layout

5 prompts

Design a Service Health Overview Dashboard

1/30

✨ What it does

Produces a full row-by-row dashboard layout for a top-level service health view.

You are a senior observability engineer building Grafana dashboards for a platform team. <context> I need a top level dashboard that shows whether our core service is healthy at a glance, before anyone has to dig into individual panels. </context> <inputs> - Service name: [SERVICE NAME] - Key metrics available: [METRIC LIST] - Data source: [DATASOURCE NAME] - On call team: [TEAM NAME] </inputs> <task> Propose a full dashboard layout for a service health overview, including row groupings, the panels in each row, and the metric or PromQL expression each panel should chart. </task> <constraints> Limit the dashboard to one screen without scrolling on a standard laptop. Use the four golden signals as the backbone: traffic, errors, latency, saturation. Do not propose more than 10 panels total. Avoid vague panel titles like Metrics or Overview. </constraints> <format> Return a numbered list of rows, each with the row title, the panels inside it, the panel type, and the metric each panel visualizes. </format>

💡

Pro tip: Paste your team's actual metric names into the inputs so the panel list maps directly onto queries you can build without renaming anything.

Plan a Multi-Team Dashboard Folder Structure

2/30

✨ What it does

Produces a folder tree, naming convention, and permission model for a multi-team Grafana instance.

You are a Grafana administrator responsible for keeping dashboards organized across many teams. <context> Our Grafana instance has grown to hundreds of dashboards with no consistent folder structure, and people cannot find the right one during an incident. </context> <inputs> - Number of teams: [TEAM COUNT] - Team names: [TEAM LIST] - Existing folder names, if any: [FOLDER NAME] - Access control needs: [PERMISSION MODEL] </inputs> <task> Propose a folder and permission structure for our Grafana instance, including naming conventions for folders and for individual dashboards inside them. </task> <constraints> Keep the structure to at most three levels deep. Naming conventions must be typeable without special characters. Explain how a new hire finds the right dashboard in under 30 seconds. </constraints> <format> Return a folder tree using indentation, followed by a short naming convention rule and a permission note for each top level folder. </format>

💡

Pro tip: Run this once a quarter as your team count grows, the answer that fit 5 teams rarely fits 20 without a rewrite.

Build an Executive Summary Dashboard Layout

3/30

✨ What it does

Produces a plain-language dashboard layout aimed at non-technical leadership.

You are a data visualization specialist who translates engineering metrics for non-technical leaders. <context> Our leadership team wants a single dashboard they can glance at weekly that shows product reliability without any Prometheus jargon. </context> <inputs> - Audience: [STAKEHOLDER GROUP] - Metrics to summarize: [METRIC LIST] - Reporting cadence: [TIME WINDOW] - Business goal tied to reliability: [SLO TARGET] </inputs> <task> Design a dashboard layout aimed at a non-technical audience, translating each engineering metric into a plain language panel title and a simple visual form. </task> <constraints> No panel titles may contain acronyms like SLO, P99, or QPS without a plain language label next to them. Use color only to mean good, warning, or bad. Keep the total panel count under 8. </constraints> <format> Return a table with columns: panel title, plain language explanation, chart type, and the underlying metric. </format>

💡

Pro tip: Share the plain language explanation column with your leadership team first and ask if it matches what they think the metric means, jargon creeps back in fast.

Design a Capacity Planning Dashboard

4/30

✨ What it does

Produces a capacity planning dashboard layout with trend lines and exhaustion forecasts.

You are an infrastructure engineer who owns capacity forecasting for a growing platform. <context> We keep getting surprised by resource exhaustion and want a dashboard that shows how close we are to limits before it becomes an incident. </context> <inputs> - Resources to track: [METRIC LIST] - Cluster or environment: [CLUSTER NAME] - Growth rate history available: [TIME WINDOW] - Current headroom target: [SLO TARGET] </inputs> <task> Propose a capacity planning dashboard that shows current usage, trend over time, and a projected date each resource will hit its limit. </task> <constraints> Every panel must include a forecast or trend line, not just a current value. Call out which resources are within 90 days of exhaustion. Do not recommend third party forecasting tools, stick to what Grafana and Prometheus can compute. </constraints> <format> Return a list of panels, each with title, the trend calculation approach, and the threshold that should trigger a scaling conversation. </format>

💡

Pro tip: Ask a follow up question for the exact PromQL predict_linear expression once you know which resource is closest to its limit.

Create a Golden Signals Dashboard Layout

5/30

✨ What it does

Produces a reusable, variable-driven golden signals dashboard template for any service team to copy.

You are a site reliability engineer standardizing dashboards across microservices. <context> Each service team builds dashboards differently and we want one reusable template based on the four golden signals so on-call engineers do not relearn a new layout every time. </context> <inputs> - Service type: [SERVICE TYPE] - Metric naming prefix: [JOB LABEL] - Environments to support: [ENVIRONMENT] - Template variables needed: [NAMESPACE] </inputs> <task> Design a reusable golden signals dashboard template that any service team can copy, using Grafana template variables so it adapts to different services without editing queries by hand. </task> <constraints> Every panel must use a template variable for service or namespace selection, not a hardcoded name. Keep row order consistent: traffic, errors, latency, saturation. Note where a team would need to swap in their own metric name. </constraints> <format> Return the row structure, the template variables to define, and for each panel the PromQL pattern with the variable placeholder shown clearly. </format>

💡

Pro tip: Save the resulting JSON model as a Grafana dashboard you can export and import as a starting point for new services.

PromQL Query Writing

5 prompts

Write a PromQL Query for Request Error Rate

6/30

✨ What it does

Produces a working PromQL error rate percentage query with a zero-division guard.

You are a Prometheus and PromQL specialist helping a backend team instrument dashboards correctly. <context> I have request counters split by status code and I need a query that shows the percentage of requests failing over a rolling window, not just the raw error count. </context> <inputs> - Metric name: [METRIC NAME] - Labels available: [LABEL LIST] - Error status codes to count: [STATUS CODE RANGE] - Rolling window: [TIME WINDOW] </inputs> <task> Write a PromQL expression that computes the error rate as a percentage over the given rolling window, using the counter and labels provided. </task> <constraints> Use rate or irate correctly for a counter metric, do not divide raw counters without a rate function. Handle the case where total requests could be zero without returning a division error. Explain in one sentence why you chose rate over irate or the reverse. </constraints> <format> Return the PromQL expression in a code block, followed by a short explanation of each part of the query. </format>

💡

Pro tip: Confirm your status code label is a string like status_code and not a number before pasting the query, the regex match syntax differs slightly.

Build a PromQL Query for P95 Latency

7/30

✨ What it does

Produces a correct histogram_quantile PromQL query grouped by a chosen label.

You are a Prometheus expert who writes production grade PromQL for latency histograms. <context> Our service exposes a histogram metric for request duration and I need the 95th percentile latency broken down by endpoint for a dashboard panel. </context> <inputs> - Histogram metric name: [METRIC NAME] - Label to group by: [LABEL LIST] - Percentile needed: [PERCENTILE VALUE] - Rolling window: [TIME WINDOW] </inputs> <task> Write a PromQL expression using histogram_quantile that computes the given percentile latency, grouped by the specified label, over the rolling window. </task> <constraints> Assume the metric follows the standard bucket, sum, and count naming convention. Use rate on the bucket counter before applying histogram_quantile. Warn me if the bucket boundaries could make this percentile misleading. </constraints> <format> Return the PromQL expression in a code block, then a short note on how to check your histogram buckets are fine grained enough for this percentile. </format>

💡

Pro tip: Ask Claude to also generate the P50 and P99 versions in one pass so all three latency lines land on the same panel.

Write a PromQL Query for CPU Throttling

8/30

✨ What it does

Produces a PromQL query for CPU throttling ratio per pod and container.

You are a Kubernetes and Prometheus specialist troubleshooting container performance. <context> We suspect some pods are being CPU throttled and I need a query that surfaces the throttling ratio per container so we can confirm it on a dashboard. </context> <inputs> - Namespace: [NAMESPACE] - Container metric prefix: [METRIC NAME] - Label for pod name: [LABEL LIST] - Rolling window: [TIME WINDOW] </inputs> <task> Write a PromQL expression that computes the fraction of time a container spent throttled versus its total CPU periods, for the given namespace. </task> <constraints> Use the standard cgroup CPU throttling counters, not a custom metric. Group results by pod and container so the panel can show which workload is affected. Keep the expression to a single line if possible. </constraints> <format> Return the PromQL expression in a code block, then one sentence describing what a throttling ratio above 0.1 would mean in practice. </format>

💡

Pro tip: Cross-check the result against kubectl top pod for the same window before trusting the panel during an incident.

Build a PromQL Query for Pod Restart Trends

9/30

✨ What it does

Produces a PromQL restart-rate query that isolates crash-looping pods from steady totals.

You are a Kubernetes reliability engineer who tracks workload stability across a cluster. <context> I want to catch crash looping pods before an on-call engineer gets paged, by charting the restart count trend rather than just the current total. </context> <inputs> - Cluster name: [CLUSTER NAME] - Namespace filter: [NAMESPACE] - Restart counter metric: [METRIC NAME] - Rolling window: [TIME WINDOW] </inputs> <task> Write a PromQL expression that shows the rate of pod restarts over the rolling window, grouped by namespace and pod, so a sudden spike stands out from a slow steady climb. </task> <constraints> Use increase rather than the raw counter value so restarts are visible as a rate, not a running total that only ever goes up. Exclude pods with zero restarts from the result set. Keep label cardinality reasonable for a busy cluster. </constraints> <format> Return the PromQL expression in a code block, then a one sentence recommendation for the alert threshold that usually indicates crash looping. </format>

💡

Pro tip: Pair this query with a table panel sorted descending so the worst offender is always the first row.

Write a PromQL Query for Disk Space Forecasting

10/30

✨ What it does

Produces a predict_linear PromQL query that flags volumes projected to run out of space.

You are a storage and capacity engineer who forecasts resource exhaustion using Prometheus. <context> We want a query that predicts when a volume will run out of disk space based on its current fill trend, so the team can act before a hard outage. </context> <inputs> - Filesystem metric name: [METRIC NAME] - Mount point label: [LABEL LIST] - Lookback period for trend: [TIME WINDOW] - Forecast horizon: [FORECAST HORIZON] </inputs> <task> Write a PromQL expression using predict_linear that estimates whether the given filesystem will hit zero free space within the forecast horizon. </task> <constraints> Base the trend on the lookback period specified, not a fixed default. Return a boolean style expression suitable for an alert condition, not just a raw number. Note the main limitation of linear forecasting for bursty disk usage. </constraints> <format> Return the PromQL expression in a code block, then two sentences on when predict_linear gives false positives. </format>

💡

Pro tip: Run the query over a known past incident's data first to check the forecast would have actually caught it early enough.

Alert Rule Design

5 prompts

Draft an Alert Rule for Error Budget Burn

11/30

✨ What it does

Produces a multi-window burn-rate alert rule set for a service's error budget.

You are a site reliability engineer who designs alert rules based on error budgets rather than raw thresholds. <context> We track an SLO for our service and want an alert that fires when we are burning through the error budget too fast, instead of alerting on every single error spike. </context> <inputs> - Service name: [SERVICE NAME] - SLO target: [SLO TARGET] - Error budget window: [TIME WINDOW] - Notification channel: [ON CALL CHANNEL] </inputs> <task> Design a multi-window, multi-burn-rate alert rule for error budget consumption, including the short and long window pair typically used to balance speed and false positives. </task> <constraints> Include both a fast burn alert for urgent paging and a slow burn alert for a ticket instead of a page. State the exact burn rate multiplier used for each window pair. Do not propose a single flat threshold, that defeats the purpose of budget based alerting. </constraints> <format> Return a table with columns: alert name, short window, long window, burn rate threshold, and severity, followed by the PromQL condition for each row. </format>

💡

Pro tip: Ask for the Grafana alerting YAML export as a follow up once the thresholds are approved, it saves retyping the same conditions into the UI.

Design a Multi-Window Latency Alert

12/30

✨ What it does

Produces a two-window latency alert rule designed to cut noisy pages from brief spikes.

You are an SRE responsible for reducing alert fatigue while still catching real latency regressions. <context> Our current latency alert pages the on-call for every brief spike, and the team has started ignoring it, so I need a design that only fires on sustained regressions. </context> <inputs> - Latency metric: [METRIC NAME] - Acceptable latency threshold: [ALERT THRESHOLD] - Short evaluation window: [TIME WINDOW] - Long evaluation window: [FORECAST HORIZON] </inputs> <task> Design an alert rule that requires the latency threshold to be breached across both a short and a long evaluation window before it pages anyone, reducing noise from brief blips. </task> <constraints> Explain the tradeoff between catching regressions fast and avoiding noisy pages. Recommend a for duration setting in Grafana alerting, not just a raw query threshold. Keep the final rule expressible in a single PromQL condition plus a for clause. </constraints> <format> Return the alert condition, the recommended for duration, and a two sentence explanation of the tradeoff you chose. </format>

💡

Pro tip: Log every alert that fires for two weeks before tightening the for duration further, you need real data to justify the next change.

Write an Alert Rule for Queue Backlog Growth

13/30

✨ What it does

Produces a queue-backlog alert rule that combines an absolute threshold with a growth trend check.

You are a backend reliability engineer who monitors asynchronous processing pipelines. <context> Our job queue occasionally backs up faster than workers can drain it, and I want an alert that catches the growth trend before the backlog becomes a multi-hour delay for customers. </context> <inputs> - Queue name: [QUEUE NAME] - Queue depth metric: [METRIC NAME] - Normal processing rate: [ALERT THRESHOLD] - Notification channel: [ON CALL CHANNEL] </inputs> <task> Design an alert rule that fires when the queue depth is both above a fixed threshold and growing rather than shrinking, so a temporary spike that is already draining does not page anyone. </task> <constraints> Combine an absolute depth threshold with a trend condition using deriv or a similar rate function. State the severity level and who gets paged versus who gets a ticket. Avoid alerting on queue depth alone without the trend check. </constraints> <format> Return the PromQL condition combining both checks, the for duration, and the severity mapping in a short table. </format>

💡

Pro tip: Test the trend condition against your last real backlog incident's data to confirm it would have fired early enough to matter.

Design an Alert Rule for Certificate Expiry

14/30

✨ What it does

Produces a tiered certificate expiry alert rule that escalates as the deadline approaches.

You are a platform engineer responsible for preventing certificate related outages. <context> We have had at least one outage caused by an expired TLS certificate and want a Grafana alert rule that gives the team enough lead time to renew before it becomes urgent. </context> <inputs> - Certificate domains to track: [CERT DOMAIN] - Days of warning needed: [FORECAST HORIZON] - Metric exporter used: [DATASOURCE NAME] - Notification channel: [ON CALL CHANNEL] </inputs> <task> Design a tiered alert rule for certificate expiry that escalates severity as the expiry date gets closer, rather than a single alert that fires only once. </task> <constraints> Include at least two tiers, an early warning as a ticket and a final warning as a page. State the exact day thresholds for each tier. Assume the metric reports seconds until expiry, not a boolean. </constraints> <format> Return a table with columns: tier, days before expiry, PromQL condition, and severity. </format>

💡

Pro tip: Route the early warning tier to a ticket queue instead of a page, certificate renewal rarely needs to wake anyone up.

Draft a Noisy Alert Cleanup Plan

15/30

✨ What it does

Produces a week-by-week plan for auditing and cleaning up noisy alert rules using real firing history.

You are an SRE lead running an alert quality review for an overloaded on-call rotation. <context> Our on-call engineers are burning out from alert noise and I want a structured plan to review and clean up existing Grafana alert rules over the next few weeks. </context> <inputs> - Number of active alert rules: [ALERT THRESHOLD] - Weeks of alert history available: [TIME WINDOW] - Team size: [TEAM COUNT] - Current biggest complaint: [METRIC LIST] </inputs> <task> Propose a step by step plan to audit existing alert rules, classify each as keep, tune, or delete, and roll out the changes without losing coverage for real incidents. </task> <constraints> Include a data driven step that counts how often each alert fired versus how often it led to real action. Do not recommend deleting alerts without checking their firing history first. Keep the plan to a timeline the team can execute in under a month. </constraints> <format> Return a numbered plan with a week by week timeline, and for each step the specific Grafana or Prometheus data you would pull to make the decision. </format>

💡

Pro tip: Pull the actual alert firing counts from Grafana's alert history table first, this plan works far better with real numbers than with guesses.

These prompts give you the what. Tutorials give you the why.

Learn when to use extended thinking, how to build Claude Projects, and workflows that compound. 300+ tutorials and growing.

Try AI Academy Free

Panel Choices and Visualization

5 prompts

Choose the Right Panel Type for Latency Distribution

16/30

✨ What it does

Produces a comparison of panel types for latency data with a clear final recommendation.

You are a dashboard design expert who matches panel types to the shape of the underlying data. <context> I have latency data as a histogram and I am not sure whether a heatmap, a time series with percentile lines, or a bar gauge best communicates it to an on-call engineer under pressure. </context> <inputs> - Data type: [METRIC NAME] - Audience during use: [STAKEHOLDER GROUP] - Time range typically viewed: [TIME WINDOW] - Existing panel type, if any: [PANEL TYPE] </inputs> <task> Recommend the best Grafana panel type for visualizing this latency histogram, with reasoning based on how the audience will actually read it during an incident versus during a calm review. </task> <constraints> Compare at least two panel type options directly rather than only proposing one. State a clear downside for each option considered. Assume the audience has ten seconds to interpret the panel during an incident. </constraints> <format> Return a short comparison table of panel types with pros and cons, followed by a one sentence final recommendation. </format>

💡

Pro tip: Ask specifically whether a heatmap or percentile lines read faster for your team, the right answer depends on how visually trained your on-call engineers are.

Design a Panel for Comparing Deploy Versions

17/30

✨ What it does

Produces a version-comparison panel design using template variables to avoid hardcoding deploy versions.

You are a Grafana dashboard designer who supports release engineering teams. <context> We deploy frequently and want a panel that makes it obvious whether the newest version is performing worse than the previous one, without engineers needing to manually compare two separate graphs. </context> <inputs> - Metric to compare: [METRIC NAME] - Version label: [VERSION A] - Previous version label: [VERSION B] - Comparison window: [TIME WINDOW] </inputs> <task> Design a panel, or small set of panels, that lets an engineer compare the chosen metric between two deploy versions side by side or overlaid. </task> <constraints> Use Grafana template variables so the versions being compared can change without editing the panel. Prefer an overlay approach over two separate panels if the metric supports it cleanly. Call out any risk of misleading comparison if traffic volume differs between versions. </constraints> <format> Return the panel design description, the template variables needed, and the PromQL pattern for each version's line. </format>

💡

Pro tip: Normalize by request volume, not raw counts, before comparing versions or a busier version will look artificially worse.

Build a Panel Set for On-Call Triage

18/30

✨ What it does

Produces a priority-ordered triage panel set built for a 3am on-call engineer under time pressure.

You are an SRE who designs the first screen an on-call engineer sees when a page fires. <context> When someone gets paged at 3am they need to know within 60 seconds whether the problem is real, and our current dashboard makes them hunt across five tabs to figure that out. </context> <inputs> - Service name: [SERVICE NAME] - Alerts that commonly fire: [ALERT THRESHOLD] - Dependencies to check: [METRIC LIST] - Runbook location: [RUNBOOK URL] </inputs> <task> Design a single triage panel set, ordered by what an on-call engineer should check first, second, and third, that answers is this real, is it us, and what do I do next. </task> <constraints> Limit the set to panels that can be read in under 60 seconds combined. Include a direct link panel to the runbook. Order panels by diagnostic priority, not by which team owns the metric. </constraints> <format> Return a numbered list of panels in the order an engineer should look at them, with the question each panel answers. </format>

💡

Pro tip: Test the layout by timing a teammate who has never seen the dashboard, if they cannot answer is it real within a minute, cut panels.

Choose Panels for a Cost Tracking Dashboard

19/30

✨ What it does

Produces a cost tracking dashboard layout with budget-versus-actual panels for a finance audience.

You are a FinOps focused platform engineer who tracks cloud spend using exported billing metrics. <context> Finance keeps asking engineering for cost breakdowns and I want a Grafana dashboard that answers their common questions without a manual spreadsheet every month. </context> <inputs> - Cost data source: [DATASOURCE NAME] - Cost centers to break down: [COST CENTER] - Reporting period: [TIME WINDOW] - Budget target: [SLO TARGET] </inputs> <task> Propose a cost tracking dashboard layout with panels for total spend trend, breakdown by cost center, and budget versus actual comparison. </task> <constraints> Use a bar gauge or stat panel for budget versus actual so it reads as over or under at a glance. Avoid time series panels for anything that is naturally a single point in time comparison. Keep currency formatting consistent across all panels. </constraints> <format> Return a list of panels, each with title, panel type, and the aggregation used, followed by one note on refresh frequency for billing data. </format>

💡

Pro tip: Set the refresh interval to match how often your billing exporter actually updates, most billing data lags by a day or more.

Design a Heatmap Panel for Traffic Patterns

20/30

✨ What it does

Produces a day-of-week and hour-of-day heatmap panel design for spotting recurring traffic patterns.

You are a data visualization specialist who works with time series traffic data. <context> We want to spot weekly and daily traffic patterns, like a Tuesday afternoon spike, and a plain time series line makes that pattern hard to see across months of data. </context> <inputs> - Traffic metric: [METRIC NAME] - Time range to analyze: [FORECAST HORIZON] - Grouping needed: [LABEL LIST] - Data source: [DATASOURCE NAME] </inputs> <task> Design a heatmap panel that shows traffic intensity by day of week and hour of day, so recurring patterns are visible immediately. </task> <constraints> Specify the bucket size for the heatmap so it neither looks too blocky nor too noisy. Explain the PromQL or transformation approach needed to reshape the data into day and hour buckets. Note when a heatmap is the wrong choice compared to a calendar panel. </constraints> <format> Return the panel configuration description, the query or transformation steps, and one sentence on when to use a calendar panel instead. </format>

💡

Pro tip: Use Grafana's built in transformations tab to bucket by hour before reaching for a custom PromQL trick, it is usually simpler.

Troubleshooting and Incident Dashboards

5 prompts

Build an Incident War Room Dashboard

21/30

✨ What it does

Produces a dependency-grouped war room dashboard layout for use during live incidents.

You are an incident commander who prepares tooling for active outages. <context> During incidents our team wastes the first ten minutes opening separate dashboards for each dependency, and I want one war room dashboard assembled ahead of time. </context> <inputs> - Service name: [SERVICE NAME] - Key dependencies: [METRIC LIST] - Incident channel: [ON CALL CHANNEL] - Current incident id, if active: [INCIDENT ID] </inputs> <task> Design a war room dashboard that combines the service's own health signals with its top dependencies on one screen, built so it can be pulled up in seconds during a live incident. </task> <constraints> Group panels by dependency, not by metric type, so a responder can quickly rule dependencies in or out. Include an annotation track for deploys and config changes. Keep the panel count low enough to avoid a second scroll on a shared screen. </constraints> <format> Return the dashboard layout as rows per dependency, with the panels and the question each row answers. </format>

💡

Pro tip: Add a deploy annotation query at the top of the dashboard so a bad release stands out the moment the war room opens.

Design a Root Cause Correlation Dashboard

22/30

✨ What it does

Produces a time-aligned, cross-service correlation dashboard for root cause investigation.

You are a reliability engineer who investigates cross-service incidents. <context> Our incidents often turn out to be caused by an upstream service, but our dashboards are siloed per team, which slows down finding the real root cause. </context> <inputs> - Affected service: [SERVICE NAME] - Suspected upstream services: [METRIC LIST] - Time of the anomaly: [TIME WINDOW] - Shared identifiers across services: [LABEL LIST] </inputs> <task> Design a correlation dashboard that overlays the affected service's error signal with the same time window from its suspected upstream services, so a shared spike is visually obvious. </task> <constraints> Align all panels to the exact same time window and time zone. Use a shared trace or request id label if available to link panels together. State clearly that correlation shown here is not proof of causation. </constraints> <format> Return the panel layout with each service's signal as a separate but time aligned panel, plus one sentence on how to confirm causation beyond this dashboard. </format>

💡

Pro tip: Lock the time range and time zone across all panels using a dashboard variable, misaligned graphs are the most common false lead in this kind of review.

Write a Runbook Linked to Dashboard Panels

23/30

✨ What it does

Produces a step-by-step runbook that maps directly to specific dashboard panels for a given alert.

You are a technical writer who works closely with an SRE team to reduce incident response time. <context> Our on-call engineers see an alert fire but do not always know what action to take, and I want a runbook that maps directly to the panels on our triage dashboard. </context> <inputs> - Alert name: [ALERT THRESHOLD] - Dashboard name: [DASHBOARD NAME] - Common root causes: [METRIC LIST] - Escalation contact: [ON CALL CHANNEL] </inputs> <task> Write a runbook for this alert that references the specific panels on the named dashboard an engineer should check, in order, and the action to take for each likely root cause. </task> <constraints> Write in plain, direct instructions, not narrative prose. Every diagnostic step must name the exact panel to look at. Include a clear escalation trigger for when to stop investigating and page someone else. </constraints> <format> Return the runbook as numbered steps: check panel, what a bad result looks like, and the action to take. </format>

💡

Pro tip: Link the runbook URL directly inside the Grafana alert annotation so it opens automatically when the alert fires.

Build a Post-Incident Review Dashboard

24/30

✨ What it does

Produces a fixed-time-range post-incident dashboard with annotations for the postmortem document.

You are a reliability engineer who runs blameless postmortems for production incidents. <context> After an incident we need a dashboard snapshot that clearly shows the timeline of what happened, for use in the postmortem document and review meeting. </context> <inputs> - Incident id: [INCIDENT ID] - Time range of the incident: [TIME WINDOW] - Key metrics affected: [METRIC LIST] - Deploy or change events during the window: [VERSION A] </inputs> <task> Design a post-incident review dashboard that lays out the timeline of the affected metrics alongside deploy and alert annotations, suitable for pasting into a postmortem document. </task> <constraints> Fix the time range to the exact incident window plus a buffer before and after. Include annotation markers for when alerts fired and when the fix was deployed. Avoid any panel that requires live data, this dashboard must be reproducible after the fact. </constraints> <format> Return the panel layout with annotation sources listed, plus one sentence on how to export it as an image for the postmortem doc. </format>

💡

Pro tip: Export the dashboard as a PDF or image immediately after the incident, live dashboards drift as retention policies age out the raw data.

Design a Dependency Map Dashboard

25/30

✨ What it does

Produces a dependency map panel design using a node graph panel suited to relationship data.

You are a platform engineer who maps service dependencies for a growing microservices architecture. <context> New engineers and even some on-call veterans do not have a clear picture of which services depend on which, and it slows down incident triage. </context> <inputs> - Core services: [METRIC LIST] - Data source for dependency data: [DATASOURCE NAME] - Trace or service mesh tool in use: [DATASOURCE NAME] - Update frequency needed: [TIME WINDOW] </inputs> <task> Design a dashboard that visualizes service dependencies and their current health, using a node graph panel or an equivalent Grafana panel type suited to relationship data. </task> <constraints> Recommend the specific Grafana panel type suited to graph or relationship data, and explain why a time series panel would not work here. State what data source or exporter is required to populate this panel type. Keep the visualization readable with at least twenty services. </constraints> <format> Return the panel type recommendation, the data requirements, and a two sentence explanation of the readability tradeoff at scale. </format>

💡

Pro tip: Check whether your service mesh already exports dependency data before building a custom exporter, most meshes expose this natively.

Most people use 10% of Claude. Tutorials unlock the rest.

AI Academy: 300+ hands-on tutorials on Claude, ChatGPT, Midjourney, and 50+ AI tools. New tutorials added every week.

Start Your Free Trial

Documentation and Team Handoff

5 prompts

Write Dashboard Documentation for New Engineers

26/30

✨ What it does

Produces panel-by-panel dashboard documentation with normal versus concerning value ranges.

You are a technical writer embedded with an SRE team who documents internal tooling. <context> New engineers join our team and get lost trying to understand what each dashboard panel means, since most of our dashboards were built quickly with no documentation attached. </context> <inputs> - Dashboard name: [DASHBOARD NAME] - Panels to document: [METRIC LIST] - Audience experience level: [STAKEHOLDER GROUP] - Related runbook, if any: [RUNBOOK URL] </inputs> <task> Write documentation for this dashboard that explains what each panel shows, what a normal value looks like, and what a concerning value looks like. </task> <constraints> Write for someone who joined the team this week, avoid assuming prior context. Include a normal versus concerning value for every panel documented. Keep each panel's explanation to three sentences or fewer. </constraints> <format> Return the documentation as a list, one entry per panel, with fields: panel name, what it shows, normal range, concerning range. </format>

💡

Pro tip: Paste the resulting documentation directly into the dashboard's own description field in Grafana so it travels with the dashboard.

Create a Dashboard Naming and Tagging Convention

27/30

✨ What it does

Produces a dashboard naming convention and tagging taxonomy with worked examples.

You are a Grafana administrator standardizing tooling across an engineering organization. <context> Our dashboards have inconsistent names and no shared tags, which makes search inside Grafana nearly useless once you have more than a handful of dashboards. </context> <inputs> - Number of teams using Grafana: [TEAM COUNT] - Common dashboard purposes: [METRIC LIST] - Existing tag examples, if any: [TAG NAME] - Search behavior teams want: [STAKEHOLDER GROUP] </inputs> <task> Propose a naming convention and a tagging taxonomy for dashboards that makes search and filtering reliable across teams. </task> <constraints> Naming convention must be short enough to read on a browser tab. Tags must cover at least team, service, and dashboard purpose as separate dimensions. Provide three worked examples of dashboard names under the new convention. </constraints> <format> Return the naming rule, the tag taxonomy as a short list, and three example dashboard names with their tags. </format>

💡

Pro tip: Enforce the convention through a lightweight Grafana provisioning check rather than relying on teams to remember it manually.

Write an Onboarding Guide to Our Grafana Setup

28/30

✨ What it does

Produces a one-page, checklist-style onboarding guide to a team's Grafana setup.

You are an SRE who onboards new hires onto the team's observability stack. <context> Every new hire asks the same set of questions about how our Grafana instance is organized, and I want a written guide so I stop repeating the same walkthrough. </context> <inputs> - Team name: [TEAM NAME] - Folder structure summary: [FOLDER NAME] - Most important dashboards: [DASHBOARD NAME] - Access request process: [PERMISSION MODEL] </inputs> <task> Write an onboarding guide that walks a new hire through how our Grafana instance is organized, which dashboards matter most, and how to request access to anything they cannot see. </task> <constraints> Structure the guide as a checklist a new hire can follow on their first day. Link each key dashboard to the situation where they would actually open it. Keep the entire guide under one page when printed. </constraints> <format> Return the guide as a checklist with short explanations under each item. </format>

💡

Pro tip: Have an actual new hire follow the checklist cold and note where they get stuck, that is exactly where the guide needs another sentence.

Draft a Dashboard Review Checklist

29/30

✨ What it does

Produces a fast, objective yes-or-no checklist for reviewing new dashboards before publication.

You are a Grafana platform owner who wants to raise the quality bar for dashboards published across the company. <context> Anyone can currently publish a dashboard with no review, and quality varies wildly, so I want a lightweight checklist reviewers can use before approving a new dashboard. </context> <inputs> - Minimum panel count expected: [ALERT THRESHOLD] - Required metadata fields: [TAG NAME] - Common mistakes seen so far: [METRIC LIST] - Reviewer role: [TEAM NAME] </inputs> <task> Draft a review checklist a reviewer can run through in under five minutes before approving a new dashboard for publication. </task> <constraints> Limit the checklist to items that are objectively checkable, not subjective taste. Include a check for template variables being used instead of hardcoded values. Keep the checklist to 10 items or fewer. </constraints> <format> Return the checklist as a numbered list of yes or no items a reviewer can tick off. </format>

💡

Pro tip: Turn the checklist into a Grafana dashboard provisioning lint script once the manual version has been used for a month without complaints.

Write a Migration Plan for Legacy Dashboards

30/30

✨ What it does

Produces a phased migration plan for retiring or updating legacy dashboards after a backend switch.

You are a platform engineer leading a cleanup of outdated Grafana dashboards after a metrics backend migration. <context> We recently switched metrics backends and now have a pile of legacy dashboards pointing at the old data source that need to be migrated or retired without breaking anyone's workflow. </context> <inputs> - Old data source: [DATASOURCE NAME] - New data source: [DATASOURCE NAME] - Legacy dashboards to review: [LEGACY DASHBOARD LIST] - Migration deadline: [MIGRATION DEADLINE] </inputs> <task> Write a migration plan that identifies which legacy dashboards to update, which to retire, and the order to tackle them in before the deadline. </task> <constraints> Prioritize dashboards by how frequently they are viewed, not by how old they are. Include a communication step so dashboard owners are not surprised by the change. Build in a rollback note in case the new data source has gaps. </constraints> <format> Return the plan as a phased timeline with the criteria used to sort dashboards into update, retire, or investigate further. </format>

💡

Pro tip: Pull actual view counts from Grafana's usage analytics before sorting dashboards, the ones people assume matter most are often not the most viewed.

Free tool

Prompt Optimizer

Turn a rough idea into a structured, professional AI prompt.

Try it free →

Frequently Asked Questions

Yes, if you give it the metric name, the labels available, and the time window you care about. Claude will return the expression in a code block along with an explanation, so you can verify it matches your actual metric names before pasting it into a panel.
Claude has broad knowledge of Grafana panel types, PromQL functions, and the Grafana alerting model including multi-window burn rate alerts. It will not know your specific dashboard IDs or exact provisioning setup, so always confirm panel names and data source settings against your own instance.
The more specific the better. Real metric names, real label names, and your actual SLO targets produce a usable answer on the first try. Vague inputs like just metrics will get you a generic template that still needs editing.
Yes, several prompts in this set are built for that, including the noisy alert cleanup plan and the multi-window latency alert design. Both push toward fewer, better targeted alerts instead of adding more thresholds.
No, treat forecasts like predict_linear estimates as a starting point, not a guarantee. Linear forecasting misses sudden usage changes, so run the resulting query against a known past incident before relying on it for a real alert threshold.

Prompts are the starting line. Tutorials are the finish.

A growing library of 300+ hands-on tutorials on ChatGPT, Claude, Midjourney, and 50+ AI tools. New tutorials added every week.

7-day free trial. Cancel anytime.