DF™ Site Monitor


DF™ Site Monitor (C++) — система мониторинга веб-сайтов. Система позволяет следить за доступностью и содержимым веб-сайтов: проверять на наличие и/или отсутствие на сайте заданного содержимого. Система может использоваться автономно или подключаться в качестве модуля к другим системам.

О системе:

  • Имеется веб-интерфейс для настройки системы и слежением за ходом проверки и состоянием сайтов.
  • Многопоточность. Одновременное сканирование нескольких сайтов.
  • Малые требования к хостингу. Написана на С++, не использует: MySQL, cron, Perl, PHP и прочее.
  • Встроенный планировщик, позволяющий системе работать без использования cron.
  • Поиск по маске. Маски позволяют более гибко анализировать html-код страниц. Например, с помощью масок вы можете определить находиться ли ваша ссылка в теле документа (<body>), закомментирована ли она, нет ли перед ней незакрытых html-тегов ограничивающих ее видимость на экране (<!--…-->,<script>,<textarea>) или запрета для индексирования ссылки в поисковых системах (<noindex>).
  • Работа с заданиями. Проверка сайтов группы один раз, выполнение отчета и автоматическое удаление группы.
  • Надежная проверка "подвисающих" сайтов, за счет увеличения числа проверок сайта при изменении его статуса на недоступен.
  • Распознавание переадресаций (редиректов) и переход на переадресуемый сайт с последующей его проверкой.
  • Возможность не учитывать при проверке сайтов параметры страницы (отбрасывание QUERY_STRING).
  • Интерфейс для подключения в качестве модуля к другим скриптам (API). Пример использования API на Perl.
  • Защита о перегрузки сервера. Имеется возможность ограничения числа проверяемых сайтов за один вызов скрипта.
  • Не ограниченное количество проверяемых сайтов.
  • Логирование изменений состояния веб-сайтов.
  • Проверяемые сайты делятся на группы с различными правилами проверки(мониторинга). Для каждой группы сайтов задается:
    • частота проверки сайтов в группе;
    • способ оповещения и события о которых, необходимо оповещать пользователя (E-Mail,вызов коммандной строки);
    • содержание которое должно присутствовать (например: Ваш баннер) и/или отсутствовать (например: скрипты, эксплойты) на сайтах данной группы. Количество пунктов в содержании не ограничено;
    • вести ли лог проверок.
  • Несколько способов информирования о смене состояния веб-сайта:
    • сообщение на Email (Email->SMS);
    • соединение с интернет-адресом и передача данных о новом состоянии веб-сайта методом GET;
    • запуск заданной командной строки и передача в поток данных о новом состоянии веб-сайта.
  • Задание параметров проверки для каждого веб-сайта(URL):
    • проверка на доступность страницы сайта (Uptime);
    • проверка на отсутствие заданного содержания (фреймы, скрипты, ActiveX);
    • проверка на наличие заданного содержания (баннеры, ссылки).