Мониторинг запускает скрипт и смотрит только на код завершения. Сделай так, чтобы скрипт не обманывал.
Мониторинг каждую минуту запускает на клиенте /opt/ports-lab/check.sh с адресом страницы. Код 0 — сервис здоров, любой другой — тревога. Сейчас скрипт рапортует «здоров», когда сервис отвечает ошибкой, а на службе, которая приняла подключение и молчит, зависает.
Скрипт, который не обманывает
Исправь /opt/ports-lab/check.sh: код 0 — только когда страница ответила без ошибки HTTP; ответ с ошибкой и молчание дольше 3 секунд — другой код. Мониторинг запускает его так: sudo ip netns exec lab-client sh /opt/ports-lab/check.sh АДРЕС. Проверь на http://192.0.2.10:8080/health, http://192.0.2.10:8080/broken и http://192.0.2.10:8082/ — там служба принимает подключение и молчит.
Цели · 0 из 2
- Отличать рабочий ответ от ошибки HTTP ещё не выполнена
- Не ждать молчащую службу дольше 3 секунд ещё не выполнена