Вступ
Класична неприємна ситуація: сайт на сервері працює, адміністратор бачить нормальну відповідь, а частина користувачів скаржиться, що все червоне і не відкривається.
Що було не так
Проблема не схожа на звичайний баг сайту. За результатами перевірки сервера та локальної мережі все могло бути нормально, але з інших мереж надходили таймаути, помилки TLS або дивні HTTP-відповіді. Отже, потрібно було розділити три зони: сам сайт, DNS/SSL та регіональну доступність.
Діагностика
- перевірено HTTP-коди за списком URL-адрес;
- перевірено перенаправлення та TLS;
- перевірено доступність за IPv4;
- було виконано паралельні перевірки за допомогою curl;
- перевірено роботу через проксі/дзеркала;
- окремо перевірено, що origin-сервер працює.
Що було зроблено
- складено список URL-адрес для моніторингу;
- було проведено паралельну перевірку статусів;
- додано виведення кодів та часу відповіді;
- перевірено проксі та дзеркала;
- виділено коди, за якими можна визначити тип проблеми: 200/301/403/499/500/502/504;
- підготовлено план подальшого спостереження.
Результат
Замість відчуття «сайт іноді не працює» з’явилася карта симптомів. Можна зрозуміти, чи це проблема сервера, DNS/SSL, маршруту, проксі-сервера чи конкретних провайдерів.
Що слід контролювати надалі
У таких випадках потрібен моніторинг з кількох точок, а не одна перевірка з робочого ноутбука. Один зелений curl не доводить, що сайт доступний для всіх клієнтів.