Перейти до вмісту

Монітор стану магазину

Монітор стану магазину - це опціональний модуль, який у фоні спостерігає за операційними сигналами магазину та попереджає, коли щось перестає працювати. На відміну від аудиту магазину (перевірки відповідності на вимогу) та реєстру інцидентів (ручний журнал), цей модуль працює за розкладом і сам оцінює три сигнали: критичні помилки на фронті, відсоток невдалих платежів та аномалію продажів (“трафік є, але немає замовлень”).

Виявлення є пасивним: модуль спостерігає за реальними подіями WooCommerce та історією замовлень. Він ніколи не оформлює тестових замовлень, тому не створює фальшивих замовлень та не списує кошти з карток. Натомість проблему з платежем виявляють лише тоді, коли з нею стикається реальний клієнт.

Модуль вимкнено за замовчуванням. Увімкніть його в WooCommerce > Polski > Модулі (секція “Стан магазину”). Після увімкнення перевірки запускаються кожні 5 хвилин через WP-Cron. Пульт знайдете в WooCommerce > Polski > Звіти та інструменти > Стан магазину. Потрібен дозвіл manage_woocommerce.

СенсорЩо спостерігає
Критичні помилки (фронт)Фатальні помилки PHP на сторінках магазину (handler shutdown). Помилки в панелі та cron пропускаються. Активні протягом 15 хвилин від виникнення.
Каса / платежіВідсоток невдалих фіналізацій за останні 2 години. Спостерігає за класичною касою, блоковою касою (Store API) та статусом замовлення “невдале”.
Аномалія продажівПорівнює кількість замовлень за останню повну годину з типовою кількістю для того самого дня тижня та години за останні 8 тижнів. Оцінюється не частіше ніж раз на годину.
СтатусЗначенняКолір
OKУсе працює в нормізелений
ДеградаціяЗначення перевищили поріг, але це не повна аваріяпомаранчевий
АваріяСерйозна проблема (наприклад, критична помилка або відсутність продажів)червоний

Загальний статус - це найгірший статус серед сенсорів.

Як обчислюються пороги

Section titled “Як обчислюються пороги”
  • Каса / платежі: сповіщення зʼявляється, коли відсоток невдалих фіналізацій досягає порогу (стандартно 30%). При перевищенні порогу в 1,5 раза статус змінюється з “Деградація” на “Аварія”. Відсоток ігнорується, доки не зафіксовано мінімальної кількості фіналізацій (стандартно 5).
  • Аномалія продажів: “Аварія” повідомляється лише тоді, коли для даної години типово зʼявляється щонайменше стільки замовлень, скільки становить поріг (стандартно 3), а за останню повну годину не було жодного.

Коли статус погіршується відносно попередньої перевірки, модуль надсилає сповіщення. При тривалій проблемі сповіщення повторюється лише після завершення часу затихання (стандартно 60 хвилин), щоб уникнути повідомлень кожні 5 хвилин.

КаналДеталі
E-mailНадсилається на адресу сповіщень (стандартно e-mail адміністратора магазину).
WebhookОпціональний. Надсилає JSON-навантаження {"text": ...}, сумісне зі Slack/Discord.

При статусі “Аварія” запис потрапляє також до реєстру інцидентів безпеки, якщо цей модуль увімкнено, щоб подія мала аудиторський слід поряд з інцидентами, що реєструються вручну.

Пульт “Стан магазину” показує загальний статус, час останньої перевірки (UTC) та таблицю з кожним сенсором, його статусом і деталями. Кнопка Запустити перевірку зараз примусово виконує негайну оцінку. Коли статус не “OK”, у панелі зʼявляється відповідне сповіщення з посиланням на пульт.

Налаштування знаходяться на картці модуля в WooCommerce > Polski > Модулі.

НалаштуванняЗа замовчуваннямОпис
Адреса e-mail для сповіщеньe-mail адміністратораКуди надсилати сповіщення про стан.
URL webhook(порожньо)Опціональний JSON-webhook (Slack/Discord).
Поріг невдалих платежів (%)30Сповіщення, коли такий відсоток фіналізацій зазнає невдачі за останні 2 год.
Мінімальна вибірка фіналізацій5Ігнорувати відсоток, доки немає щонайменше стількох фіналізацій.
Поріг аномалії продажів3Сповіщати лише тоді, коли типово для даної години є стільки замовлень, а немає жодного.
Затихання сповіщень (хвилини)60Мінімальний інтервал між повторними сповіщеннями для тривалої проблеми.
GET /wp-json/polski/v1/store-health

Повертає поточний стан (загальний статус, сенсори, час перевірки). Потрібен дозвіл manage_woocommerce.

Сповіщення не доходять - перевірте конфігурацію e-mail WordPress. Розгляньте плагін SMTP (наприклад, WP Mail SMTP) замість стандартного wp_mail().

Сенсор каси показує “недостатньо даних” - це нормально для магазинів з малим трафіком. Відсоток оцінюється лише після досягнення мінімальної вибірки фіналізацій.

Аномалія продажів не реагує - модуль потребує історії замовлень за попередні тижні для даної години. У новому магазині типове значення буде низьким, і поріг не буде досягнуто.

Перевірки не запускаються - WP-Cron працює при трафіку на сайті. У магазинах з малим трафіком розгляньте системний cron (wp-cron.php, що запускається через cron сервера).

Повідомлення про проблеми: github.com/wppoland/polski/issues

Ця сторінка має виключно інформаційний характер і не є юридичною консультацією. Перед впровадженням проконсультуйтеся з юристом. Polski for WooCommerce є програмним забезпеченням з відкритим кодом (GPLv2), що постачається без гарантій.