Skip to content

Heartbeats

Heartbeats provide a way to monitor that Butler SOS itself is running and working as intended.

Why heartbeats?

Butler SOS monitors your Qlik Sense environment - but what monitors Butler SOS?

If Butler SOS crashes or stops working, you might not notice until you check your dashboards and find missing data. Heartbeats solve this by having Butler SOS periodically "check in" with a monitoring tool.

If the monitoring tool doesn't receive a heartbeat within the expected timeframe, it can alert you that something is wrong with Butler SOS.

How it works

  1. Butler SOS sends an HTTP request to a configured URL at regular intervals
  2. The receiving tool tracks these check-ins
  3. If a check-in is missed, the tool can send an alert
text
┌─────────────┐         ┌─────────────────┐         ┌─────────────┐
│ Butler SOS  │ ──────► │ Monitoring Tool │ ──────► │   Alert     │
│             │  HTTP   │ (Healthchecks,  │ missed  │  (Email,    │
│             │  ping   │  Uptime Kuma)   │ ping    │   Slack)    │
└─────────────┘         └─────────────────┘         └─────────────┘

Monitoring tools

Popular tools that work with Butler SOS heartbeats:

ToolDescription
Healthchecks.ioOpen source, self-hosted or SaaS
Uptime KumaOpen source, self-hosted, modern UI

Both tools can send alerts via email, Slack, Teams, and many other channels.

Configuration

yaml
Butler-SOS:
  heartbeat:
    enable: true
    remoteURL: http://my.monitoring.server/some/path/
    frequency: every 1 hour
SettingDescription
enableEnable/disable heartbeat feature
remoteURLURL to ping (provided by your monitoring tool)
frequencyHow often to send heartbeats. Uses later.js text parser syntax

Frequency examples

SettingMeaning
every 1 hourOnce per hour
every 5 minutesEvery 5 minutes
every 30 secondsEvery 30 seconds

TIP

Match the heartbeat frequency to your monitoring tool's expected check-in interval. If you send heartbeats every hour, configure the monitoring tool to alert after 1.5-2 hours of no check-ins.

Released under the MIT License.