- Главная
- Мониторинг
- Мониторинг WooCommerce
Мониторинг WooCommerce: магазин работает, но можно ли в нём купить?
Следите за страницей товара, корзиной, оформлением заказа и адресом платёжного webhook с помощью проверок ключевых слов и статуса, чтобы сломанную кнопку заметить до первого потерянного заказа.
- 30 мониторов бесплатно
- Без банковской карты
- Сбои подтверждаются из других регионов
- Amsterdam97мснайдено
- London142мснайдено
- Ключевое слово«Add to cart» есть
- Запрещённое«Error establishing» нет
- TTFB55 мс
Иллюстративный пример
Проверьте прямо сейчас, в браузере
Без регистрации. Мониторинг WooCommerce: введите адрес и посмотрите, что именно отслеживает такой монитор. Ничего из введённого не сохраняется.
Один настоящий запрос с проверяющего сервера Tenium. Он идёт по редиректам и читает сертификат. Ничего не сохраняется.
Публичный тест проверяет, что страница отвечает. Само правило (должна содержать, не должна содержать) работает в сохранённом мониторе.
Что именно проверяет этот монитор
Ключевое слово на странице товара
Требуйте «Add to cart» на товаре, который всегда есть в наличии. Обновление темы или плагина, ломающее кнопку, заметят уже на следующей проверке.
Корзина и оформление
Проверяйте страницы /cart и /checkout на слово, которое появляется, только когда они отображаются правильно, и запретите общее сообщение об ошибке.
Адрес webhook
Платёжные шлюзы обращаются обратно к вашему сайту. Следите за этим адресом с широким диапазоном статусов, чтобы ответ 5xx или таймаут сразу бросались в глаза.
Медленное оформление
На Pro задайте порог медленного ответа, и оформление, которое затягивается на несколько секунд, вызовет оповещение о снижении скорости.
Мониторинг WooCommerce: как выглядит оповещение
Одно и то же событие приходит письмом, сообщением в Telegram или карточкой в Slack. Это текст, который отправляют каналы; хост, время и числа выдуманы.
shop.clienta.com
shop.clienta.com · Keyword "Add to cart" missing · confirmed from Amsterdam (AMS), London (LON)
| Error | Keyword "Add to cart" missing |
|---|---|
| Confirmed by | Amsterdam (AMS), London (LON) |
| Since | 14:02:11 UTC |
| Target | shop.clienta.com |
| Next step | Check the server / hosting panel. Acknowledge so the team knows you are on it. |
AcknowledgeOpen incident
<h1>Error establishing a database connection</h1>
Tenium · checked from Amsterdam · 14:02 UTC
Tenium alerts
🔴 DOWN · shop.clienta.com · Keyword "Add to cart" missing · confirmed from Amsterdam (AMS), London (LON)
reply /ack or acknowledge · open incident
TTenium APP 2:02 PM
DOWN · shop.clienta.com
shop.clienta.com · Keyword "Add to cart" missing · confirmed from Amsterdam (AMS), London (LON)
- Error: Keyword "Add to cart" missing
- Confirmed by: Amsterdam (AMS), London (LON)
- Target: shop.clienta.com
Подтвердить получениеOpen incident
Check the server / hosting panel. Acknowledge so the team knows you are on it. · checked from Amsterdam
Мониторинг WooCommerce: e-mail, Discord и Google Chat работают на всех тарифах, Slack, Telegram, Teams и Mattermost — с тарифа Starter. SMS и голосовых звонков нет.
Время ответа с порогом
Каждая проверка сохраняет, сколько длился ответ. Мониторинг WooCommerce: подвигайте порог и посмотрите, когда сработало бы оповещение о медленном ответе.
Как быстро вы узнаете
Выберите тариф, чтобы увидеть его интервал проверки и сколько сбой идёт до вас, с учётом подтверждения.
Мониторинг WooCommerce: сбой случается в случайный момент между двумя проверками, поэтому в среднем вы ждёте полинтервала, а в худшем случае — полный интервал плюс окно подтверждения. Одного региона с ошибкой мало: инцидент открывается, только когда сбой подтверждают оба региона. Остальные регионы спрашиваются сразу, на ответы отведено до 60 секунд.
Как настроить мониторинг WooCommerce за 30 секунд
Выберите товар-индикатор
Возьмите тот, что всегда опубликован и есть в наличии, и добавьте его как монитор Keyword, где должно быть «Add to cart».
Добавьте корзину и оформление
По одному монитору Keyword на каждую страницу: фраза со страницы и сообщение об ошибке как запрещённое ключевое слово.
Добавьте платёжный callback
HTTP-монитор на адрес callback шлюза с ожидаемым статусом 200-499, чтобы оповещали только серверные ошибки и таймауты.
Направьте оповещения в чат
Telegram и Slack доступны с тарифа Starter. Эскалация на второй контакт — функция тарифа Pro.
Что означает каждая ошибка
Это текст, который инцидент показывает в строке «Error», типичная причина и что проверить первым.
KEYWORDKeyword "Add to cart" missing
Страница ответила, но фразы в ней нет: закешированная страница ошибки, недорендеренный шаблон, пустой фид товаров. Именно это не видят проверки только по статусу.
Выглядит как: Keyword "Add to cart" missing
KEYWORDForbidden keyword "Error establishing a database connection" present
Текст ошибки появился в теле, обычно под бодрым кодом 200. WordPress и многие CMS так делают, когда пропадает база данных.
Выглядит как: Forbidden keyword "Error establishing a database connection" present
BLOCKEDBlocked by WAF challenge (Cloudflare)
Проверка на бота заменила страницу, поэтому ключевое слово найти нельзя. Это «заблокировано», а не «недоступно»: разрешите проверяющий сервер, и всё стихнет.
Выглядит как: Blocked by WAF challenge (Cloudflare)
TIMEOUTTimeout after 15 s
Страница так и не загрузилась. Проверка читает примерно до 1 МБ тела, поэтому очень медленный origin сбоит здесь ещё до оценки текста.
Выглядит как: Timeout after 15 s
CERT_HAS_EXPIREDTLS error: certificate has expired
Сертификат больше не действителен, поэтому страницу нельзя получить безопасно. Продлите его.
Выглядит как: TLS error: certificate has expired
Мониторинг WooCommerce: что входит в тарифы
| Free $0/мес. | Starter $7/мес. | Pro $29/мес. | Agency $59/мес. | |
|---|---|---|---|---|
| Доступно | ✓ | ✓ | ✓ | ✓ |
| Мониторы | 30 | 100 | 300 | 1000 |
| Самый быстрый интервал | 5 мин | 1 мин | 30 с | 30 с |
| Регионы | 1 | 2 | 2 | 2 |
| Собственные заголовки | — | — | ✓ | ✓ |
| Оповещения о медленном ответе | — | — | ✓ | ✓ |
| Эскалация на второй контакт | — | — | ✓ | ✓ |
| Страницы статуса | 1 | 3 | 10 | Без ограничений |
Другие типы мониторов
Магазин работает, а продаж нет
Магазин на WooCommerce может ломаться так, что проверка статуса этого не увидит. Обновление темы прячет кнопку «В корзину». Конфликт плагинов не даёт корзине сохранять товары. Ключи платёжного шлюза устарели, и на оформлении появляется общее сообщение об ошибке. Webhook перестают приходить, а оплаченные заказы висят в статусе «Ожидает оплаты». Все эти сбои не мешают главной отвечать нормальным кодом 200, и потеря выручки остаётся незаметной, пока кто-то не заглянет в список заказов. Мониторинг магазина в основном сводится к выбору страниц, по содержимому которых видно, что весь конвейер работает.
Какие страницы несут сигнал
Практичный набор для магазина, каждый элемент — отдельный монитор:
- Страница товара-индикатора: товар, который всегда опубликован и есть в наличии, с обязательной фразой «Add to cart». Если когда-нибудь снимете этот товар с продажи, измените монитор.
- Корзина: пустая корзина показывает сообщение WooCommerce «Your cart is currently empty», так что требование этой фразы проверяет, что шаблон корзины отображается; запретите и общее сообщение об ошибке.
- Оформление заказа: Tenium не может хранить корзину между запросами, поэтому с пустой корзиной его обычно перенаправляют или показывают сообщение, что всё равно доказывает, что страница и тема загружаются. Оставьте диапазон ожидаемых статусов широким (200-399) и требуйте фразу, которую видите в таком состоянии.
- Store API: /wp-json/wc/store/v1/products?per_page=1 возвращает JSON в новых версиях WooCommerce. Монитор JSON API с путём 0.id проверяет, что товары отдаются из базы данных через слой REST независимо от кеша.
- Страница поиска или категории: она нагружает базу данных сильнее, чем главная, которую можно закешировать.
Платёжные callback
Шлюзы уведомляют магазин через адрес callback, часто вида /?wc-api=NAME, а точный адрес покажет страница настроек плагина. Tenium может отправлять только GET, а шлюзы присылают POST с подписанным содержимым, поэтому в ответ обычно придёт какой-нибудь статус ошибки. Это нормально: задайте ожидаемый статус 200-499, и проверку пройдёт любой ответ, доказывающий, что PHP работает, а ответы 500, 502, 503 и таймаут её провалят. Сможет ли шлюз до вас достучаться и сходятся ли подписи, монитор не покажет, поэтому поглядывайте и в журнал доставки в собственной панели шлюза.
Медленное оформление стоит денег
Оформление, которое длится восемь секунд, теряет корзины, ни разу не упав. На тарифах Pro и Agency можно задать порог медленного ответа в миллисекундах: Tenium сравнивает с ним среднее за три последние проверки и открывает инцидент о снижении скорости, когда порог превышен. Выберите значение по собственным данным: дайте монитору поработать неделю, посмотрите на график времени ответа и поставьте лимит примерно вдвое выше обычного значения. Помните, что проверки обращаются к некешируемым страницам корзины и оформления из нескольких регионов, так что в цифру входит и расстояние по сети.
Распродажи по расписанию, склад и Action Scheduler
WooCommerce полагается на Action Scheduler для писем, подписок, резервирования остатков и запланированных цен распродаж. Он работает поверх wp-cron, так что совет из раздела о мониторинге WordPress здесь действует вдвойне: запускайте его из системного планировщика и подключите heartbeat. Если установлены WP-CLI и команды Action Scheduler, задача вроде wp action-scheduler run с последующим curl на heartbeat подскажет, что очередь застряла, обычно раньше, чем покупатели начнут жаловаться на отсутствие писем-подтверждений.
Сколько нужно мониторов, оповещения и пиковые дни
Закладывайте от шести до десяти мониторов на магазин: товар-индикатор, корзина, оформление, Store API, wp-login, callback, SSL / домен и heartbeat. 100 мониторов тарифа Starter хватит примерно на 12 магазинов по восемь, 300 мониторов Pro — примерно на 37 магазинов. Направляйте оповещения туда, где их заметит человек: Telegram и Slack доступны с тарифа Starter, а Pro добавляет эскалацию, если первое сообщение никто не подтвердил. Перед крупной акцией сократите интервал ключевых мониторов (1 мин на Starter, 30 с на Pro) и планируйте окна обслуживания для деплоев, чтобы они не съедали аптайм, который владелец магазина видит на странице статуса.
Частые вопросы: мониторинг WooCommerce
Может ли Tenium оформить тестовый заказ?
Нет. Проверки — это одиночные запросы, которые не могут переносить корзину между шагами, поэтому имитации покупки нет. Мониторы доказывают, что каждая страница и слои под ней работают, а этого достаточно, чтобы выявить подавляющее большинство поломок.
Работает ли это с блочным оформлением заказа?
Для проверок на уровне страницы да, но блочное оформление значительную часть содержимого рисует с помощью JavaScript, поэтому выберите фразу, которая есть в HTML, отдаваемом сервером, или опирайтесь на мониторы Store API и корзины.
Не обманет ли проверки кеширование страниц?
Кеш влияет на страницы товаров и главную, поэтому и важны проверки Store API и корзины. Они выполняют PHP и обращаются к базе данных, даже когда публичные страницы отдаются из кеша.
Какой тариф нужен небольшому магазину?
Проверки ключевых слов есть на каждом тарифе, так что Free уже может следить за страницами товара, корзины и оформления. Проверки JSON требуют Starter, который также открывает мониторинг SSL и срока действия домена. Pro добавляет порог медленного оформления, эскалацию и собственные заголовки запроса.
Начните мониторинг WooCommerce бесплатно
30 мониторов на тарифе Free, без банковской карты, а сбои подтверждаются из других регионов (сейчас работают 2 региона). Переходите на тариф выше, когда клиентов станет больше.