Conceptos Básicos de Incidentes
8 ejemplos para gestionar tu primer incidente de Node.js con calma: 6 básicos y 2 intermedios. Cubre la severidad, la comunicación y la lista de verificación de los primeros 15 minutos.
Busca en todas las páginas de la documentación
8 ejemplos para gestionar tu primer incidente de Node.js con calma: 6 básicos y 2 intermedios. Cubre la severidad, la comunicación y la lista de verificación de los primeros 15 minutos.
requestId y traceId (consulta IDs de Correlación de Solicitudes)| Severidad | Definición | Ejemplo de Node |
|---|---|---|
| SEV1 | Interrupción de cara al cliente o riesgo de pérdida de datos | Todos los pods OOMKilled, 100% 5xx |
| SEV2 | Degradación importante, existe una solución alternativa | p95 > 5s, pago lento |
| SEV3 | Impacto menor, solución para el siguiente día hábil | Retraso en el webhook de un inquilino |
| SEV4 | Cosmético o solo interno | Falló el despliegue en staging |
[SEV2] orders-api alta latenciaRelacionado: Mejores Prácticas de Respuesta a Incidentes - lista de verificación completa del runbook
Comandante de Incidente (IC) - posee las decisiones, el cronograma, la escalada
Líder Técnico (TL) - impulsa la mitigación, lee registros/métricas
Líder de Comunicaciones - página de estado, actualizaciones a las partes interesadas
Escriba - cronograma, comandos ejecutados, enlaces a gráficos#incident-orders-api[ ] Reconoce la alerta; únete al puente / reunión de Slack
[ ] Confirma el radio de impacto (qué servicios, inquilinos, regiones)
[ ] Verifica el último despliegue (SHA de git, hora, quién)
[ ] Grafana: tasa de error, p95, reinicios de pods, recuento de OOMKilled
[ ] Registros: pico en 5xx, ECONNREFUSED, tiempo de espera del pool, ETIMEDOUT
[ ] Cambios recientes de configuración/secreto/bandera
[ ] Decide: rollback, escalar, desactivar feature-flag o investigar
[ ] Publica la primera actualización externa si es SEV1/SEV2kubectl get pods / estado de la tarea ECS antes de los cambiosRelacionado: Respuesta al OOM Killer - triaje de memoria | Reversión de Despliegue Defectuoso - rutas de reversión
La mitigación supera un diagnóstico perfecto en la primera hora.
| Síntoma | Mitigación rápida |
|---|---|
| Despliegue defectuoso | Revierte a la SHA de imagen anterior |
| Pico de tráfico | Escala HPA al máximo; habilita el límite de tasa |
| Pool de DB agotado | Reduce la concurrencia de workers; pausa las colas no críticas |
| Fuga de memoria | Reinicio progresivo + cambio de tráfico a pods saludables |
| 502 ascendente | Abre el disyuntor; sirve respuesta en caché/degradada |
Mal: "El bucle de eventos se bloqueó debido a la saturación de libuv."
Bien: "El proceso de pago está fallando para aproximadamente el 30% de los usuarios. Desplegamos una solución a las 14:22 UTC y los errores están disminuyendo. Próxima actualización en 20 minutos."
Plantilla para actualizaciones a las partes interesadas:
**Impacto:** <quién está afectado, qué está roto>
**Estado:** Investigando | Mitigando | Monitoreando | Resuelto
**Acciones:** <lo que hicimos en los últimos 20 minutos>
**Próxima actualización:** <hora UTC># Memoria y reinicios de pods
kubectl top pods -n production -l app=orders-api
kubectl describe pod <pod> | grep -A5 "Last State"
# Despliegue reciente
kubectl rollout history deployment/orders-api -n production
# Registros con correlación
# filter: service=orders-api level=error last 30mNODE_OPTIONS si está relacionado con la memoria0:00 El IC declara la severidad, el impacto, la hipótesis actual
0:05 El TL comparte la última instantánea de métricas
0:10 Decisión: rollback / escalar / desactivar bandera / continuar depuración
0:15 El equipo de comunicaciones publica actualización externa
0:25 El escriba lee el cronograma; confirma los propietarios de las acciones
0:30 Repetir o degradar la severidadCuando se resuelva:
[ ] Marca el incidente como resuelto en PagerDuty
[ ] Publica el resumen final de cara al cliente
[ ] Crea el documento post-mortem en 48 horas (SEV1/SEV2)
[ ] Lista los elementos de acción con propietarios y fechas de vencimiento
[ ] Sin culpas: concéntrate en los sistemas y las brechas de procesoincident-followupEl ingeniero de guardia por defecto. Escala al líder técnico si el radio de impacto cruza múltiples servicios o excede 1 hora en SEV1.
Solo en SEV1, o SEV2 que dure más de 30 minutos sin una ruta de mitigación. Evita alertar por mantenimiento conocido.
Sí, si están OOMKilled o no responden, pero captura los registros y anota la correlación del despliegue primero. Prefiere el reinicio progresivo a eliminar todos los pods a la vez.
Borra un borrador en 48 horas para SEV1/SEV2. Revísalo en la reunión del equipo en 5 días hábiles.
Versiones de la pila: Esta página fue escrita para Node.js 24.18.0 (LTS Activo), npm 10+, TypeScript 5.6+, Express 5, Fastify 5 y NestJS 11.
Revisado por Chris St. John·Última actualización: 16 jul 2026