Las funciones de tendencia, 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é, de modo que varias llamadas a la misma función con los mismos parámetros obtienen información de la base de datos solo una vez. La memoria caché de la función de tendencia está controlada por el parámetro del servidor TrendFunctionCacheSize.
Los iniciadores que hacen referencia a funciones de tendencia solamente se evalúan una vez por el período de tiempo más pequeño en la expresión. Por ejemplo, un iniciador como
trendavg(/host/key,1d:now/d) > 1 o trendavg(/host/key2,1w:now/w) > 2
se evaluará una vez al día. Si el iniciador contiene funciones de tendencia e historial (o basadas en tiempo), se calcula de acuerdo con los principios habituales.
Todas las funciones que se enumeran aquí son compatibles con:
Las funciones se enumeran sin información adicional. Haga clic en la función para ver todos los detalles.
Función | Descripción |
---|---|
baselinedev | Devuelve la cantidad de desviaciones (según 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 período de tiempo en múltiples períodos de tiempo iguales ("temporadas") utilizando el algoritmo de promedio móvil ponderado. |
trendavg | El promedio de los valores de tendencia dentro del período de tiempo definido. |
trendcount | La cantidad de valores históricos recuperados correctamente que se utilizaron para calcular el valor de tendencia dentro del período de tiempo definido. |
trendmax | 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 que es ((la cantidad de valores de anomalía)/(la cantidad total de valores)) . |
trendsum | La suma de los valores de tendencia dentro del período de tiempo definido. |
/host/key
es un primer parámetro obligatorio comúnperíodo de tiempo:desplazamiento
es un segundo parámetro común, donde:
N
- el número de unidades de tiempo, unidad de tiempo
- h (hora), d (día), w (semana), M (mes) o y (año).Algunas notas generales sobre los parámetros de función:
<
>
/host/key
y time period:time shift
nunca deben ser entrecomilladosDevuelve el número de desviaciones (mediante el algoritmo stddevpop) entre el último período de datos y los mismos períodos de datos de 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(/host/key,1d:now/d,"M",6) #calculando 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 (se analizará el 31 de julio contra el 31 de enero, 28 de febrero,... 30 de junio).
baselinedev(/host/key,1h:now/h,"d",10) #calculando el número de desviaciones estándar (población) entre la hora anterior y las mismas horas durante el período de diez días anteayer
Calcula la línea de base promediando datos del mismo período de tiempo en múltiples períodos de tiempo iguales ("temporadas") utilizando el algoritmo de promedio móvil ponderado.
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(/host/key,1h:now/h,"d",3) #calculando la línea base basándose en la última hora completa dentro de un período de 3 días que finalizó ayer. Si "ahora" es el lunes a las 13:30, se analizarán los datos de 12:00 a 12:59 del viernes, sábado y domingo.
baselinewma(/host/key,2h:now/h,"d",3) #calculando la línea base basándose en las últimas dos horas dentro de un período de 3 días que finalizó ayer. Si "ahora" es el lunes a las 13:30, se analizarán los datos de 11:00 a 12:59 del viernes, sábado y domingo.
baselinewma(/host/key,1d:now/d,"M",4) #calculando la línea de base basándose 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, 30 de abril.
El promedio de los valores de tendencia dentro del período de tiempo definido.
Parámetros:
Ejemplos:
trendavg(/host/key,1h:now/h) #el promedio de la hora anterior (por ejemplo, 12:00-13:00)
trendavg(/host/key,1h:now/h-1h) #el promedio de hace dos horas (11:00-12:00)
trendavg(/host/key,1h:now/h-2h) #el promedio de hace tres horas (10:00-11:00)
trendavg(/host/key,1M:now/M-1y) #el promedio del mes anterior hace un año
La cantidad de valores históricos recuperados correctamente que se usaron para calcular el valor de tendencia dentro del período de tiempo definido.
Parámetros:
Ejemplos:
trendcount(/host/key,1h:now/h) #el recuento de valores de la hora anterior (p. ej., 12:00-13:00)
trendcount(/host/key,1h:now/h-1h) #el recuento de valores de hace dos horas (11:00-12:00)
trendcount(/host/key,1h:now/h-2h) #el recuento de valores de hace tres horas (10:00-11:00)
trendcount(/host/key,1M:now/M-1y) #el recuento de valores del mes anterior hace un año
El máximo en valores de tendencia dentro del período de tiempo definido.
Parámetros:
Ejemplos:
trendmax(/host/key,1h:now/h) #el máximo de la hora anterior (por ejemplo, 12:00-13:00)
trendmax(/host/key,1h:now/h) - trendmin(/host/key,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(/host/key,1h:now/h-1h) #el máximo de hace dos horas (11:00-12:00)
trendmax(/host/key,1h:now/h-2h) #el máximo de hace tres horas (10:00-11:00)
trendmax(/host/key,1M:now/M-1y) #el máximo del mes anterior hace un año
El mínimo en valores de tendencia dentro del período de tiempo definido.
Parámetros:
Ejemplos:
trendmin(/host/key,1h:now/h) #el mínimo de la hora anterior (por ejemplo, 12:00-13:00)
trendmax(/host/key,1h:now/h) - trendmin(/host/key,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)
trendmin(/host/key,1h:now/h-1h) #el mínimo de hace dos horas (11:00-12:00)
trendmin(/host/key,1h:now/h-2h) #el mínimo de hace tres horas (10:00-11:00)
trendmin(/host/key,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 de anomalía)/(el 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(/host/key,100h:now/h,10h,2h) #analiza las últimas 100 horas de datos de tendencias, encuentra la tasa de anomalías para las últimas 10 horas de ese período, esperando que la periodicidad sea de 2h, la serie restante Los valores del período de evaluación se consideran anomalías si alcanzan el valor de 3 desviaciones de la DMA de esa serie restante.
trendstl(/host/key,100h:now/h-10h,100h,2h,2.1,"mad") #analiza el período de 100 horas de datos de tendencias, hasta hace 10 horas, encuentra la tasa de anomalía para todo ese período esperando que la periodicidad sea de 2h, los valores del resto de la serie del período de evaluación se consideran anomalías si alcanzan el valor de 2,1 desviaciones de la DMA de esa serie restante
trendstl(/host/key,100d:now/d-1d,10d,1d,4,,10) #analiza 100 días de datos de tendencias hasta hace un día, encuentra la tasa de anomalía para el período de los últimos 10 días de ese período , esperando que la periodicidad sea 1d, los valores de la serie restante del período de evaluación se consideran anomalías si alcanzan el valor de 4 desviaciones del MAD de esa serie restante, anulando el lapso predeterminado de la ventana de loess para extracción estacional de "10* número de entradas en el período de evaluación + 1" con un lapso de 10 retrasos
trendstl(/host/key,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 que la periodicidad sea de 2h , los valores restantes de la serie del período de evaluación se consideran anomalías si alcanzan el valor de 3 desviaciones de la desviación estándar muestral de esa serie restante
La suma de los valores de tendencia dentro del período de tiempo definido.
Parámetros:
Ejemplos:
trendsum(/host/key,1h:now/h) #la suma de la hora anterior (por ejemplo, 12:00-13:00)
trendsum(/host/key,1h:now/h-1h) #la suma de hace dos horas (11:00-12:00)
trendsum(/host/key,1h:now/h-2h) #la suma de hace tres horas (10:00-11:00)
trendsum(/host/key,1M:now/M-1y) #la suma del mes anterior hace un año
Consulte todas las funciones admitidas.