ELK aggregation

GET logs/_search {"aggs":{"origenes":{"terms":{"field":"source.ip","size":10}}}}

Consulta de agregación contra Elasticsearch que agrupa los eventos por campo (aquí IP origen) directamente sobre la API, sin pasar por Kibana.

Ejecútala cuando necesites agregaciones rápidas y reproducibles sobre los datos de Elastic sin la interfaz de Kibana: el endpoint _search con aggs devuelve el conteo agrupado por el campo que elijas — el ranking de IPs origen de los fallos, los hosts con más eventos, los dominios más consultados. Es la vía de los scripts y las integraciones: la misma consulta se lanza desde Python, curl o las automatizaciones del SOC. La agregación terms con size limita el top N. Es la forma de hacer las preguntas de volumen directamente al motor, con la latencia mínima.

No la uses para el análisis interactivo: Kibana (Discover/Lens) construye las mismas agregaciones con clics y visualización — la API es para scripts y automatización. La sintaxis JSON de la consulta es estricta: un campo mal escrito (source.ip vs source.ip.raw según el mapping) devuelve error o vacío, y las agregaciones sobre campos de texto sin fielddata fallan — usa el campo keyword del mapping (.keyword) para los términos. Y ojo con el coste: las agregaciones pesadas (terms con size alto, cardinality) sobre rangos amplios consumen memoria del cluster; acota el rango temporal y el size.