Download the PHP package vankazaov/ping-monitoring-tool without Composer
On this page you can find all versions of the php package vankazaov/ping-monitoring-tool. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download vankazaov/ping-monitoring-tool
More information about vankazaov/ping-monitoring-tool
Files in vankazaov/ping-monitoring-tool
Package ping-monitoring-tool
Short Description Ping Monitoring Tool on PHP
License BSD-3-Clause
Informations about the package ping-monitoring-tool
Ping Monitoring Tool on PHP
Производит мониторинг доступности веб-ресурса выполняя пинг по крону и сохраняя накопленную статистику.
В случае недоступности ресурса/восстановлении доступа к ресурсу, на указанные в настройках электронные адреса направляются соответствующие уведомления. Раз в неделю отправляется накопленная статистика.
System requirements
PHP > 7, PDO, SQLite3, Curl
Installation
Можно установить через Composer:
USAGE
Для настройки утилиты, необходимо:
- Скопировать из директории
/vendor/vankazaov/ping-monitoring-tool/src
в вашу рабочую папку файлыconfig-example.ini
иcron-run.php
. - Переименовать
config-example.ini
вconfig.ini
- Указать свои данные в конфигурационном файле.
- Запустить в CLI-режиме файл
cron-run.php
При первом запуске будет создана база данных и загружены настройки из конфигурационного файла. При изменении настроек конфигурационного файла в базе данных они перезагрузятся автоматически.
Настройка конфигурационного файла
- В секции
[mailer]
укажите основной почтовый серверsmtp_host_base
через который скрипт будет отправлять уведомления используя php-функциюmail()
и резервный адрес, если основной будет недоступен. - Предполагается, что будут несколько копий данного скрипта на разных серверах. Чтобы видить с какого сервера пришло письмо настройте заголовки
from
иfrom_server
. - По-умолчанию, включен режим повтора уведомлений о недоступности сервера каждые 60 минут. Параметры
repeat_down
иrepeat_down_every_minutes
. - Укажите каким пользователям будут высылаться сообщения: на каждого нового пользователя должна быть новая строка вида
recipients[] = "[email protected]"
. - В секции
[monitoring]
укажите сервера, которые необходимо мониторить:servers[] = "https://www.yandex.ru"
. - Вы также можете настроить количество неудачных попыток достучаться до сервера, с которых начнется отправка уведомления о недоступности:
failed_attempts["https://www.mera-device1.ru"] = 5
. По-умолчанию, уведомление отправляется при второй неудачной попытки. - Используя CRON настройте нужную периодичность запуска скрипта
cron-run.php
.
файл cron-run.php
Для тестирования, вы можете настроить объект класса Logger:
Первым параметром идет режим работы: prod\debug
.
Вторым параметром идёт уровень регистрируемых сообщений: 0, 1, 2.
В любом режиме в базе данных регистрируются ошибки.
Если уровень регистрируемых ошибок равен 0, то в лог попадают только ошибки.
Если уровень больше 0, то регистрируются все сообщения.
Если уровень больше 1 и режим debug
, то весь лог выводится в консоль.
Если вы хотите распечатать содержимое таблицы в базе данных, то раскомментируйте следующие строки
Вы можете распечатать любую существующую таблицу: monitoring, stats, config, logs.
CONTRIBUTING
Проект учебный, дальнейшая разработка и поддержка не предполагается.
LICENSE
BSD-3-Clause license
All versions of ping-monitoring-tool with dependencies
ext-curl Version *
ext-pdo Version *
ext-json Version *
ext-sqlite3 Version *
ext-mbstring Version *