From 568fdbeb3a6b5c0909c3dd4955e824313ce87167 Mon Sep 17 00:00:00 2001 From: dttb Date: Mon, 29 Jun 2026 13:00:41 +0300 Subject: [PATCH] =?UTF-8?q?Watchdog'=D0=B8:=20email-=D0=B4=D1=83=D0=B1?= =?UTF-8?q?=D0=BB=D1=8C=20=D0=B0=D0=BB=D0=B5=D1=80=D1=82=D0=BE=D0=B2=20?= =?UTF-8?q?=D0=BD=D0=B0=20support@dttb.ru=20=E2=80=94=20buzharovo/server1c?= =?UTF-8?q?-watchdog=20(LXC139)=20+=20antoshka-watch-self=20(LXC137);=20?= =?UTF-8?q?=D1=81=D0=B5=D0=BA=D1=80=D0=B5=D1=82=D1=8B=20/root/.wd-mail.env?= =?UTF-8?q?,=20MIME=20UTF-8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.8 --- projects/buzharovo/severny-les-bot.md | 1 + projects/dttb/openclaw.md | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/projects/buzharovo/severny-les-bot.md b/projects/buzharovo/severny-les-bot.md index 889ae59..e4fb922 100644 --- a/projects/buzharovo/severny-les-bot.md +++ b/projects/buzharovo/severny-les-bot.md @@ -56,6 +56,7 @@ journalctl -u openclaw-gateway.service -n 50 --no-pager - **Unit:** `/etc/systemd/system/buzharovo-watchdog.{service,timer}` - **Env:** `/etc/severny-les/watchdog.env` (TG token + chat_id) - **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). diff --git a/projects/dttb/openclaw.md b/projects/dttb/openclaw.md index a02cdff..e135d20 100644 --- a/projects/dttb/openclaw.md +++ b/projects/dttb/openclaw.md @@ -31,7 +31,7 @@ tags: [dttb, bot] Антошка защищён от падений в три слоя — при поломке чинится сам и пишет Олегу в TG (через свой токен `8020760639:…`, chat `1292155421`): 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.) Боевой тест 2026-05-31: `systemctl --user stop openclaw-gateway` → self-watchdog поймал (служба=inactive, порт=0) → перезапустил → ⚠️-алерт → следующий прогон ✅-отбой. Парный скрипт в обратную сторону — `/root/antoshka-watch-alex.sh` (Антошка стережёт пилот Алекса, cron `*/3`).