Los triggers son una herramienta poderosa, pero también pueden crear ruido de alertas no deseado. Para ver más señales reales y menos ruido, siga estos consejos:
Desensibilice los triggers. En lugar de alertar sobre el último valor (demasiado alto/demasiado bajo), analice el promedio durante un período prolongado utilizando funciones como avg, min y max.
Considere usar la función percentile (ajústela al 95% o al 5%) en los triggers, si desea evitar alertas por picos y caídas aleatorias.
Utilice expresiones de recuperación para evitar cambios frecuentes en el estado del trigger (OK ↔︎ Problema) o trigger flapping. Las expresiones de recuperación permiten crear una condición separada para la resolución del problema. Consulte histeresis.
Utilice dependencias de triggers para evitar alertas que no estén relacionadas con la causa raíz.
Utilice la severidad de los triggers para alertar solo sobre los problemas más graves.
Defina ventanas de mantenimiento.
A veces se necesita un intervalo entre los estados de problema y recuperación, en lugar de un simple umbral. Por ejemplo, si queremos definir un trigger que informe de un problema cuando la temperatura de la sala de servidores supere los 20°C y queremos que permanezca en estado de problema hasta que la temperatura baje de los 15°C, un simple umbral de trigger en 20°C no será suficiente.
En su lugar, primero debemos definir una expresión de trigger para el evento de problema (temperatura superior a 20°C). Luego debemos definir una condición de recuperación adicional (temperatura inferior a 15°C). Esto se hace definiendo una Expresión de recuperación al configurar un trigger.
En este caso, la recuperación del problema se produce en dos pasos:
La expresión de recuperación se evalúa solo después de que se resuelve el evento de problema. ¡Que la expresión de recuperación sea VERDADERA por sí sola no resuelve un problema si la expresión de problema sigue siendo VERDADERA!
Ejemplo
La temperatura en la sala de servidores es demasiado alta.
Expresión de problema:
Expresión de recuperación:
No es productivo utilizar la macro {TRIGGER.VALUE} en una expresión de recuperación porque esta expresión solo se evalúa cuando el trigger está en estado de "Problema". En consecuencia, {TRIGGER.VALUE} siempre se resolverá como "1" (lo que indica un estado de "Problema") al evaluar la expresión.