Я хотел бы проверить, что определенный порт на хосте закрыт, например 8080 порт на хосте www.example.com. Я пробовал что-то вроде:
check host www.example.com with address www.example.com
if not failed 8080 protocol http then alert
но я думаю, что не могу использовать этот синтаксис, потому что не ключевое слово здесь запрещено:
/etc/monit/conf.d/myhost:29: Error: syntax error 'failed'
Есть ли способ сделать это без написания внешнего скрипта?
Следующая проверка Monit попытается подключиться к серверу www.example.com через порт 8080, используя TCP.
if failed host www.example.com port 8080 then alert
Если операция подключения не удалась, Monit генерирует ошибку и выполняет действие, в этом случае он отправляет предупреждение.
Вот как это выглядит в журнале мониторинга:
error : socket_create: Could not create socket -- Operation now in progress
error : 'portCheckTest' failed, cannot open a connection to INET[www.example.com:8080] via TCP