Inicio / Varios agentes y verificación adversa
Tres estados de fallo, y aceptar un riesgo correctamente
Una automatización que procesa una cola debería distinguir éxito, fallo recuperable que se reintentará, y fallo definitivo abandonado, y solo el tercero debe llegar a una persona, si no cada fallo recuperable apaga el valor de la alerta el día en que tiene razón; aceptar un riesgo con un control compensatorio difiere de ignorarlo, una instantánea tomada antes de la ejecución permite clasificar el resultado en tres vías, variación normal silenciosa, cambio importante que solo alerta, pérdida catastrófica que restaura automáticamente.
Una cola de tareas automatizadas produce tres resultados posibles para cada elemento procesado: un éxito, un fallo recuperable que se reintentará más tarde, y un fallo definitivo que seguirá en fallo haga lo que haga el sistema después. Confundir estos dos últimos en una sola categoría de fallo rompe el valor de cualquier alerta construida sobre ella.
Por qué confundir los dos fallos apaga la alerta
Si cada fallo recuperable dispara la misma alerta que un fallo definitivo, un equipo recibe una notificación por un incidente que probablemente se resolverá solo en el próximo intento. Repetida con suficiente frecuencia, esta alerta pierde su valor: las personas que la reciben aprenden a cerrarla sin leerla, porque la mayor parte del tiempo no señala nada que exija una acción inmediata. El día en que por fin lleva un fallo definitivo, la reacción esperada ya no llega, precisamente porque la alerta tuvo razón demasiadas veces por malas razones. Un agotamiento de tiempo de red puntual ilustra un fallo recuperable típico, suele desaparecer en el próximo intento; un dato faltante en la fuente, que no volverá a aparecer solo, ilustra un fallo definitivo típico.
resultado = procesar(tarea)
si resultado == éxito:
no informar nada
si no, si resultado == fallo_recuperable:
reencolar la tarea, no alertar
si no, si resultado == fallo_definitivo:
alertar a una persona
Aceptar un riesgo no es ignorarlo
Un control compensatorio acepta el riesgo de una acción en vez de impedirla de antemano: deja que la acción ocurra, y luego verifica a posteriori si tuvo el efecto esperado. Una instantánea tomada antes de la ejecución hace posible esta verificación al dar un punto de comparación, el resultado obtenido se clasifica entonces en tres vías, una variación normal que permanece silenciosa, un cambio importante que alerta sin actuar por sí solo, y una pérdida catastrófica que dispara una restauración automática. Un control compensatorio que nunca se ha disparado con datos de prueba todavía no merece la confianza que se le concede. Una lección anterior muestra que multiplicar los agentes no vuelve un resultado más fiable; distinguir correctamente estos tres estados de fallo es otra forma de mantener el control sobre lo que realmente llega arriba, en vez de dejar que cada alerta se dispare al mismo nivel.
Reintento automático o escalado humano, según el tipo de fallo
Reintento silencioso
La tarea se vuelve a poner en cola sin alertar a nadie, es el caso normal de un fallo temporal.
Alerta prematura
Se molesta a una persona por un incidente que probablemente se iba a resolver en el próximo intento, lo que desgasta el valor de la alerta.
Fallo enmascarado
El sistema reintenta indefinidamente un fallo que nunca se resolverá, sin que nadie lo sepa.
Escalado legítimo
Solo este caso merece molestar a una persona, la acción no tendrá éxito sin intervención humana.
Un gestor configura una automatización que envía una notificación a su equipo cada vez que uno de los cien expedientes procesados falla durante la noche, sea la causa un agotamiento de tiempo de red puntual o un dato faltante en el expediente de origen.
Escribe en una frase lo que esta situación establece, y en una frase lo que no establece.
Lo que esto establece: La situación establece que se dispara la misma notificación para cualquier fallo, ya sea por una causa temporal como un agotamiento de tiempo de red o por una causa duradera como un dato faltante en la fuente.
Lo que esto no establece: No establece que el equipo trate estas dos notificaciones de la misma forma en la práctica, ni que haya dejado de prestarles atención, la situación no describe ninguna reacción del equipo.
Los tres calibrados falsos más frecuentes
- Demasiado amplio Esta configuración garantiza que el equipo terminará ignorando todas las notificaciones, incluidas las que señalan un problema duradero.
- Demasiado estrecho Esta situación no permite afirmar nada sobre el funcionamiento de la automatización, ya que el número de cien expedientes no tiene ninguna incidencia en su comportamiento.
- Fuera de lugar Esta situación muestra que la red del equipo sufre agotamientos de tiempo suficientemente frecuentes como para justificar una automatización dedicada.
- Una cola de tareas automatizadas gana al distinguir tres resultados, éxito, fallo recuperable que se reintentará, y fallo definitivo, y solo este último debería disparar una alerta dirigida a una persona.
- Hacer llegar cada fallo recuperable como si fuera un fallo definitivo desgasta el valor de la alerta, hasta el punto de que nadie reacciona ya el día en que señala un problema real.
- Una instantánea tomada antes de la ejecución permite clasificar el resultado obtenido en tres vías distintas, una variación normal tratada en silencio, un cambio importante que solo alerta, y una pérdida catastrófica que dispara una restauración automática.
- Un control compensatorio acepta el riesgo de una acción en vez de impedirla, a condición de haberse disparado realmente con datos de prueba antes de que se confíe en él.
Elige una automatización que ya uses y que procese varios elementos seguidos. Para un fallo recuperable y para un fallo definitivo, escribe en una línea lo que ocurre hoy, nada llega arriba, un reintento silencioso, o se molesta a una persona, y observa si los dos tipos de fallo producen la misma reacción.