Watchdog'и: email-дубль алертов на support@dttb.ru — buzharovo/server1c-watchdog (LXC139) + antoshka-watch-self (LXC137); секреты /root/.wd-mail.env, MIME UTF-8
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -56,6 +56,7 @@ journalctl -u openclaw-gateway.service -n 50 --no-pager
|
|||||||
- **Unit:** `/etc/systemd/system/buzharovo-watchdog.{service,timer}`
|
- **Unit:** `/etc/systemd/system/buzharovo-watchdog.{service,timer}`
|
||||||
- **Env:** `/etc/severny-les/watchdog.env` (TG token + chat_id)
|
- **Env:** `/etc/severny-les/watchdog.env` (TG token + chat_id)
|
||||||
- **State:** `/var/lib/severny-les/state.json` — антиспам (алерт только при смене уровня)
|
- **State:** `/var/lib/severny-les/state.json` — антиспам (алерт только при смене уровня)
|
||||||
|
- **Email-дубль (2026-06-29):** при алерте шлёт и письмо на `support@dttb.ru` (mailcow `mail.dttb.ru:587`, `admin@dttb.ru`). SMTP-секреты в `/root/.wd-mail.env` (chmod 600), MIME UTF-8. Бэкап: `buzharovo-watchdog.sh.bak-20260629`.
|
||||||
|
|
||||||
Уровни: `OK` / `WARNING` (часть проверок упала) / `WARNING_NETBIRD` (NB до server1c лежит, публично OK) / `CRITICAL` (сервер недоступен и публично, и через NetBird).
|
Уровни: `OK` / `WARNING` (часть проверок упала) / `WARNING_NETBIRD` (NB до server1c лежит, публично OK) / `CRITICAL` (сервер недоступен и публично, и через NetBird).
|
||||||
|
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ tags: [dttb, bot]
|
|||||||
Антошка защищён от падений в три слоя — при поломке чинится сам и пишет Олегу в TG (через свой токен `8020760639:…`, chat `1292155421`):
|
Антошка защищён от падений в три слоя — при поломке чинится сам и пишет Олегу в TG (через свой токен `8020760639:…`, chat `1292155421`):
|
||||||
|
|
||||||
1. **systemd** — user-сервис `openclaw-gateway` (`Restart=always` + `loginctl enable-linger root`): мгновенный авто-рестарт при краше + старт после ребута. (`systemctl --user`, нужен `XDG_RUNTIME_DIR=/run/user/0`.)
|
1. **systemd** — user-сервис `openclaw-gateway` (`Restart=always` + `loginctl enable-linger root`): мгновенный авто-рестарт при краше + старт после ребута. (`systemctl --user`, нужен `XDG_RUNTIME_DIR=/run/user/0`.)
|
||||||
2. **`/root/antoshka-watch-self.sh`** (cron `*/5`, внутри LXC 137) — глубокая проверка того, что systemd не ловит: служба активна + порт 18789 слушает, DNS не FakeIP (198.18/19.x), Telegram достижим (getMe), нет crash-loop (рост `NRestarts`). Лечит (рестарт gateway / NetBird), алертит с дедупом + «отбой». Алерт уходит даже если gateway лежит (токен ≠ gateway). State: `/root/.antoshka-watch-self.{last,nrestarts}`.
|
2. **`/root/antoshka-watch-self.sh`** (cron `*/5`, внутри LXC 137) — глубокая проверка того, что systemd не ловит: служба активна + порт 18789 слушает, DNS не FakeIP (198.18/19.x), Telegram достижим (getMe), нет crash-loop (рост `NRestarts`). Лечит (рестарт gateway / NetBird), алертит с дедупом + «отбой». Алерт уходит даже если gateway лежит (токен ≠ gateway). State: `/root/.antoshka-watch-self.{last,nrestarts}`. **Email-дубль (2026-06-29):** `send()` шлёт и письмо на `support@dttb.ru` (mailcow `mail.dttb.ru:587`); SMTP-секреты `/root/.wd-mail.env` (600), MIME UTF-8; бэкап `antoshka-watch-self.sh.bak-20260629`.
|
||||||
3. **`/root/antoshka-host-watchdog.sh`** (cron `*/5`, на Proxmox-хосте `10.0.0.250`) — если контейнер 137 лёг целиком (внутренний сторож не сработает) → `pct start 137` + алерт. State: `/root/.antoshka-host-watchdog.last`. (Хост достаёт Telegram через домашний обход — проверено getMe.)
|
3. **`/root/antoshka-host-watchdog.sh`** (cron `*/5`, на Proxmox-хосте `10.0.0.250`) — если контейнер 137 лёг целиком (внутренний сторож не сработает) → `pct start 137` + алерт. State: `/root/.antoshka-host-watchdog.last`. (Хост достаёт Telegram через домашний обход — проверено getMe.)
|
||||||
|
|
||||||
Боевой тест 2026-05-31: `systemctl --user stop openclaw-gateway` → self-watchdog поймал (служба=inactive, порт=0) → перезапустил → ⚠️-алерт → следующий прогон ✅-отбой. Парный скрипт в обратную сторону — `/root/antoshka-watch-alex.sh` (Антошка стережёт пилот Алекса, cron `*/3`).
|
Боевой тест 2026-05-31: `systemctl --user stop openclaw-gateway` → self-watchdog поймал (служба=inactive, порт=0) → перезапустил → ⚠️-алерт → следующий прогон ✅-отбой. Парный скрипт в обратную сторону — `/root/antoshka-watch-alex.sh` (Антошка стережёт пилот Алекса, cron `*/3`).
|
||||||
|
|||||||
Reference in New Issue
Block a user