Uptime-мониторинг Cloudflare Workers
Cloudflare Workers крутят JS на edge — быстро и глобально, но с ноутбука этого не видно. Клиентам и интеграторам нужно доказательство, что ваш API или маршрут Worker отвечает в интернете, особенно когда начинается инцидент.
StillOnline проверяет HTTPS health извне сети Cloudflare, даёт страницу статуса для подписчиков и алерты владельцу через бота StillOnline в Telegram, Slack или email. Workers остаются у вас; StillOnline нужен только публичный GET.
Краткий ответ
Опубликуйте Worker с GET /health → JSON и 200. Добавьте production URL в StillOnline для расписания внешних проб, страница статуса на /ru/s/{id} и уведомлений через бота StillOnline в Telegram, Slack или email. На Free один URL на проект — выберите hostname, который реально используют клиенты API.
Минимальный health в Worker
Начните с пути без KV/D1, если «up» не обязан означать доступность хранилища. Привяжите worker к workers.dev или своему домену.
export default {
async fetch(request) {
if (new URL(request.url).pathname === "/health") {
return Response.json({ status: "ok" }, { status: 200 });
}
// ...
},
};
После деплоя с ноутбука:
curl -sS https://api.yourproduct.com/health
Workers + Pages: health на Worker перед Pages или на api. — один канонический URL в документации (дизайн health URL).
StillOnline
Внешний мониторинг не выполняется внутри isolate Worker. Зарегистрируйте тот же HTTPS URL, что проверили curl.
- Аккаунт.
- Проект → HTTP-проверка → HTTPS Worker, GET, 200, 5 мин на Free.
- Ссылку на страницу статуса — в документации и при подключении клиентов (публичная страница).
Алерты для edge-стека
Аналитика Cloudflare и логи Workers помогают в разборе, но не пишут в личку ночью. Telegram — бот StillOnline · Slack — вебхук в настройках. Free: один канал; Pro / Ultimate: все три (тарифы).
Заметки по edge
На edge часто антибот на /, cron и опционально KV/D1 в health. StillOnline шлёт одну внешнюю HTTP-проверку — выберите URL, который лучше всего отражает доступность для клиента.
| Тема | Совет |
|---|---|
| KV / D1 в health | Только если «up» = данные живы |
| Cron | Отдельно от HTTP-проверки; вторая проверка — на Pro |
Антибот на / | Мониторьте /health |
| Регионы | Одна внешняя URL на проверку |
Связанные материалы
FAQ
StillOnline выполняется внутри моего Cloudflare Worker?
Нет. Проверки идут из внешней сети StillOnline, не из isolate Worker. Нужен только публичный GET /health — быстрый старт health.
Что указать в StillOnline — workers.dev или свой домен?
Тот HTTPS hostname, который используют клиенты API в production. Смена host ломает закладки — один канонический URL в дизайне health.
Какой URL при Workers + Pages?
Тот URL, где health отдаёт 200 — Worker перед Pages или api.. На Free один URL на проект.
Как агентам читать uptime Workers через StillOnline?
На Pro — публичный JSON или MCP. Людям — страница статуса.
Какой канал алертов StillOnline на Free для edge-команды?
На Free — один канал; часто Telegram через бота StillOnline. Pro / Ultimate — email, Telegram и Slack вместе.