CronBeatCronBeat

Alerts & Channels

CronBeat alerts you when something goes wrong with your monitors and notifies you when they recover. This page explains alert types, notification channels, and how to configure them.

Alert Types

Different monitor types trigger different kinds of alerts:

Alert TypeTriggered WhenMonitor Types
MissingExpected heartbeat ping was not received within the grace periodHeartbeat
Check FailedActive check failed (connection error, timeout, DNS failure)HTTP, TCP, Ping
Rule MatchedActive check succeeded but an alert rule condition was metHTTP, TCP, Ping
RecoveredMonitor returned to healthy state after being downAll types

Alert Lifecycle

text

Missing Alert (Heartbeat)

When a heartbeat monitor expects a ping by a certain time (based on schedule + grace period), and the ping doesn't arrive, CronBeat triggers a Missing alert.

Common causes:

  • The job didn't run (cron daemon stopped, scheduler issue)
  • The job failed before reaching the ping command
  • The ping command failed (network issue, wrong key)

Check Failed Alert (Active)

When CronBeat cannot complete an active check — the target is unreachable, the connection times out, or an error occurs during the request.

Common causes:

  • Server is down or unreachable
  • DNS resolution failure
  • Connection timeout
  • SSL/TLS certificate error

Rule Matched Alert (Active)

When an active check succeeds (connection established, response received) but one of your configured alert rules matches. For example, the server responded with a 500 status code, or the response time exceeded your threshold.

Recovery Alert

When a monitor transitions from Down back to Up, CronBeat sends a Recovered alert. This lets you know the issue has been resolved without having to check the dashboard.

Silence Period

The Silence Period controls how long CronBeat waits before sending another alert for the same monitor that remains down. This prevents alert fatigue from repeated notifications.

DurationBest For
10 minutesCritical systems requiring constant awareness
30 minutesImportant services with active on-call
1 hour (default)Most production services
2 hoursNon-critical services
6 hoursBackground systems
12 hoursLow-priority monitors
24 hoursServices checked infrequently

The silence period only applies to repeated alerts for the same ongoing incident. Recovery alerts are always sent immediately when the monitor comes back up.

Notification Channels

CronBeat supports multiple notification channel types. You can create multiple channels and assign them to different monitors.

Email

The simplest channel — alerts are sent to an email address.

  • Setup: Add any email address as a channel
  • Verification: A confirmation email is sent; click the link to verify
  • Delivery: Typically arrives within 1-2 minutes

Email channels must be verified before they can receive alerts. Check your spam folder if you don't see the verification email.

Slack

Send alerts to a Slack channel via incoming webhooks.

  • Setup: Create an Incoming Webhook in your Slack workspace, then paste the webhook URL
  • Delivery: Near-instant (seconds)

Telegram (coming soon)

Receive alerts through a Telegram bot.

  • Setup: Create a bot via @BotFather, get the bot token and your chat ID
  • Delivery: Near-instant (seconds)

Webhook

Send alerts as HTTP POST requests to any URL. Ideal for custom integrations and automation.

  • Setup: Provide a URL that accepts POST requests with JSON body
  • Delivery: Near-instant (seconds)

Webhook payload structure:

json

The alertType field matches the alert types above: missing, check_failed, check_rule_matched, or recovered. The metadata contains context-specific fields depending on the alert type.

If a webhook secret is configured, CronBeat includes an X-CronBeat-Signature header (HMAC-SHA256) for payload verification.

WeChat (coming soon)

Send alerts through WeChat Work (Enterprise WeChat) bots.

  • Setup: Create a bot in your WeChat Work group, then paste the webhook URL
  • Delivery: Near-instant (seconds)

Channel Management

Default Channels

Mark a channel as default and it will automatically be assigned to all new monitors. This is convenient when you have a primary notification channel (e.g., a team Slack channel) that should receive all alerts.

Per-Monitor Channels

Each monitor can have its own set of notification channels. When editing a monitor, select which channels should receive alerts for that specific monitor.

Strategy suggestions:

  • Critical monitors: Email + Slack + Telegram (redundancy)
  • Standard monitors: Slack or Email
  • Background monitors: Email only
  • CI/CD integration: Webhook

Testing Channels

After setting up a channel, use the Test button in Settings > Alert Channels to send a test notification. This verifies:

  1. The channel configuration is correct
  2. The destination is reachable
  3. You can actually see the notifications

Always test your channels after setup. A monitor alert that goes to an unconfigured or broken channel is worse than no alerting at all.