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'APIBadges 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é.
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.
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.
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.