Моніторинг доступності сайту (Uptime Monitoring)

Наша компанія займається розробкою, підтримкою та обслуговуванням сайтів будь-якої складності. Від простих односторінкових сайтів до масштабних кластерних систем, побудованих на мікро сервісах. Досвід розробників підтверджено сертифікатами від вендорів.
Розробка та обслуговування будь-яких видів сайтів:
Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Пропоновані послуги
Показано 1 з 1 послугУсі 2065 послуг
Моніторинг доступності сайту (Uptime Monitoring)
Проста
від 4 годин до 2 робочих днів
Часті питання
Наші компетенції:
Етапи розробки
Останні роботи
  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1171
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    874
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1094
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    831
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851

Моніторинг роботоспроможності сайту (Uptime Monitoring)

Uptime Monitoring — базовий шар спостережуваності: перевірка доступності URL через HTTP-запити з заданим інтервалом. Виявляє факт недоступності, але не причину. Має доповнюватися моніторингом інфраструктури та логуванням помилок.

Інструменти

SaaS (без інфраструктури):

  • UptimeRobot — безплатно до 50 моніторів, інтервал 5 хв. Платно — 1 хв.
  • Better Uptime — агрегує кілька локацій, статус-сторінка, on-call scheduling
  • Pingdom — Enterprise-рівень, RUM, API-моніторинг
  • StatusCake — хороше співвідношення ціна/якість

Self-hosted:

  • Uptime Kuma — Docker, веб-інтерфейс, підтримка багатьох типів перевірок
  • Gatus — конфігурація через YAML, Kubernetes-friendly
  • Blackbox Exporter + Prometheus + Grafana — для тих, у кого уже є Prometheus

Uptime Kuma через Docker

# docker-compose.yml
services:
  uptime-kuma:
    image: louislam/uptime-kuma:latest
    restart: unless-stopped
    ports:
      - "3001:3001"
    volumes:
      - ./uptime-kuma-data:/app/data

Gatus: декларативний моніторинг

# gatus/config.yaml
endpoints:
  - name: Main Site
    url: https://mysite.com
    interval: 1m
    conditions:
      - "[STATUS] == 200"
      - "[RESPONSE_TIME] < 2000"
      - "[CERTIFICATE_EXPIRATION] > 168h"  # > 7 днів до истечения

  - name: API Health
    url: https://api.mysite.com/health
    interval: 30s
    conditions:
      - "[STATUS] == 200"
      - "[BODY].status == UP"
      - "[RESPONSE_TIME] < 500"

  - name: Checkout Flow
    url: https://mysite.com/cart
    interval: 5m
    conditions:
      - "[STATUS] == 200"
      - "[BODY] pat *Add to cart*"

alerting:
  telegram:
    token: $TELEGRAM_BOT_TOKEN
    id: $TELEGRAM_CHAT_ID
    default-alert:
      enabled: true
      failure-threshold: 2
      success-threshold: 1

Багаторегіональний моніторинг

Перевіряйте з кількох локацій: інакше можете пропустити регіональний збій. Better Uptime та Pingdom включають це в базовий план.

Для self-hosted — кілька екземплярів Gatus у різних регіонах + центральний агрегатор.

Алертинг у Telegram

# Простий webhook-обробник для алертів
import requests
import os

def send_alert(message: str, is_recovery: bool = False):
    emoji = "✅" if is_recovery else "🚨"
    requests.post(
        f"https://api.telegram.org/bot{os.environ['BOT_TOKEN']}/sendMessage",
        json={
            "chat_id": os.environ['CHAT_ID'],
            "text": f"{emoji} {message}",
            "parse_mode": "HTML",
        }
    )

Що моніторити

URL Тип перевірки Інтервал
Головна сторінка HTTP 200 + content check 1 хв
API /health HTTP 200 + JSON 30 сек
Форма замовлення / checkout HTTP 200 5 хв
Сторінка входу HTTP 200 5 хв
Sitemap HTTP 200 15 хв
SSL-сертифікат Expiry > 14 днів 1 година

Налаштування Uptime Kuma або Gatus для сайту (10–20 endpoint-ів) — 2–4 години.