← Блог

Мониторинг uptime для WordPress-плагина с SaaS-бэкендом

Популярные WordPress-плагины — SEO-наборы, конструкторы форм, бэкапы — ставят PHP в wp-content/plugins/, но ходят в удалённый SaaS API за AI, синхронизацией, лицензиями или аналитикой. Сайт может быть зелёным в wp-admin, пока API, от которого зависят интеграторы, уже лежит.

Внешний uptime-мониторинг должен бить в SaaS-бэкенд, а не в yoursite.com/wp-admin или admin-ajax.php. StillOnline гоняет HTTP GET по расписанию с публичного интернета и связывает проверку с status page и алертами владельца (email, бот Telegram, Slack).

Краткий ответ

Зарегистрируйте StillOnline на SaaS APIGET /health или /api/health, не на WordPress admin и не на admin-ajax.php. WordPress REST API — для on-site маршрутов; облачный API живёт на отдельном хосте (например api.yourplugin.com). На Free проверка каждые 5 минут, алерт после двух подряд неудачных (~10 минут). На shared hosting не мониторьте корень WP-сайта — троттлинг CPU даёт ложные срабатывания; см. настройку false positive.

Архитектура: две поверхности, один продукт

ПоверхностьЧто доказываетПроверка StillOnline?
WordPress-сайтPHP плагина грузится, wp-cron крутитсяОбычно нет (шумно на shared hosting)
SaaS APIЛицензия, sync, AI, webhooks работаютДа — канонический health URL
Status pageИстория инцидентов для клиентовХостинг на stillonline.tech/s/{id}

Пользователям плагина важно, проходят ли API-вызовы с их сервера. Проверка https://api.yourplugin.com/health ближе к реальности — та же логика, что в мониторинге API-only SaaS.

Не мониторьте wp-admin и admin-ajax

Частые ошибки:

  • /wp-admin/ — редиректы на логин, cookies, 403 для проб.
  • admin-ajax.php?action=...rate limits shared-хоста, протухший nonce, чужой трафик плагинов.
  • Маркетинговая главная на shared host200, пока PHP-воркеры забиты.

Если нужна «живость» WordPress, добавьте лёгкий REST-маршрут — справочник REST API — и держите его отдельно от проверки облачного API:

// Пример — лучше мониторить api.yourplugin.com
register_rest_route( 'yourplugin/v1', '/health', array(
    'methods'  => 'GET',
    'callback' => fn() => new WP_REST_Response( array( 'status' => 'ok' ), 200 ),
    'permission_callback' => '__return_true',
) );

StillOnline ждёт стабильный HTTPS URL с 200 примерно за две секунды — быстрый старт health URL.

Ложные срабатывания на shared hosting

Бюджетные хосты ставят PHP на паузу, кладут wp-cron в очередь или отдают медленный 200 под нагрузкой. Симптомы:

  • Проверка мигает DOWN при пиках на блоге, а не на API.
  • curl с ноутбука ок; внешняя проба периодически таймаутится.

Что помогает:

  1. Мониторить только api.yourplugin.com/health — авторитетно для SaaS-фич.
  2. Держать health лёгким — без fan-out по БД на cold path (дизайн health).
  3. Принять debounce на 2 fail — StillOnline ждёт 2 неудачные пробы перед DOWN (гайд по false positive).
  4. Сначала проверить редиректы/WAF через curl -L, не винить монитор — пробы и antibot.

На Free фиксированный интервал 300 с; укоротить без Pro (60–300 с на проверку) нельзя.

Настройка StillOnline для вендора плагина

  1. Отдайте GET /health на API-деплое (Railway, Fly, VPS — не на коробке WordPress).
  2. Проверьте снаружи shared hosting:
curl -sS -o /dev/null -w "%{http_code} time:%{time_total}s\n" https://api.yourplugin.com/health
  1. Создайте проект StillOnline → вставьте health URL API → ждите 200.
  2. Делитесь https://stillonline.tech/s/{id} в документации плагина, changelog и макросах поддержки.
  3. Включите Telegram-алерты владельца, если апдейты шлёте с телефона — гайд по Telegram.

Pro — до 10 URL-проверок: разделите API и опционально маркетинговый сайт, если готовы к лишнему шуму на второй проверке.

Как сообщать о сбоях пользователям плагина

Когда API-проверка уходит в DOWN, опубликуйте инцидент на status page; ссылку — в:

  • Sticky на форуме WordPress.org (если политика позволяет).
  • Admin notice внутри плагина (PHP читает status JSON или статичный баннер).
  • Email платному tier — шаблон письма клиентам.

Подписчики публичной страницы получают email при каждом посте об инциденте через Google sign-inподписчики vs владелец.

Связанные материалы

FAQ

StillOnline должен мониторить WordPress-сайт или SaaS API плагина?

Мониторьте health URL SaaS API — его дергают проверки лицензий, sync и платные фичи. wp-admin и admin-ajax.php — плохие цели для проб (API-only гайд).

Почему StillOnline алертит, а wp-admin ещё открывается?

Скорее всего проверяете не тот URL. Admin может отдавать 200, пока api.yourplugin.com лежит. Укажите проверку на API /health (быстрый старт).

Как быстро StillOnline алертит при падении API?

После двух подряд неудачных проб. На Free с интервалом 5 минут — примерно 10 минут от первого fail (настройка false positive).

Можно на StillOnline Free мониторить и WordPress, и API?

На Freeодна проверка на проект. Мониторьте API; Pro — вторая URL, если нужна отдельная проверка маркетингового сайта (тарифы).

StillOnline интегрируется как WordPress-плагин?

Нет. StillOnline — внешний HTTP-монитор и хостинг status page. Добавьте health на API и зарегистрируйте HTTPS URL в кабинете — тот же паттерн, что у любого API-first SaaS.