Watchdogs/ docs: new README + Manual, update affected folders

New docs:
  Watchdogs/README-Watchdogs.md  — design, relationships, script table, state file map
  Watchdogs/Manual-Watchdogs.md  — full config reference for all 4 watchdogs

Docker_Essentials/:
  README — remove docker_watchdog, update folder description and diagrams
  Manual  — strip watchdog config sections, add pointer to Watchdogs/Manual

unRAID_Essentials/:
  README — remove system/resource watchdog, update diagrams and script table
  Manual  — strip system/resource watchdog sections, update TOC + config reference

README.md:
  Add Watchdogs/ to folder structure
  Fix "WHAT RUNS WHEN" — watchdogs run via orchestrator every minute, not array start
  Fix daily cycle and monitoring diagrams
This commit is contained in:
Gmer4Lfe
2026-05-22 17:26:21 -04:00
parent ec79a926e8
commit 8a3e22c9b8
7 changed files with 912 additions and 707 deletions
+20 -8
View File
@@ -448,8 +448,8 @@ Failover coverage:
serves Gmer4Lfe.us via DDNS
Monitoring:
Both servers system_watchdog.sh system_watchdog.sh
docker_watchdog.sh docker_watchdog.sh
Both servers resource/docker/storage/ resource/docker/storage/
system_watchdog.sh system_watchdog.sh
failover.sh failover.sh
Sunday morning coffee report Sunday morning coffee report
```
@@ -476,10 +476,13 @@ Unraid_Scripts/
├── Failover/ ← Mutual automatic failover — continuous background process
│ README: README-Failover.md
├── Docker_Essentials/ ← Container lifecycle: watchdog, restarts, networks
├── Watchdogs/ ← All watchdog scripts: resource, docker, storage, system
│ README: README-Watchdogs.md
├── Docker_Essentials/ ← Container lifecycle: restarts, updates, networks
│ README: README-Docker_Essentials.md
├── unRAID_Essentials/ ← Server-level: system watchdog, WebGUI, log hygiene, tuning
├── unRAID_Essentials/ ← Server-level: WebGUI, log hygiene, kernel tuning
│ README: README-Unraid_Essentials.md
├── Media/ ← Library health + behavior-driven discovery: permissions, junk cleanup, orphan removal, weekly arr adds
@@ -539,10 +542,15 @@ At Startup of Array:
→ php_fpm_max_children.sh WebGUI tuning before first request
→ ramdisk_setup.sh create ramdisk before Emby starts
→ docker_network_connect.sh connect containers to extra networks
→ system_watchdog.sh continuous — last resort server stability
→ docker_watchdog.sh continuous — two-tier container healing
→ failover.sh continuous — mutual failover state machine
Every minute:
watchdog_orchestrator.sh fires each watchdog in sequence
→ resource_watchdog.sh reduce pressure before healing attempts
→ docker_watchdog.sh two-tier container healing
→ storage_watchdog.sh pool growth + runaway log detection
→ system_watchdog.sh last resort — reboots when all else fails
Every 3 minutes:
transcode_management.sh cleanup → manager (order non-negotiable)
@@ -582,9 +590,13 @@ Sunday morning block (611am):
What actually happens on a typical day, from the ecosystem's perspective:
```
Throughout the day:
Throughout the day (every minute via watchdog_orchestrator.sh):
resource_watchdog.sh managing: system pressure (throttle/pause/stop)
docker_watchdog.sh healing: memory leaks, HTTP failures, required containers
storage_watchdog.sh watching: appdata growth rate, runaway log files
system_watchdog.sh watching: RAM, CPU temp, rootfs, kernel, daemon
docker_watchdog.sh watching: memory, CPU, HTTP health, required containers
Throughout the day:
failover.sh watching: remote server, internet connectivity
transcode_management.sh managing: ramdisk ↔ SSD, session cleanup (every 3min)
critical_sync_maintenance.sh keeping: auth stack + Emby current (every 15min)