Skip to content

Monitors Setup Handoff

[Claude Code], 2026-04-14

Status: COMPLETE ✓

Cron Jobs Installed

*/5  * * * *  scripts/monitors/security-check.sh   (every 5 min)
*/10 * * * *  scripts/monitors/infra-check.sh       (every 10 min)
*/15 * * * *  scripts/monitors/business-check.sh    (every 15 min)
All installed to justinwieb crontab. Errors log to logs/cron-errors.log.

Monitor Results (test run 2026-04-14 01:09)

Monitor Status Notes
infra-check.sh ✓ Working media-server RAM at 87% (real warning, within spec)
security-check.sh ✓ Working Clean after port filter fix
business-check.sh ✓ Working Sites up, Drive inbox quiet

Bugs Fixed During Setup

  1. infra-check.sh, $HAS_CRITICAL && PRIORITY="critical" fails with set -e when false → changed to if $HAS_CRITICAL; then ... fi
  2. infra-check.sh, curl -w "%{http_code}" ... || echo "000" doubled the code (curl prints "000" before exiting 1) → changed to ; true suffix
  3. infra-check.sh: AdGuard URL was http://192.168.86.75:3000/ (port not exposed to LAN) → fixed to http://192.168.86.75/ (port 80, returns 302)
  4. security-check.sh: Same $HAS_HIGH && PRIORITY="high" boolean bug → fixed
  5. security-check.sh, grep -ci ... || echo "0" doubled count (grep prints "0" before exiting 1) → fixed to grep -ci ... || true + default
  6. security-check.sh: Port filter only checked process names; many known ports (22, 80, 111, 139, 445, 8085, 8006, Tailscale IPs) had no process name visible → expanded KNOWN_PORTS_FILTER to include expected UDev ports

ntfy.sh Setup

  • Topic: forge-jw-x7k4 (non-obvious, no signup required)
  • Config: FORGE_NTFY_TOPIC=forge-jw-x7k4 in forge/.env
  • notify.sh updated to source forge/.env before reading env vars
  • Subscribe: open ntfy app → add topic forge-jw-x7k4 on ntfy.sh
  • Test result: [notify] Sent via ntfy

Channel Status

Channel Status
Local file ✓ Active (always writes to notifications/latest.md)
ntfy.sh ✓ Active (topic: forge-jw-x7k4)
n8n webhook Not configured (FORGE_N8N_WEBHOOK not set)
Discord Not configured
Slack Not configured

Real Alerts From Test Run

  • media-server RAM at 87%, genuine, over 85% threshold. Created a task. Watch for trend.

tasks/pending/ Health

Clean, only 3 pre-existing tasks (daily-email-briefing, n8n-webhook-setup, plex-health-check), none from monitors.