Repository navigation
feat(observability): alert on stale backups, degraded databases and expiring certificates - #426
Conversation
…xpiring certificates Retiring kube-prometheus-stack left three signals without an alert. A production-only CronJob in the observability namespace now lists Velero schedules and backups, CloudNativePG clusters and backups, and cert-manager certificates every six hours, and posts one Slack message through the existing webhook when a backup failed or is stale, a database has no recent backup, a missing replica or a failing WAL archive, or a certificate expires within 14 days. Its identity can only list those kinds. Cluster Autoscaler failures are left to Coroot: KSail owns the autoscaler, and its effect, pods left Pending, already surfaces as a Coroot incident. A new test runs the rendered script against recorded API responses, the observability validator pins the rendered resources and their absence in local, and the alerting guide lists the new signals. Part of #423 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai review |
Action performed
|
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 13 minutes. View limit details
No actionable comments were generated in the recent review. Walkthrough
Merge Risk:
|
User trial.
Not yet proven (why this says 🤖 Generated with Claude Code |
The platform-health-alert pod has no policy of its own: the observability namespace's allow-coroot policy selects every pod but the heartbeat and allows the API server, DNS and, in production, hooks.slack.com:443. The validator now requires the pod to stay outside the heartbeat carve-out and allow-coroot to keep those three egress rules, so narrowing either fails CI instead of silently stopping the alerts. Part of #423 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai review |
Action not completed
|
@codex review |
Codex Review Summary: ✅ CompletedThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Codex Review: Didn't find any major issues. 👍 Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
User trial at Still 🤖 Generated with Claude Code |
Why
When the old Prometheus stack was retired, three warnings lost their home: a backup that failed or stopped running, a database left without a recent backup or a working replica, and a certificate about to expire. Today these are found only when someone looks, or when the backup is needed.
What
Production clusters now run a small read-only check every six hours that posts to the existing Slack alerts channel whenever a backup is failed or stale, a database is degraded or unbacked, or a certificate expires within 14 days. Autoscaler failures are deliberately left to the existing observability tool, and the alerting guide now explains all of this. Delivery to Slack on a real production cluster is still to be observed.
Part of #423
🤖 Generated with Claude Code