Express.js

Page de statut et monitoring d'uptime pour applications Express

Monitorez routes Express, chaînes de middleware et workers Node. Alertes de temps de réponse, SSL, page hébergée, API headless.

Trois façons de livrer une page de statut pour Express.js

Choisissez le niveau de contrôle — sans code, low-code, ou full headless.

Hébergé

Ajoutez votre endpoint Express.js, pointez un CNAME sur status.votredomaine.com, fini. Marche en 5 minutes.

Headless

Utilisez notre API publique pour construire votre propre UI dans votre app Express.js. Contrôle total du design et du branding.

Voir l'API

Badges embarqués

Intégrez des badges SVG uptime et statut dans votre README ou landing. Mise à jour toutes les 5 minutes.

Collez ce health endpoint dans votre app Express.js

Copiez, collez, pointez PulseAPI sur l'URL. Renvoie 200 sain, 503 dégradé.

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 }

Montez avant le middleware d'auth. Des timeouts courts sur les downstreams évitent que les sondes traînent.

Ce qui casse dans les apps Express.js — et comment le détecter

Promise rejections non gérées

Un bug async peut crasher le process en silence sur Node ancien. Les uptime checks détectent le 502 en secondes.

Bugs d'ordre de middleware

Réordonner le middleware peut laisser fuiter des 500s sur certaines routes. Le monitoring multi-endpoint le révèle.

Memory leaks dans le temps

Une fuite lente ne casse tout qu'après des heures. Les alertes de temps de réponse déclenchent quand les pauses GC apparaissent.

Approche headless

Notre page de statut ne vous plaît pas ? Construisez la vôtre dans Express.js.

Notre API renvoie les mêmes données que notre UI hébergée consomme. Spec OpenAPI complète sur api.pulseapi.tech/docs.

Handler Express qui rend une page de statut personnalisée.
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 })
})

Monitoring Express.js — FAQ

Ça marche avec Express 4, Express 5, Connect ou Fastify ?

N'importe quel framework HTTP Node. PulseAPI est externe à votre app.

Puis-je monitorer des files BullMQ / Agenda ?

Oui. Exposez un endpoint qui vérifie queue depth et heartbeat du worker. Assertez depth sous seuil, heartbeat frais.

Gère-t-il les redirects HTTPS ?

Oui. PulseAPI suit le redirect et asserte sur la réponse finale.

Puis-je embarquer la page de statut dans Express ?

Oui. Appelez l'API publique depuis un handler, rendez avec EJS/Pug/Handlebars ou passez JSON à un frontend.

Commencez à monitorer votre app Express.js en 5 minutes

Version gratuite. Sans carte. Ajoutez votre endpoint et recevez des alertes en cas de panne.