checkId: check.observability.alerting plugin: stellaops.doctor.observability severity: info tags: [observability, alerting, notifications]

Alerting Configuration

What It Checks

Looks for configured alert destinations such as Alertmanager, Slack, email recipients, or PagerDuty routing keys.

The check reports info when alerting is explicitly disabled or when no destination is configured. It warns only when a destination is present but obviously malformed, such as invalid email addresses.

Why It Matters

Metrics and logs are not actionable if nobody is notified when thresholds are crossed. Production installs should route alerts somewhere outside the application process.

Common Causes

How to Fix

Docker Compose

docker compose -f devops/compose/docker-compose.stella-ops.yml exec doctor-web printenv | grep -E 'ALERT|SLACK|PAGERDUTY|SMTP'

Example compose-style configuration:

services:
  doctor-web:
    environment:
      Alerting__Enabled: "true"
      Alerting__AlertManagerUrl: http://alertmanager:9093
      Alerting__Email__Recipients__0: ops@example.com

Bare Metal / systemd

Configure Alerting:* settings in the service configuration and ensure secrets come from the platform secrets provider rather than clear text files.

Kubernetes / Helm

Store webhook URLs and routing keys in Secrets, then mount them into Alerting:* values.

Verification

stella doctor run --check check.observability.alerting