[comment]: # attributes: notoc

[comment]: # ({595b72b9-ee60e21e})
# 1 Funciones de agregación

Excepto que se indique lo contrario, todas las funciones enumeradas aquí son compatibles
en:

-   [Expresiones de iniciador](/manual/config/triggers/expression)
-   [Métricas calculadas](/manual/config/items/itemtypes/calculated)

Las funciones de agregación pueden funcionar con:

-   historial de métricas, por ejemplo, `min(/host/key,1h)`
-   [funciones foreach](/manual/appendix/functions/aggregate/foreach) como
    el único parámetro, por ejemplo, `min(last_foreach(/*/key))` (solo en métricas calculadas; no se puede usar en iniciadores)

Las funciones se enumeran sin información adicional. Haga clic en la función para ver los detalles completos.

|Función|Descripción|
|--|--------|
|[avg](#avg)|El valor promedio de una métrica dentro del período de evaluación definido.|
|[bucket_percentile](#bucket-percentile)|Calcula el percentil a partir de los cubos de un histograma.|
|[count](#count)|El recuento de valores en una matriz devuelta por una función foreach.|
|[histogram_quantile](#histogram-quantile)|Calcula el φ-cuantil a partir de los cubos de un histograma.|
|[item_count](#item-count)|El recuento de métricas existentes en la configuración que coinciden con los criterios del filtro.|
|[kurtosis](#kurtosis)|La "cola" de la distribución de probabilidad en los valores recopilados dentro del período de evaluación definido.|
|[mad](#mad)|La desviación absoluta mediana en los valores recopilados dentro del período de evaluación definido.|
|[max](#max)|El valor más alto de una métrica dentro del período de evaluación definido.|
|[min](#min)|El valor más bajo de una métrica dentro del período de evaluación definido.|
|[asimetría](#skewness)|La asimetría de la distribución de probabilidad en los valores recopilados dentro del período de evaluación definido.|
|[stddevpop](#stddevpop)|La desviación estándar de la población en los valores recopilados dentro del período de evaluación definido.|
|[stddevsamp](#stddevsamp)|La desviación estándar de la muestra en los valores recopilados dentro del período de evaluación definido.|
|[sum](#sum)|La suma de los valores recopilados dentro del período de evaluación definido.|
|[sumofsquares](#sumofsquares)|La suma de cuadrados en los valores recopilados dentro del período de evaluación definido.|
|[varpop](#varpop)|La varianza de la población de los valores recopilados dentro del período de evaluación definido.|
|[varsamp](#varsamp)|La varianza de la muestra de los valores recopilados dentro del período de evaluación definido.|

[comment]: # ({/595b72b9-ee60e21e})

[comment]: # ({c2252736-4d343eb8})
#### Parámetros comunes

-   `/host/key` es un primer parámetro obligatorio común para las funciones
    haciendo referencia al historial de la métrica del equipo
-   `(sec|#num)<:time shift>` es un segundo parámetro común para las
    funciones que hacen referencia al historial de la métrica del equipo, donde:
    -   **seg** - período máximo de [evaluación](/manual/config/triggers#evaluation_period) en segundos
        (se pueden utilizar [sufijos](/manual/appendix/suffixes)) de tiempo , o
    -   **\#num** - máximo [rango de evaluación](/manual/config/triggers#evaluation_period) en la última versión de
        valores recopilados (si están precedidos por una almohadilla)
    -   **time shift** (opcional) permite mover el punto de evaluación
        atrás en el tiempo. Ver [más
        detalles](/manual/config/triggers/expression#time_shift) sobre
        como especificar el desplazamiento de hora.

[comment]: # ({/c2252736-4d343eb8})

[comment]: # ({c645f0e4-5df8f297})
### Detalles de la función

Algunas notas generales sobre los parámetros de función:

- Los parámetros de la función están separados por una coma.
- Los parámetros de la función opcionales (o partes de parámetros) se indican mediante
    `<` `>`
- Los parámetros específicos de la función se describen con cada función.
- Los parámetros `/host/key` y `(sec|#num)<:time shift>` nunca deben ser
    encerrados entre comillas

[comment]: # ({/c645f0e4-5df8f297})

[comment]: # ({4d97f370-d4b981e4})

##### avg(/host/key,(sec|#num)<:time shift>) {#avg}

El valor promedio de una métrica dentro del período de evaluación definido.<br>
Tipos de valores admitidos: *Flotante*, *Entero*.<br>
[Funciones foreach] admitidas (/manual/appendix/functions/aggregate/foreach): *avg_foreach*, *count_foreach*, *exists_foreach*, *last_foreach*, *max_foreach*, *min_foreach*, *sum_foreach*.

Parámetros: consulte [parámetros comunes](#common-parameters).

El desplazamiento del tiempo es útil cuando es necesario comparar el valor promedio actual con el valor promedio de hace algún tiempo.

Ejemplos:

    avg(/host/key,1h) #el valor promedio de la última hora hasta ahora
    avg(/host/key,1h:now-1d) #el valor promedio de una hora desde hace 25 horas hasta hace 24 horas a partir de ahora
    avg(/host/key,#5) #el valor promedio de los cinco últimos valores
    avg(/host/key,#5:now-1d) #el valor promedio de los cinco últimos valores excluyendo los valores recibidos en las últimas 24 horas

[comment]: # ({/4d97f370-d4b981e4})

[comment]: # ({3d2c3b94-2b85fe12})

##### bucket_percentile(item filter,time period,percentage) {#bucket-percentile}

Calcula el percentil a partir de los cubos de un histograma.<br>

Parámetros:

- **filtro de métricas** - consulte [filtro de métricas](/manual/appendix/functions/aggregate/foreach#item_filter);<br>
- **período de tiempo** - consulte [período de tiempo](/manual/appendix/functions/aggregate/foreach#time_period);<br>
- **porcentaje** - porcentaje (0-100).

Comentarios:

- Compatible únicamente con métricas calculadas;
- Esta función es un alias para `histogram_quantile(percentage/100, bucket_rate_foreach(filtro de métricas, período de tiempo, 1))`.

[comment]: # ({/3d2c3b94-2b85fe12})

[comment]: # ({2e22231d-b2c329b4})

##### count(func_foreach(item filter,<time period>)) {#count}

El recuento de valores en una matriz devuelta por una función foreach.<br>
Tipo de valor admitido: *Entero*.<br>
[Funciones foreach] admitidas (/manual/appendix/functions/aggregate/foreach): *avg_foreach*, *count_foreach*, *exists_foreach*, *last_foreach*, *max_foreach*, *min_foreach*, *sum_foreach*.

Parámetros:

- **func_foreach** - función foreach para la cual se debe contar el número de valores devueltos (con argumentos admitidos). Consulte [funciones foreach](/manual/appendix/functions/aggregate/foreach) para obtener más detalles.
- **filtro de métricas** - consulte [filtro de métricas](/manual/appendix/functions/aggregate/foreach#item_filter);<br>
- **período de tiempo** - consulte [período de tiempo](/manual/appendix/functions/aggregate/foreach#time_period).

El uso de **count()** con una función foreach relacionada con el historial (max_foreach, avg_foreach, etc.) puede tener implicaciones en el rendimiento, mientras que el uso de **exists_foreach()**, que funciona solo con datos de configuración, no tendrá tales consecuencias.

Ejemplos:

    count(max_foreach(/*/net.if.in[*],1h)) #el número de elementos net.if.in que recibieron datos en la última hora hasta ahora

[comment]: # ({/2e22231d-b2c329b4})

[comment]: # ({635521f5-d537bc9d})

##### histogram_quantile(quantile,bucket1,value1,bucket2,value2,...) {#histogram-quantile}

Calcula el cuantil φ a partir de los cubos de un histograma.<br>
[Función foreach] admitida (/manual/appendix/functions/aggregate/foreach): *bucket_rate_foreach*.

Parámetros:

- **cuantil** - 0 ≤ φ ≤ 1;<br>
- **bucketN, valueN** - pares ingresados manualmente (>=2) de parámetros o la respuesta de [bucket_rate_foreach](/manual/appendix/functions/aggregate/foreach).

Comentarios:

- Compatible únicamente con métricas calculadas;
- Funcionalmente corresponde a '[histogram\_quantile](https://prometheus.io/docs/prometheus/latest/querying/functions/#histogram_quantile)' de PromQL;
- Devuelve -1 si los valores del último depósito 'Infinito' (*"+inf"*) son iguales a 0.

Ejemplos:

    histogram_quantile(0.75,1.0,last(/host/rate_bucket[1.0]),"+Inf",last(/host/rate_bucket[Inf]))
    histogram_quantile(0.5,bucket_rate_foreach(//item_key,30s))

[comment]: # ({/635521f5-d537bc9d})

[comment]: # ({46026cda-e82fcbbc})

##### item_count(item filter) {#item-count}

El recuento de métricas existentes en la configuración que coinciden con los criterios del filtro.<br>
Tipo de valor admitido: *Entero*.

Parámetro:

- **filtro de métricas**: criterios para la selección de métricas, permite hacer referencia por grupo de equipos, equipo, clave de métrica y etiquetas. Se admiten comodines. Consulte [filtro de métricas](/manual/appendix/functions/aggregate/foreach#item_filter) para obtener más detalles.<br>

Comentarios:

- Compatible únicamente con métricas calculadas;
- Funciona como alias para la función *count(exists_foreach(item_filter))*.

Ejemplos:

    item_count(/*/agent.ping?[group="Grupo de hosts 1"]) #el número de equipos con la métricas *agent.ping* en el "grupo de equipos 1"

[comment]: # ({/46026cda-e82fcbbc})

[comment]: # ({cfd357a7-2484a400})

##### kurtosis(/host/key,(sec|#num)<:time shift>) {#kurtosis}

La "cola" de la distribución de probabilidad en los valores recopilados dentro del período de evaluación definido. Ver también: [Kurtosis](https://en.wikipedia.org/wiki/Kurtosis).<br>
Tipos de valores admitidos: *Flotante*, *Entero*.<br>
[Función foreach] admitida (/manual/appendix/functions/aggregate/foreach): *last_foreach*.

Parámetros: consulte [parámetros comunes](#common-parameters).

Ejemplo:

    kurtosis(/host/key,1h) #kurtosis durante la última hora hasta ahora

[comment]: # ({/cfd357a7-2484a400})

[comment]: # ({b4f667f5-dafb35c1})

##### mad(/host/key,(sec|#num)<:time shift>) {#mad}

La desviación absoluta mediana en los valores recopilados dentro del período de evaluación definido. Ver también: [Desviación absoluta de la mediana](https://en.wikipedia.org/wiki/Median_absolute_deviation).<br>
Tipos de valores admitidos: *Flotante*, *Entero*.<br>
[Función foreach] admitida (/manual/appendix/functions/aggregate/foreach): *last_foreach*.

Parámetros: consulte [parámetros comunes](#common-parameters).

Ejemplo:

    mad(/host/key,1h) #desviación absoluta media durante la última hora hasta ahora

[comment]: # ({/b4f667f5-dafb35c1})

[comment]: # ({c98c27ea-9e9e5478})

##### max(/host/key,(sec|#num)<:time shift>) {#max}

El valor más alto de una métrica dentro del período de evaluación definido.<br>
Tipos de valores admitidos: *Flotante*, *Entero*.<br>
[Funciones foreach] admitidas (/manual/appendix/functions/aggregate/foreach): *avg_foreach*, *count_foreach*, *exists_foreach*, *last_foreach*, *max_foreach*, *min_foreach*, *sum_foreach*.

Parámetros: consulte [parámetros comunes](#common-parameters).

Ejemplo:

    max(/host/key,1h) - min(/host/key,1h) #calcula la diferencia entre los valores máximo y mínimo desde la última hora hasta ahora (el delta de valores)

[comment]: # ({/c98c27ea-9e9e5478})

[comment]: # ({b40486f7-54cd8156})

##### min(/host/key,(sec|#num)<:time shift>) {#min}

El valor más bajo de una métrica dentro del período de evaluación definido.<br>
Tipos de valores admitidos: *Flotante*, *Entero*.<br>
[Funciones foreach] admitidas (/manual/appendix/functions/aggregate/foreach): *avg_foreach*, *count_foreach*, *exists_foreach*, *last_foreach*, *max_foreach*, *min_foreach*, *sum_foreach*.

Parámetros: consulte [parámetros comunes](#common-parameters).

Ejemplo:

    max(/host/key,1h) - min(/host/key,1h) #calcula la diferencia entre los valores máximo y mínimo desde la última hora hasta ahora (el delta de valores)

[comment]: # ({/b40486f7-54cd8156})

[comment]: # ({f51bbef9-129ad34a})

##### skewness(/host/key,(sec|#num)<:time shift>) {#skewness}

La asimetría de la distribución de probabilidad en los valores recolectados dentro del período de evaluación definido. Ver también: [Asimetría](https://en.wikipedia.org/wiki/Skewness).<br>
Tipos de valores admitidos: *Flotante*, *Entero*.<br>
[Función foreach] admitida (/manual/appendix/functions/aggregate/foreach): *last_foreach*.

Parámetros: consulte [parámetros comunes](#common-parameters).

Ejemplo:

    skewness(/host/key,1h) #la asimetría de la última hora hasta ahora

[comment]: # ({/f51bbef9-129ad34a})

[comment]: # ({d1055a49-462ae8a8})

##### stddevpop(/host/key,(sec|#num)<:time shift>) {#stddevpop}

La desviación estándar de la población en los valores recopilados dentro del período de evaluación definido. Ver también: [Desviación estándar](https://en.wikipedia.org/wiki/Standard_deviation).<br>
Tipos de valores admitidos: *Flotante*, *Entero*.<br>
[Función foreach] admitida (/manual/appendix/functions/aggregate/foreach): *last_foreach*.

Parámetros: consulte [parámetros comunes](#common-parameters).

Ejemplo:

    stddevpop(/host/key,1h) #la desviación estándar de la población durante la última hora hasta ahora

[comment]: # ({/d1055a49-462ae8a8})

[comment]: # ({e14fed81-b143c249})

##### stddevsamp(/host/key,(sec|#num)<:time shift>) {#stddevsamp}

La desviación estándar de la muestra en los valores recopilados dentro del período de evaluación definido. Ver también: [Desviación estándar](https://en.wikipedia.org/wiki/Standard_deviation).<br>
Tipos de valores admitidos: *Flotante*, *Entero*.<br>
[Función foreach] admitida (/manual/appendix/functions/aggregate/foreach): *last_foreach*.

Parámetros: consulte [parámetros comunes](#common-parameters).

Se requieren al menos dos valores de datos para que esta función funcione.

Ejemplo:

    stddevsamp(/host/key,1h) #la desviación estándar de muestra durante la última hora hasta ahora

[comment]: # ({/e14fed81-b143c249})

[comment]: # ({5324ae63-0757ed08})

##### sum(/host/key,(sec|#num)<:time shift>) {#sum}

La suma de los valores recopilados dentro del período de evaluación definido.<br>
Tipos de valores admitidos: *Flotante*, *Entero*.<br>
[Funciones foreach] admitidas (/manual/appendix/functions/aggregate/foreach): *avg_foreach*, *count_foreach*, *exists_foreach*, *last_foreach*, *max_foreach*, *min_foreach*, *sum_foreach*.

Parámetros: consulte [parámetros comunes](#common-parameters).

Ejemplo:

    sum(/host/key,1h) #la suma de valores de la última hora hasta ahora

[comment]: # ({/5324ae63-0757ed08})

[comment]: # ({ccf32a69-b1644758})

##### sumofsquares(/host/key,(sec|#num)<:time shift>) {#sumofsquares}

La suma de cuadrados de los valores recopilados dentro del período de evaluación definido.<br>
Tipos de valores admitidos: *Flotante*, *Entero*.<br>
[Función foreach] admitida (/manual/appendix/functions/aggregate/foreach): *last_foreach*.

Parámetros: consulte [parámetros comunes](#common-parameters).

Ejemplo:

    sumofsquares(/host/key,1h) #la suma de cuadrados de la última hora hasta ahora

[comment]: # ({/ccf32a69-b1644758})

[comment]: # ({64b54da2-67cb76c4})

##### varpop(/host/key,(sec|#num)<:time shift>) {#varpop}

La varianza de la población de los valores recopilados dentro del período de evaluación definido. Ver también: [Varianza](https://en.wikipedia.org/wiki/Variance).<br>
Tipos de valores admitidos: *Flotante*, *Entero*.<br>
[Función foreach] admitida (/manual/appendix/functions/aggregate/foreach): *last_foreach*.

Parámetros: consulte [parámetros comunes](#common-parameters).

Ejemplo:

    varpop(/host/key,1h) #la variación de la población durante la última hora hasta ahora

[comment]: # ({/64b54da2-67cb76c4})

[comment]: # ({d5214b81-dd9460b2})

##### varsamp(/host/key,(sec|#num)<:time shift>) {#varsamp}

La varianza de la muestra de los valores recopilados dentro del período de evaluación definido. Ver también: [Varianza](https://en.wikipedia.org/wiki/Variance).<br>
Tipos de valores admitidos: *Flotante*, *Entero*.<br>
[Función foreach] admitida (/manual/appendix/functions/aggregate/foreach): *last_foreach*.

Parámetros: consulte [parámetros comunes](#common-parameters).

Se requieren al menos dos valores de datos para que esta función funcione.

Ejemplo:

    varsamp(/host/key,1h) #la varianza de muestra de la última hora hasta ahora

[comment]: # ({/d5214b81-dd9460b2})

[comment]: # ({ba59dd3a-18b9efc2})

Consulte [todas las funciones admitidas](/manual/appendix/functions).

[comment]: # ({/ba59dd3a-18b9efc2})


