Página de status e monitoramento de uptime para apps Express
Monitore rotas Express, cadeias de middleware e workers Node. Alertas de tempo de resposta, SSL, página hospedada, API headless.
Três formas de lançar uma página de status para Express.js
Escolha o nível de controle — sem código, low-code ou headless completo.
Hospedado
Adicione seu endpoint Express.js, aponte um CNAME para status.seudominio.com, pronto. Em 5 minutos.
Headless
Use nossa API pública para construir sua própria UI dentro do app Express.js. Controle total sobre design e marca.
Ver a APIBadges embutidos
Coloque badges SVG de uptime e status no seu README ou landing page. Atualizam a cada 5 minutos.
Cole este health endpoint no seu app Express.js
Copie, cole, aponte o PulseAPI para a URL. Retorna 200 saudável, 503 degradado.
import { Router } from 'express'
import { db } from '../db'
import { redis } from '../redis'
const router = Router()
router.get('/health', async (_, res) => {
const checks: Record<string, string> = {}
try { await db.raw('select 1'); checks.database = 'ok' } catch { checks.database = 'fail' }
try { const pong = await redis.ping(); checks.cache = pong === 'PONG' ? 'ok' : 'fail' } catch { checks.cache = 'fail' }
const healthy = Object.values(checks).every((v) => v === 'ok')
res.status(healthy ? 200 : 503).json({
status: healthy ? 'healthy' : 'degraded',
...checks,
})
})
export { router as healthRouter }Monte antes do middleware de auth. Timeouts curtos em checks downstream evitam sondas presas.
O que quebra em apps Express.js — e como detectar
Promise rejections não tratadas
Um bug async pode crashar o processo em silêncio em Node antigo. Uptime checks pegam o 502 em segundos.
Bugs de ordem de middleware
Reordenar middleware pode vazar 500s em rotas específicas. Monitoramento multi-endpoint mostra isso.
Memory leaks com o tempo
Um leak lento só quebra após horas. Alertas de tempo de resposta disparam quando GC pauses aparecem.
Não gostou da nossa página de status? Construa a sua em Express.js.
Nossa API retorna os mesmos dados que nossa UI hospedada consome. Spec OpenAPI completa em api.pulseapi.tech/docs.
router.get('/status', async (_, res) => {
const r = await fetch('https://api.pulseapi.tech/status/acme', {
signal: AbortSignal.timeout(5000),
})
const data = await r.json()
res.render('status', { data })
})Monitoramento Express.js — FAQ
Funciona com Express 4, Express 5, Connect ou Fastify?
Qualquer framework HTTP Node. O PulseAPI é externo ao seu app.
Posso monitorar filas BullMQ / Agenda?
Sim. Exponha um endpoint que checa queue depth e heartbeat do worker. Asserte depth sob limite, heartbeat fresco.
Lida com redirects HTTPS?
Sim. O PulseAPI segue o redirect e asserta sobre a resposta final.
Posso embedar a página de status dentro do Express?
Sim. Chame a API pública de um handler, renderize com EJS/Pug/Handlebars ou passe JSON para um frontend.
Comece a monitorar seu app Express.js em 5 minutos
Plano grátis. Sem cartão. Adicione seu endpoint e receba alertas quando quebrar.