Skip to content
HomeKnowledge BaseStatisticsChangelog GitHub Discord Email
operations / Health Monitoring

No results for ""

Health Monitoring

Overview

Demyx has three built-in health checks that run automatically via cron:

CheckCronTrigger
App containersEvery 5 minutesAny container not in running state
Disk usageHourlyUsage exceeds DEMYX_HEALTHCHECK_DISK_THRESHOLD
Load averageEvery 5 minutes5-min load exceeds DEMYX_HEALTHCHECK_LOAD

Enabling Global Healthchecks

In demyx host edit:

bash
DEMYX_HEALTHCHECK=true
DEMYX_HEALTHCHECK_DISK_THRESHOLD=80
DEMYX_HEALTHCHECK_LOAD=10

Restart: demyx host restart

Per-App Healthcheck

Each app can have its healthcheck enabled or disabled independently:

bash
demyx config domain.tld --healthcheck=true
demyx config domain.tld --healthcheck=false

Running Manually

bash
# Check all app containers
demyx healthcheck app

# Check disk
demyx healthcheck disk

# Check load
demyx healthcheck load

No output means everything is healthy. Output only appears when an issue is detected.

App Healthcheck Detail

When a container fails, demyx healthcheck app shows:

  1. Docker logs for the failed container (last 50 lines)
  2. The app's MariaDB/NGINX log file tails

This helps diagnose the root cause before alerting.

Notifications

Healthcheck failures can be sent via:

  • SMTP — configure DEMYX_SMTP_* variables and DEMYX_SMTP=true
  • Custom callback — see Developer: Custom Callbacks for Matrix, Slack, Telegram, etc.

Disabling Warnings

If you intentionally don't want healthchecks, set DEMYX_HEALTHCHECK=false in demyx host edit to suppress the MOTD warning.