Express.js

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 API

Badges 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.

src/routes/health.ts
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.

Abordagem headless

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.

Handler Express que renderiza uma página de status customizada.
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.