20  /  22

Мониторинг

Просмотров: 215 (Статистика ведётся с 06.02.2017)
Дата последнего изменения: 18.10.2018

Автоматизация контроля

Чтобы «удержать в руках» эксплуатацию и быстро реагировать на инциденты и риски, необходимо автоматизировать контроль.

Это постепенный процесс, в котором веб-проект слой за слоем обрастает автоматическими тестами. Рекомендуем начинать с базовых тестов, которые можно отнести к «дымным» («smoke test»). Они реагируют на 70-90% проблем: пошел «дым», проблему сразу видно. Автоматизируют мониторинг готовое программное обеспечение: Nagios, Zabbix и аналоги.


Дымные тесты

Начинают с тестирования доступности (ping) серверов веб-проекта с сервера мониторинга, который специально выделяется для этих целей. И доступности всех остальных серверов (связность серверов). Также добавляется тест загрузки главной страницы веб-проекта.

В этом помогает встроенный в продукт инструмент облачной проверки веб-сайтов из двух точек – Инспектор сайтов Инспектор сайтов периодически проверяет доступность и работоспособность сайта и сообщает обо всех неполадках через E-mail или push-уведомления для мобильных устройств.

Подробнее ...
.


Функциональные тесты сервисов

На этом этапе добавляют автотесты, которые проверяют функционирование (запрос на порт сервиса) http-сервера (80, 443 порты), memcached-сервисов (11211) и баз данных mysql (3306).

Полезно анализировать:

  1. Число свободных и занятых процессов http-сервера (workers)
  2. Число занятых потоков mysql

Так можно уведомить службу эксплуатации, что нагрузка на http-сервер и базу данных повысилась и возможны задержки в обслуживании клиентов.

При использовании веб-кластера необходимо мониторить работоспособность mysql-репликации (см. приложение с подробным списком автотестов).


Функциональные тесты операционной системы

На этом этапе добавляют автотесты, которые проверяют ключевые метрики ОС:

  • Загруженность процессоров
  • Дисковой подсистемы
  • Оперативной памяти
  • Swap-памяти
  • Cети


Функциональные тесты бизнес-процессов веб-проекта

Добавляются тесты, которые эмулируют комплексные цепочки действий посетителей на веб-сайте и другие фундаментальные бизнес-процессы:

  • Оформление заказа
  • Начисление скидки
  • Импорт-экспорт

Цель автотестов – узнать об ошибках в работе основных бизнес-процессов веб-сайта раньше клиентов.


Unit-тесты кода и библиотек

Сложные нестандартные алгоритмы проекта следует покрывать модульными (unit) тестами. Эта практика приводит к удорожанию проекта, но качество веб-решения улучшается – еще на уровне кода вычищаются типовые ошибки.

Уведомления системы мониторинга в виде смс, push-уведомлений на смартфон и email в режиме 24/7 получают дежурные системные администраторы. Они стараются устранить проблему до того, как ее обнаружат посетители веб-системы. Поэтому необходимо утвердить в подразделении эксплуатации внутренний регламент о круглосуточных дежурствах.



0
Курсы разработаны в компании «1С-Битрикс»