Las funciones de tendencias, en contraste con las funciones de histórico, utilizan datos de tendencias para los cálculos.
Las tendencias almacenan valores agregados por hora. Las funciones de tendencias utilizan estos promedios horarios y, por lo tanto, son útiles para el análisis a largo plazo.
Los resultados de las funciones de tendencias se almacenan en caché, por lo que múltiples llamadas a la misma función con los mismos parámetros obtienen la información de la base de datos solo una vez. La caché de funciones de tendencias se controla mediante el parámetro del servidor TrendFunctionCacheSize.
Los disparadores que hacen referencia únicamente a funciones de tendencias se evalúan una vez por el período de tiempo más pequeño en la expresión. Por ejemplo, un disparador como
se evaluará una vez al día. Si el disparador contiene tanto funciones de tendencias como de histórico (o fecha y hora y/o nodata()), se calcula de acuerdo con los principios habituales.
Todas las funciones listadas aquí son compatibles con:
Las funciones se enumeran sin información adicional. Haga clic en la función para ver los detalles completos.
Función | Descripción |
---|---|
baselinedev | 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 base promediando los datos del mismo intervalo de tiempo en varios períodos de tiempo iguales ('temporadas') utilizando el algoritmo de media móvil ponderada. |
trendavg | El promedio de los valores de tendencia dentro del período de tiempo definido. |
trendcount | El número de valores de histórico recuperados con éxito utilizados para calcular el valor de tendencia dentro del período de tiempo definido. |
trendmax | El máximo de los valores de tendencia dentro del período de tiempo definido. |
trendmin | El mínimo de los 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 que es ((el número de valores anómalos)/(número total de valores)) . |
trendsum | La suma de los valores de tendencia dentro del período de tiempo definido. |
/equipo/clave
es un primer parámetro obligatorio comúnperíodo de tiempo:desplazamiento de tiempo
es un segundo parámetro común, donde:
N
es el número de unidades de tiempo, unidad de tiempo
puede ser h (hora), d (día), w (semana), M (mes) o y (año).Algunas notas generales sobre los parámetros de función:
<
>
/equipo/métrica
y período de tiempo:desplazamiento de tiempo
nunca deben ir entre comillasDevuelve el número de desviaciones (por el algoritmo stddevpop) entre el último periodo de datos y los mismos periodos de datos en temporadas anteriores.
Parámetros:
N
- el número de unidades de tiempounidad de tiempo
- h (hora), d (día), w (semana), M (mes) o y (año), debe ser igual o menor que la temporadaEjemplos:
baselinedev(/equipo/métrica,1d:now/d,"M",6) #calcula el número de desviaciones estándar (población) entre el día anterior y el mismo día en los 6 meses anteriores. Si la fecha no existe en un mes anterior, se utilizará el último día del mes (Jul,31 se analizará contra Ene,31, Feb,28,... Jun,30)
baselinedev(/equipo/métrica,1h:now/h,"d",10) #calcula el número de desviaciones estándar (población) entre la hora anterior y las mismas horas durante el periodo de diez días antes de ayer
Calcula la línea base promediando los datos del mismo intervalo de tiempo en varios períodos de tiempo iguales ('temporadas') utilizando el algoritmo de media móvil ponderada.
Parámetros:
N
- el número de unidades de tiempounidad de tiempo
- h (hora), d (día), w (semana), M (mes) o y (año), debe ser igual o menor que la temporadaEjemplos:
baselinewma(/equipo/métrica,1h:now/h,"d",3) #calcula la línea base basada en la última hora completa dentro de un período de 3 días que terminó ayer. Si "now" es lunes 13:30, se analizarán los datos de 12:00-12:59 del viernes, sábado y domingo
baselinewma(/equipo/métrica,2h:now/h,"d",3) #calcula la línea base basada en las dos últimas horas dentro de un período de 3 días que terminó ayer. Si "now" es lunes 13:30, se analizarán los datos de 11:00-12:59 del viernes, sábado y domingo
baselinewma(/equipo/métrica,1d:now/d,"M",4) #calcula la línea base basada en el mismo día del mes que 'ayer' en los 4 meses anteriores al último mes completo. Si la fecha requerida no existe, se toma el último día del mes. Si hoy es 1 de septiembre, se analizarán los datos del 31 de julio, 30 de junio, 31 de mayo y 30 de abril.
El promedio de los valores de tendencia dentro del periodo de tiempo definido.
Parámetros:
Ejemplos:
trendavg(/equipo/métrica,1h:now/h) #el promedio de la hora anterior (por ejemplo, 12:00-13:00)
trendavg(/equipo/métrica,1h:now/h-1h) #el promedio de hace dos horas (11:00-12:00)
trendavg(/equipo/métrica,1h:now/h-2h) #el promedio de hace tres horas (10:00-11:00)
trendavg(/equipo/métrica,1M:now/M-1y) #el promedio del mes anterior hace un año
El número de valores de historial recuperados con éxito utilizados para calcular el valor de tendencia dentro del período de tiempo definido.
Parámetros:
Ejemplos:
trendcount(/equipo/clave,1h:now/h) #el recuento de valores para la hora anterior (por ejemplo, 12:00-13:00)
trendcount(/equipo/clave,1h:now/h-1h) #el recuento de valores para hace dos horas (11:00-12:00)
trendcount(/equipo/clave,1h:now/h-2h) #el recuento de valores para hace tres horas (10:00-11:00)
trendcount(/equipo/clave,1M:now/M-1y) #el recuento de valores para el mes anterior hace un año
El máximo en los valores de tendencia dentro del periodo de tiempo definido.
Parámetros:
Ejemplos:
trendmax(/equipo/métrica,1h:now/h) #el máximo para la hora anterior (por ejemplo, 12:00-13:00)
trendmax(/equipo/métrica,1h:now/h) - trendmin(/equipo/métrica,1h:now/h) → calcula la diferencia entre los valores máximo y mínimo (delta de tendencia) para la hora anterior (12:00-13:00)
trendmax(/equipo/métrica,1h:now/h-1h) #el máximo para hace dos horas (11:00-12:00)
trendmax(/equipo/métrica,1h:now/h-2h) #el máximo para hace tres horas (10:00-11:00)
trendmax(/equipo/métrica,1M:now/M-1y) #el máximo para el mes anterior hace un año
El mínimo en los valores de tendencia dentro del periodo de tiempo definido.
Parámetros:
Ejemplos:
trendmin(/equipo/métrica,1h:now/h) #el mínimo de la hora anterior (por ejemplo, 12:00-13:00)
trendmax(/equipo/métrica,1h:now/h) - trendmin(/equipo/métrica,1h:now/h) → calcula la diferencia entre los valores máximo y mínimo (delta de tendencia) de la hora anterior (12:00-13:00)
trendmin(/equipo/métrica,1h:now/h-1h) #el mínimo de hace dos horas (11:00-12:00)
trendmin(/equipo/métrica,1h:now/h-2h) #el mínimo de hace tres horas (10:00-11:00)
trendmin(/equipo/métrica,1M:now/M-1y) #el mínimo del mes anterior hace un año
Devuelve la tasa de anomalías durante el período de detección: un valor decimal entre 0 y 1 que es ((el número de valores anómalos)/(número total de valores))
.
Parámetros:
N
- el número de unidades de tiempounidad de tiempo
- h (hora), d (día), w (semana), M (mes) o y (año)N
- el número de unidades de tiempounidad de tiempo
- h (hora), d (día), w (semana)N
- el número de unidades de tiempounidad de tiempo
- h (hora), d (día), w (semana)Ejemplos:
trendstl(/equipo/métrica,100h:now/h,10h,2h) #analiza las últimas 100 horas de datos de tendencia, encuentra la tasa de anomalía para las últimas 10 horas de ese período, esperando una periodicidad de 2h, los valores de la serie residual del período de evaluación se consideran anomalías si alcanzan el valor de 3 desviaciones de la MAD de esa serie residual
trendstl(/equipo/métrica,100h:now/h-10h,100h,2h,2.1,"mad") #analiza el período de 100 horas de datos de tendencia, hasta hace 10 horas, encuentra la tasa de anomalía para todo ese período esperando una periodicidad de 2h, los valores de la serie residual del período de evaluación se consideran anomalías si alcanzan el valor de 2,1 desviaciones de la MAD de esa serie residual
trendstl(/equipo/métrica,100d:now/d-1d,10d,1d,4,,10) #analiza 100 días de datos de tendencia hasta hace un día, encuentra la tasa de anomalía para el período de los últimos 10d de ese período, esperando una periodicidad de 1d, los valores de la serie residual del período de evaluación se consideran anomalías si alcanzan el valor de 4 desviaciones de la MAD de esa serie residual, sobrescribiendo el rango por defecto de la ventana loess para la extracción estacional de "10 * número de entradas en eval period + 1" con el rango de 10 retardos
trendstl(/equipo/métrica,1M:now/M-1y,1d,2h,,"stddevsamp") #analiza el mes anterior hace un año, encuentra la tasa de anomalía del último día de ese período esperando una periodicidad de 2h, los valores de la serie residual del período de evaluación se consideran anomalías si alcanzan el valor de 3 desviaciones de la desviación estándar de la muestra de esa serie residual
La suma de los valores de tendencia dentro del periodo de tiempo definido.
Parámetros:
Ejemplos:
trendsum(/equipo/métrica,1h:now/h) #la suma para la hora anterior (por ejemplo, 12:00-13:00)
trendsum(/equipo/métrica,1h:now/h-1h) #la suma para hace dos horas (11:00-12:00)
trendsum(/equipo/métrica,1h:now/h-2h) #la suma para hace tres horas (10:00-11:00)
trendsum(/equipo/métrica,1M:now/M-1y) #la suma para el mes anterior hace un año
Consulte todas las funciones compatibles.