Weekly Render Postgres health report in Notion and Slack
Every Monday at 7am, get a written review of every Render database, so slow queries and missing indexes get caught long before they cause an outage.
Every Monday at 7am, run a health check on all of my Render Postgres databases, write it up as a proper report in Notion, and post a short summary to Slack. This is a report, not an actor. Do not create indexes, restart an instance, trigger point-in-time recovery, or create an export, even though Render exposes those actions. Your job is to read, explain, and recommend.
Start with Render's List Postgres instances to get every database on the account. Then, for each instance, gather: List top queries to see what is eating execution time, List table scans to spot tables taking heavy sequential scans that likely need an index, List database, table, and index sizes for storage growth, Get active connection count and Get disk usage for saturation, and Retrieve point-in-time recovery status to confirm backups are actually covered.
Before writing anything, find last week's report so this week's can describe what changed. Use Query a Data Source on the engineering Notion database to locate the most recent previous page, and read it with Retrieve Page as Markdown. Base the week over week comparison on that page: which queries moved up the list or got slower, which tables grew fastest, whether connection or disk pressure is trending up. If there is no previous page, say so plainly and treat this run as the baseline.
Write the report with Create a Page as a new page in my engineering Notion database, one page per week, titled with the week's date. Put backup risk at the very top: any production database where point-in-time recovery is not available must be called out first, by name, as a backup risk, before anything else in the report. Then cover, in order, which queries got worse since last week, which tables are taking heavy sequential scans and most likely need an index, which tables and databases are growing fastest, and which databases are closest to running out of connections or disk. Close with a short prioritized list of what to do next.
Write it in plain terms for an engineer who is not a database specialist. Say things like "queries that are slowing your app down" and "tables missing an index". Do not name the internal Postgres statistics tables the data comes from, and avoid database jargon generally. Always include the actual numbers behind a claim so a reader can check it, and prefer "2.4x slower than last week" over restating raw totals.
Finally, post a short summary to my engineering Slack channel with Send a Message: the top three issues only, one line each, worst first, with a link to the Notion page. If any production database has no point-in-time recovery available, that is issue number one regardless of what else turned up that week.
Example output
What does this prompt do?
- Every Monday morning, reads every Render Postgres database on your account and writes a full health review as a new page in your engineering Notion database, one page per week.
- Explains in plain terms which queries got slower since last week, which tables are being read end to end because they are missing an index, and which tables are growing fastest.
- Checks connection counts and disk usage on each database so you see saturation building up while there is still time to act.
- Calls out any production database without point-in-time recovery at the very top as a backup risk, then posts the top three issues to Slack with a link to the full page.
What do I need to use this?
- A Render account with at least one Postgres database. You connect it with an API key from your Render account settings.
- A Notion workspace with an engineering database where the weekly report pages should be created, shared with your Notion connection.
- A Slack workspace and the channel where the short Monday summary should be posted.
- Nothing else. The workflow only reads from Render, it never changes your databases.
How can I customize it?
- Change the timing. Swap Monday at 7am for any day or hour, or run it daily while you are working through a performance problem.
- Narrow the scope to production only, so staging and preview databases stay out of the report.
- Adjust what counts as urgent. Raise or lower the connection and disk thresholds, or ask for the top five issues in Slack instead of three.
FAQs
Will this change anything in my databases?
How does it know what got worse?
Do I need to be a database expert to read the report?
What if some of my databases do not have point-in-time recovery?
Does this still work if I have a lot of databases?
Related templates
When someone leaves, we check which shared passwords they used in their final months and post a ranked rotation list to your security channel.
Every Monday, check every S3 bucket for public exposure, missing encryption and weak backup settings, then get the risks ranked in Slack.
Twice every weekday, the conversations from your social inbox land on the right HubSpot contact timelines, with a Slack recap for sales.
Every morning, find the addresses that hard bounced or filed a spam complaint, update the matching HubSpot contacts, and post a short Slack recap.
Every weekday at 4pm, spot the threads that went quiet, stage a ready-to-send nudge in your mailbox, and get a ranked Slack recap.
When you merge a fix in GitHub, this agent checks the matching dead-letter queue, replays the failed messages, and reports back on the pull request and in Slack.
Stop finding out about slow queries during an outage.
Get a written health check on every Render database every Monday, with the riskiest ones named first.