Делаем очень простой мониторинг сервера или сайта с помощью скрипта PHP Server Monitor. Для установки и базовой работы подойдёт почти любой хостинг или сервер.
Для запуска скрипта, нам потребуется:
— PHP версии 5.3.7 и выше.
— PHP модули curl и mysql.
— Непосредственно MySQL\MariaDB база.
Установка PHP Server Monitor.
Ставим PHP Server Monitor как любой другой PHP скрипт.
1. Скачиваем, распаковываем, запускаем install.php в браузере. Ссылка на загрузку доступна на странице проекта. Загружаем архив на сервер удобным для нас способом (работая по SSH, если есть такая возможность, либо по FTP, если это обычный хостинг).
2. Жмём на кнопку Let’s go, следуем инструкциям системы.
- Указываем данные для соединения с базой данных (она, конечно же, должна быть предварительно создана), адрес панели мониторинга.
- Следующим шагом PSM попытается записать конфиг, если у него по какой-то причине не хватит прав, будет предложено создать config.php вручную.
- Последним шагом здесь будет создание пользователя, которым мы и будем работать с мониторингом.
Добавляем ресурс в мониторинг.
1. Авторизуемся в панели созданным ранее пользователем и переходим в раздел Servers. Нажимаем на кнопку «Add new +» для добавления нового сервиса.
2. На открывшейся странице заполняем нужные нам данные:
- Label — название (метка) ресурса в мониторинге.
- Domain/IP — имя домена или IP адрес, который мы будем мониторить.
- Type — тип мониторинга. Здесь мы можем выбрать простой пинг, указать конкретный сервис, либо указать адрес сайта. В соответствии с выбором далее система предложит настроить либо сервис/порт, который будет проверяться, либо ключевое слово, которое будет проверять мониторинг на странице. Так же, будет предложено настроить таймауты проверки.
- Warning threshold — количество failed ответов, после которого сервер будет помечен как упавший.
Предложенные таймауты здесь стоит выставлять очень аккуратно. Если вы будете мониторить свои собственные ресурсы со своего же сервера, то их можно уменьшить, но если вы настраиваете мониторинг, например, на хостинге, имеет смысл оставить хоть какие-то таймауты, что бы не создавать подозрительной активности частыми исходящими запросами.
При необходимости, на этой же странице мы можем настроить аутентификацию на проверяемом сервисе, настроить тип уведомлений и указать, кому из пользователей будут доступны данные мониторинга этого нашего ресурса.
Когда всё будет заполнено и настроено, нажимаем на кнопку Save, переходим во вкладку Status и видим там наш добавленный ресурс.
Настраиваем уведомления.
Монитоинг поддерживает несколько видов уведомлений — email, sms, pushover. Всё это настраивается во вкладке Config, далее, в соответствующей секции. Для почты имеется возможность прописать данные для SMTP авторизации, для отправки SMS уведомлений доступны на выбор несколько провайдеров, ну а для PUSH сообщений потребуется аккаунт на pushover.net
Дополнительные настройки.
Опять же, в разделе Config, в секции General мы при необходимости можем настроить язык интерфейса (русский имеется), указать ключ, которым будут зашифрованы введённые пароли, задать статус, в соответствии с которым будут отправляться уведомления, включить логи и, при необходимости, подключить работу через proxy сервер.
Вот такой простой, но в то же время удобный и функциональный скрипт, позволяющий даже не самому опытному в делах системного администрирования веб-мастеру настроить мониторинг своих сайтов и ресурсов.
Кто говорил, что он телеграм умеет? Как это реализовывается?
В настройках профиля есть кнопка «Активировать уведомления в Telegram».
Добрый день, прочитал Вашу статью, скачал всё установил но к сожалению такой кнопки у меня нету. Есть какие то варианты сделать уведомления в телеграмм? Автор возможно убрал эту функцию
Добрался таки до этого вопроса и разобрался в чём дело. У меня версия, установленная из git сейчас, а в статье, когда я писал её, я использовал просто последнюю, доступную для загрузки. Чуть позже заморочусь и допишу этот момент.
А пока что, можно попробовать взять версию из репозитория https://github.com/phpservermon/phpservermon Там нужная кнопка имеется.