ICM / tecnología / Inteligencia artificial en sistemas de monitorización 

Inteligencia artificial en sistemas de monitorización 

30 marzo 2023 | Lluis Pons

Hemos comenzado el año con el que parece ser el ‘boom’ de las inteligencias artificiales de diferentes compañías y la difusión que se ha hecho al público en general. 

Si nos focalizamos, mientras todas estas herramientas se van consolidando, en nuestro día a día podemos ir incorporando ciertos aspectos de estas tecnologías. 

Desde Zabbix 6.0 LTS tenemos disponibles funciones predictivas de análisis estadístico y aprendizaje automático. 

Podemos analizar nuestras tendencias de datos y realizar la detección de anomalías. Esto se ha extendido en gran medida con detección de anomalías y funcionalidad de monitoreo de línea de base.

Para ello tenemos las funciones de tendencia, que como dice el manual, a diferencia de las funciones de historial, utilizan datos de tendencia para los cálculos. 

Las tendencias almacenan valores agregados por hora. Las funciones de tendencia utilizan estos promedios por hora y, por lo tanto, son útiles para el análisis a largo plazo. 

Los resultados de la función de tendencia se almacenan en caché, por lo que múltiples llamadas a la misma función con los mismos parámetros obtienen información de la base de datos solo una vez. 

Los soportan tanto los Triggers como los Calculated Items.

Los Triggers que hacen referencia a funciones de tendencia solo se evalúan una vez por el período de tiempo más pequeño de la expresión. 

Qué funciones tenemos disponibles: 

  • Devbaseline:  Que nos devuelve el número de desviaciones (por el algoritmo stddevpop) entre el último período de datos y los mismos períodos de datos en temporadas anteriores. 
  • Baselinewma: Calcula la línea de base promediando los datos del mismo período de tiempo en múltiples períodos de tiempo iguales (‘temporadas’) usando el algoritmo de promedio móvil ponderado.  
  • Trendavg : Promedio de los valores de tendencia dentro del período de tiempo definido. 
  • Trendcount: El máximo en valores de tendencia dentro del período de tiempo definido. 
  • Trendmin: El mínimo en valores de tendencia dentro del período de tiempo definido.
     
  • Trendstl: Devuelve la tasa de anomalías durante el período de detección, un valor decimal entre 0 y 1, es decir (El número de anomalías / El número de valores total) 
  • Trendsum: Suma de valores de tendencia dentro del período de tiempo definido. 

Estas son herramientas que deberían servir por ejemplo para detectar comportamientos extraños en el tráfico de una página web o por ejemplo en un control de costes a nivel de cloud, cambios de comportamiento en consumos de CPU, memoria o ocupación de disco de nuestros sistemas. 

Solo hay que encontrar nuestro caso de uso específico y aprovechar las funciones que nos brinda nuestra herramienta de monitorización favorita.