Estructura de consulta AQL

Utilice Ariel Query Language (AQL) para extraer, filtrar y realizar acciones en los datos de sucesos y flujos que extraiga de la base de datos Ariel en IBM® QRadar®. Puede utilizar AQL para obtener datos a los que no se puede acceder fácilmente desde la interfaz de usuario.

El diagrama siguiente muestra el flujo de una consulta AQL.

Figura 1. Flujo de consulta AQL
Flujo de consulta AQL

Estructura de una sentencia AQL

Utilice la sentencia SELECT para seleccionar campos de sucesos o flujos en la base de datos Ariel, que se visualizan como columnas. Por ejemplo, la consulta siguiente devuelve los resultados que se muestran en la tabla siguiente:

SELECT sourceip, destinationip, username, protocolid, eventcount FROM events

Tabla 1. Resultados de consulta de AQL
sourceip destinationip Username Protocolid eventcount
192.0.2.21 198.51.100.21 Joe Ariel 233 1
192.0.2.22 198.51.100.24 Jim Ariel 233 1

Las consultas de AQL empiezan con una sentencia SELECT para seleccionar datos de sucesos o flujos de la base de datos Ariel. Puede refinar la salida de datos de la sentencia SELECT utilizando las cláusulas WHERE, GROUP BY, USING, ORDER BY, LIMIT y LAST.

SELECCIONAR

Utilice la sentencia SELECT para seleccionar campos de sucesos o flujos. Por ejemplo, seleccione todos los campos de sucesos o flujos escribiendo:

SELECT * FROM eventso SELECT * FROM flows

Utilice las cláusulas siguientes para filtrar y manipular los datos devueltos por la sentencia SELECT:
WHERE

Utilice la cláusula WHERE para insertar una condición que filtre la salida, por ejemplo, WHERE logsourceid='65'.

GROUP BY
Utilice la cláusula GROUP BY para agrupar los resultados por una o más columnas que especifique en la consulta, por ejemplo, GROUP BY logsourceid.
HAVING
Utilice la cláusula HAVING para especificar una condición después de la cláusula GROUP BY , por ejemplo, HAVING MAG > 3.
Ordenar por
Utilice la cláusula ORDER BY para ordenar los resultados de una columna en la consulta AQL en orden ascendente o descendente, por ejemplo, ORDER BY username DESC.
Límite
Utilice una cláusula LIMIT para limitar el número de resultados que se devuelven a un número específico, por ejemplo, LIMIT 50 para limitar la salida a 50 resultados.
LAST
Utilice una cláusula LAST para especificar un intervalo de tiempo para la consulta, por ejemplo, LAST 1 HOURS.

El ejemplo siguiente incorpora todas las cláusulas que se describen en la lista:

SELECT sourceip, destinationip, username 
FROM events 
WHERE username = 'test name' 
GROUP by sourceip, destinationip 
ORDER BY sourceip DESC 
LIMIT 10 
LAST 2 DAYS