Налаштування Synthetic Monitoring: захист критичних шляхів від збоїв

Коли серед робочого дня падає форма замовлення, uptime-моніторинг показує 200 OK, але клієнти не можуть оплатити. Ми налаштовуємо Synthetic Monitoring, який імітує дії реального користувача та перевіряє критичні шляхи — від пошуку до checkout. Наша команда реалізує проєкт під ключ: від аудиту сценаріїв до налаштування алертів і подальшої підтримки, щоб ви дізнавалися про збої до того, як їх помітить бізнес.

Розробка та обслуговування будь-яких видів сайтів:

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

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

Налаштування Synthetic Monitoring: захист критичних шляхів від збоїв

Тестування веб-додатківСередній~2-3 дні
Часті запитання

Як Synthetic Monitoring захищає критичні шляхи від збоїв

Уявіть: посеред робочого дня падає форма оформлення замовлення. Uptime-моніторинг показує 200 OK, але користувачі не можуть оплатити. Ми впроваджуємо Synthetic Monitoring — браузерний моніторинг, який кожні 5-15 хвилин проходить ключові сценарії та б'є тривогу при помилці. За 5 років практики на 50+ проектах ми відпрацювали схему, яка ловить збої до того, як їх помітить бізнес. Synthetic Monitoring імітує дії реального користувача: відкриває браузер, проходить за сценарієм (оформлення замовлення) і записує час кожного кроку, наявність помилок і скріншоти. Це виявляє проблеми, невидимі для uptime-моніторингу: зламаний JavaScript, змінений селектор, повільну відповідь API. За даними State of Synthetic Monitoring, 78% компаній уже використовують синтетичні перевірки для критичних сценаріїв. Synthetic Monitoring відповідає на питання «чи працює бізнес?», а не просто «чи відповідає сервер?». Це ключовий елемент Business Continuity.

На типовому e-commerce сайті ми налаштовуємо 5-7 сценаріїв: пошук, картка товару, кошик, checkout, підтвердження замовлення. Для SaaS — логін, створення ресурсу, ключова дія. Кожен сценарій виконується з кількох регіонів, щоб відсікти випадкові мережеві помилки.

Різниця з uptime моніторингом

Простий ping на GET / не є synthetic monitoring. Він відповідає лише на питання «чи живий сервер». Synthetic Monitoring перевіряє бізнес-функції:

  • Реєстрація нового користувача
  • Пошук і видача результатів
  • Додавання товару в кошик
  • Проходження checkout

Такі автоматичні перевірки надають метрики доступності та продуктивності кожного кроку. Це безпосередньо впливає на виручку: якщо checkout зламаний, сайт втрачає гроші. Одна година простою checkout може коштувати бізнесу мільйони гривень, залежно від трафіку та середнього чека.

Які критичні шляхи ми моніторимо

Тип сайту Критичні шляхи Частота перевірок
E-commerce Пошук → товар → кошик → checkout Кожні 5-10 хв
E-commerce Логін → особистий кабінет → історія замовлень Кожні 15 хв
SaaS Логін → дашборд → створення проекту Кожні 5 хв
SaaS API-ендпоінти для B2B клієнтів Кожні 1 хв
Контент-сайт Пошук → стаття → форма підписки Кожні 15 хв

Чому ми обираємо Playwright + Checkly?

Playwright — сучасний фреймворк для браузерної автоматизації. Він працює з Chromium, Firefox, WebKit. Playwright виконує тести в 2-3 рази швидше за Puppeteer завдяки паралельним контекстам і ефективному управлінню браузером. У поєднанні з Checkly (managed-платформа) ми отримуємо запуск тестів з 10+ регіонів світу, знімки екрану при помилці, трейс водоспаду запитів, інтеграцію з PagerDuty, Slack, Opsgenie.

Приклад скрипту для перевірки checkout:

// checkly: checkout-flow.spec.js
const { chromium } = require('playwright')
const { expect } = require('@playwright/test')

async function checkoutFlow() {
  const browser = await chromium.launch()
  const page = await browser.newPage()
  try {
    // Открыть каталог
    await page.goto('https://example.com/catalog')
    await expect(page.locator('.product-grid')).toBeVisible()

    // Выбрать первый товар
    await page.locator('.product-card').first().click()
    await expect(page.locator('[data-testid="product-title"]')).toBeVisible()

    // Добавить в корзину
    await page.locator('[data-testid="add-to-cart"]').click()
    await expect(page.locator('[data-testid="cart-count"]')).toContainText('1')

    // Перейти в корзину
    await page.goto('https://example.com/cart')
    await expect(page.locator('.cart-items')).toContainText('1 товар')

    console.log('Checkout flow: PASS')
  } finally {
    await browser.close()
  }
}

Що входить у налаштування Synthetic Monitoring під ключ

  • Аудит критичних шляхів: разом з вами визначаємо 5-7 сценаріїв, від яких залежить бізнес
  • Написання Playwright-тестів з обробкою помилок і асертами
  • Налаштування managed-платформи (Checkly або Datadog) або self-hosted на GitHub Actions
  • Інтеграція алертів у PagerDuty, Telegram, Slack
  • Управління тестовими даними: створення тестового користувача, очищення замовлень, виключення з аналітики
  • Документація з запуску та підтримки
  • Навчання команди (1 година відеоконференції)

Запишіться на консультацію — допоможемо підібрати оптимальний варіант моніторингу.

Self-hosted варіант: GitHub Actions + Playwright

Якщо бюджет обмежений, розгортаємо моніторинг на GitHub Actions. Код у репозиторії, запуск по cron кожні 5-15 хвилин:

---
name: Synthetic Monitoring
on:
  schedule:
    - cron: '*/5 * * * *'
  workflow_dispatch:
jobs:
  check-critical-paths:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Install Playwright
        run: npx playwright install chromium
      - name: Run synthetic checks
        run: npx playwright test tests/synthetic/
      - name: Notify on failure
        if: failure()
        run: curl -X POST "$SLACK_WEBHOOK" -d '{"text":"FAILED"}'
---

Обмеження: GitHub Actions cron не гарантує секундної точності (затримка до 5-15 хвилин). Для time-critical сценаріїв використовуйте managed-сервіси.

Як Synthetic Monitoring запобігає падінню виручки?

Реальний кейс: у клієнта-рітейлера після оновлення CMS зламався крок вибору способу доставки. Uptime-моніторинг мовчав (200 OK), а замовлення не оформлювалися 4 години. Synthetic-перевірка виявила проблему за 5 хвилин після деплою. Завдяки швидкому зворотному зв'язку downtime був зведений до мінімуму, що врятувало бізнес від втрати мільйонів гривень на місяць.

Ще один приклад: як ми запобігли збою на SaaS-платформі На одному проекті зміна API повернула 500 помилку на ендпоінті створення проекту. Synthetic-тест, що запускається кожні 5 хвилин, зафіксував падіння через 2 хвилини після деплою. Розробники отримали алерт і відкотили зміну за 10 хвилин. Без моніторингу простій тривав би до 2 годин.

Етапи робіт і терміни

  1. Аналітика (1 день): визначаємо критичні шляхи, узгоджуємо тестові дані
  2. Розробка тестів (1-2 дні): пишемо Playwright-скрипти, налаштовуємо середовище
  3. Інтеграція платформи (1 день): Checkly / Datadog / GitHub Actions + алерти
  4. Тестування (0.5 дня): прогін тестів, коригування таймаутів і локаторів
  5. Деплой і передача (0.5 дня): документація, навчання, передача доступу

Загальний термін — від 2 до 5 робочих днів залежно від кількості сценаріїв. Оцінимо ваш проект — напишіть на пошту або в месенджер.

Управління тестовими даними

  • Окремий synthetic-користувач з production-акаунтом
  • Платіжний метод: тестова картка (Stripe 4242)
  • Замовлення позначаємо тегом synthetic і виключаємо зі звітів
  • Щоденне очищення кошика та чернеток через API

Метрики та алерти

Метрика Опис Поріг спрацьовування
Availability % Відсоток успішних прогінок < 99% → warning, < 95% → critical
Step duration Час кожного кроку (P95) > 3 сек → warning, > 5 сек → critical
Total flow duration Загальний час сценарію > 10 сек → warning, > 20 сек → critical
First failure step На якому кроці сталася помилка Будь-яка помилка → critical

Алерти: якщо 2 з 3 перевірок з різних регіонів завершилися помилкою — critical в PagerDuty. Налаштовуємо ескалацію до команди за 5 хвилин.

Готові впровадити Synthetic Monitoring і захистити ваш бізнес від простоїв? Зв'яжіться з нами — оцінимо проект за один день. Отримайте консультацію інженера — розповімо, як убезпечити ваш проект.

Наші компетенції:

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1543
  • Розробка веб-додатків для компанії FEEDME
    Розробка веб-додатків для компанії FEEDME
    1394
  • Розробка веб-сайту для компанії БЕЛФІНГРУП
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1081
  • Розробка інтернет магазину для компанії FURNORO
    Розробка інтернет магазину для компанії FURNORO
    1374
  • Розробка веб-додатків для компанії Enviok
    Розробка веб-додатків для компанії Enviok
    1142
  • Розробка веб-сайту для компанії ФІКСПЕР
    Розробка веб-сайту для компанії ФІКСПЕР
    1060