Weekly
Review active alert silences every week
A weekly reminder lists each active silence and who created it, so forgotten silences don't hide real problems.
- Runs
- Weekly
- Apps
- Grafana Cloud
- AI
- Not needed
- Access
- Viewer
Send this to your assistant
Create a ClickRuntime automation: every Monday at 9am email me all active Grafana alert silences, with who created them and when they end.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A silence in Grafana Alerting is meant to be temporary: you mute a noisy rule during maintenance and it expires after a few hours. In practice, someone sets a silence for a month because they are busy, the engineer who made it leaves, and a genuine failure occurs behind a mute nobody remembers. Silences are one of the most common reasons an outage goes unnoticed. Few teams review them on any schedule.
Every week, the silences configured in your Grafana Cloud Alertmanager are listed and the active ones are filtered. An email shows each with its matchers, who created it, the comment and when it ends, so you can see what is currently muted.
It suits teams that rotate on-call duty and want a recurring check on what has been quietly switched off.
What you get out of it
Forgotten mutes are found
A reminder a week after someone silenced a rule makes it likely the silence is removed once the maintenance work is done. A reminder a week after someone muted a rule makes it likely the silence is removed once the maintenance work is finished.
Alerts get their purpose back
Muted alerts no longer protect you. Listing them returns that protection to the systems they were meant to watch. Muted alerts do not protect anything. Listing them hands that protection back to the systems they were meant to watch over.
Accountability for who silenced what
Since each entry shows its author and comment, you know whom to ask, which keeps silencing a deliberate act. Each entry shows its author and comment, so you know whom to ask, which keeps silencing a deliberate and explained act.
Long silences are questioned
A silence ending in 90 days stands out in the list and prompts a conversation about fixing the underlying alert. A silence ending in 90 days stands out in the list and prompts a conversation about fixing the underlying alert instead.
Cleaner handovers between engineers
A departing engineer's mutes are visible to the team and not hidden in the tool. A departing engineer's mutes are visible to the team and not hidden inside the tool, so nothing stays muted by accident after they leave.
How it works
What happens, step by step
Once a week, ClickRuntime lists the silences set up in Grafana.
It keeps only the silences that are still active.
You get an email showing what each silence mutes, who created it, when it ends and the comment they left, so forgotten silences get noticed.
Before it runs live
- Connect Grafana Cloud
What you get
Build your own
Need it to work differently?
Your own rules
Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.
Any number of apps
One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.
AI where it helps
Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.
On a schedule or on each event
Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.
Changes you can ask for
- Run it at a different time, more or less often, or only on weekdays
- Add an AI step, for example to summarize, sort or draft a reply
- Add another app, for example also send it to Slack
- Combine it with other Grafana Cloud steps into one automation
Under the hood
The code that runs this automation
from clickruntime import on_trigger, credentials, http, notify
GRAFANA = "https://acme.grafana.net"
@on_trigger
def run(event):
resp = http.get(f"{GRAFANA}/api/alertmanager/grafana/api/v2/silences",
headers={"Authorization": f"Bearer {credentials.secret('GRAFANA_TOKEN')}"})
resp.raise_for_status()
active = [s for s in resp.json() if s["status"]["state"] == "active"]
lines = []
for s in sorted(active, key=lambda s: s["endsAt"]):
matchers = ", ".join(f"{m['name']}={m['value']}" for m in s["matchers"])
lines.append(f"{matchers} | by {s['createdBy']} | ends {s['endsAt'][:16]} | {s.get('comment', '')}")
notify.email_me(f"{len(active)} active Grafana silences", "\n".join(lines) or "No active silences.")
return {"active": len(active)}FAQ
Common questions
Does it list expired silences?
Can I get an alert only when a silence is longer than a week?
Does it remove any silences?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Get a morning email of firing Grafana alerts
Each morning you see every alert rule currently in a firing state, before the stand-up starts.
See how it worksGet a weekly list of changed dashboards
Each Sunday you get a record of which dashboards were edited that week, so changes don't go unnoticed.
See how it worksFind out when a data source stops responding
Every morning you hear about any data source that fails its health check, before a dashboard goes blank.
See how it worksKeep exploring
Set up “Review active alert silences every week” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.