Daily backup compliance check for ClickHouse Cloud

Every morning, check each ClickHouse service against its own backup schedule, get a Slack summary, and a Linear ticket for anything stale or failed.

Agentic Task
ClickHouse CloudSlack BotLinearEngineeringOperationsResearch & MonitoringNotifications & AlertsDaily Digests
PromptCreate

Every morning at 7am, check backup health across all of my ClickHouse Cloud services and flag any that are out of compliance with their own backup schedule. Use a cron trigger on a daily timer. The ClickHouse Cloud management API does not send webhooks and is not a poll provider, so a scheduled run is the right way to do this.

First, call List Services to get every ClickHouse Cloud service in my organization. Then, for each service, pull its backups with List Service Backups, which returns them most recent first with a status on each one, and read its schedule with Get Service Backup Configuration to learn the configured backup interval and retention for that service.

For each service, decide whether it is out of compliance. Treat a service as non-compliant when the most recent successful backup is older than that service's configured backup interval, when there is no backup at all, or when the most recent backup is in a failed state. Judge staleness relative to each service's own configured interval, never a fixed number of hours, because each service can have a different schedule and retention. Identify the newest backup whose status indicates success, treat that as the last good backup, and compute its age from its timestamp.

Post a single summary to the #data-ops Slack channel using the Slack Bot Send a Message action. List every service with its compliance status, the age of its last good backup, and its configured schedule, and call out the non-compliant services clearly at the top. Write it as a readable Slack message using Slack formatting, not raw JSON.

For every non-compliant service, open a Linear issue with Create Issue that names the service, the age of its last good backup, the configured backup schedule, and what is wrong (stale, missing, or failed). Before creating anything, dedupe by a stable per-service title such as 'ClickHouse backup out of compliance: <service name>'. Use Search Issues to look for an existing open issue with that title, and only create a new one if none exists, so a persistent problem does not spawn a fresh ticket every day. If a matching open issue already exists, leave the existing ticket in place instead of creating a duplicate.

What does this prompt do?

  • Checks the backups for every one of your ClickHouse Cloud services first thing each morning.
  • Judges each service against its own backup schedule, so 'stale' means late for that service, not some fixed number of hours.
  • Posts a single backup-health summary to your #data-ops Slack channel, covering healthy and unhealthy services alike.
  • Opens a Linear ticket for each service that is overdue, missing a backup, or whose last backup failed, and avoids filing a duplicate ticket for a problem that is already tracked.

What do I need to use this?

  • A ClickHouse Cloud account with an API key that can read your services and their backups.
  • A Slack workspace with our bot added to the channel where you want the summary posted.
  • A Linear workspace where tickets can be created.

How can I customize it?

  • Change the time it runs (7am by default) or how often it checks.
  • Point the daily summary at a different Slack channel.
  • Adjust which backup states count as a problem, or which Linear team and priority new tickets use.

FAQs

How does it decide a backup is 'stale'?
It reads each ClickHouse Cloud service's own backup schedule and compares it to when the most recent successful backup actually landed. If the newest good backup is older than that service's expected interval, it gets flagged. Every service is judged against its own schedule, not a single fixed cutoff.
Will it spam Linear with a new ticket every day for the same problem?
No. Before opening a ticket it looks for an existing open one for that service using a consistent title, and only creates a new ticket if none exists. A persistent problem stays as a single tracked issue.
What counts as out of compliance?
A service is flagged when its most recent successful backup is older than its configured schedule, when there is no backup at all, or when the latest backup is in a failed state.
Does everyone get pinged, or only when something is wrong?
You get a full summary in Slack every morning covering all services, so you always have a heartbeat. Tickets are only created for the services that are actually out of compliance.
Can I use a different chat tool or issue tracker?
This version posts to Slack and files issues in Linear, but the same pattern works with other tools we support. Just tell the builder which ones your team uses.

Related templates

A brand asset library your marketing team actually searches

Every logo, photo, video cut and ad export in one searchable grid, with previews, campaign tags and rights expiry dates at a glance.

General Input Storage
General Input Database
JigsawStack
+1
App
Turn Mailjet email clicks into ranked HubSpot follow-ups

Twice a day we spot the people clicking your pricing and demo pages, create a follow-up task for their owner, and post a ranked recap to Slack.

Mailjet
HubSpot
Slack Bot
Agentic Task
Clean out the Looker dashboards and Looks nobody opens

One board showing every dashboard and Look with its folder, owner and favorite count, so you can find dead content and retire it safely.

Looker
Slack Bot
App
LiveKit live operations console for room moderation

Watch every live room on one screen, remove disruptive guests, start recordings and end stuck sessions without anyone opening a terminal.

LiveKit
Slack Bot
General Input Database
App
Wake up dormant Keap leads with a researched reason

Every Monday we find leads who never bought, research a real reason to reach out, and send a short personal email instead of another check in.

Keap
Slack Bot
Agentic Task
LiveChat coverage board for planning next week's shifts

See the exact hours your chat queue backs up and customers give up waiting, then plan next week's shifts before it happens again.

LiveChat
Slack Bot
General Input Database
App

Never get surprised by a stale ClickHouse backup again.

Set up an automated morning check that watches every ClickHouse Cloud service against its own schedule and turns overdue backups into tracked tickets.