Resumen de la consulta de la API de eventos
La consulta de la API de eventos proporciona una forma de obtener información resumida sobre los eventos generados para una cuenta sin tener que extraer primero los eventos individuales y realizar el análisis.
Ejemplos del tipo de análisis que incluye la API de eventos:
Número de usuarios de SDP que iniciaron sesión durante un marco de tiempo específico
Porcentaje de eventos de bloqueo vs. permitir del firewall
Muestra cuántos eventos (cardinalidad) se generaron para cada tipo de evento en los últimos 30 días
Argumentos para eventos
Estos son los argumentos que puedes pasar a la llamada API de eventos para modificar su operación:
accountID
medidas
filtros
dimensiones
ordenar
marcoDeTiempo
El argumento accountID
Este es el accountID de la cuenta contra la que estás ejecutando la consulta.
Nota:
Este ID de Cuenta no se muestra en la Aplicación de Gestión de Cato, en su lugar es el número en la URL para la Aplicación de Gestión de Cato. Por ejemplo, el ID de la Cuenta es 26 para la siguiente URL: https://cc.catonetworks.com/#!/26/topology.
El argumento medidas
El argumento medidas te permite definir los campos que deseas que la consulta de eventos examine y la forma en que deberían agregarse los resultados. Para cada campo que desees analizar, debes definir lo siguiente:
nombreDelCampo - define el campo que deseas agregar
tipoAgregación - define cómo deseas que se realice la agregación (ej. conteo_distinct)
El siguiente ejemplo muestra la sintaxis de medidas para una consulta que devuelve la suma de los campos event_count:
"medidas": [
{"nombreDelCampo":"event_count","tipoAgregación":"suma"}
]El argumento filtros
El argumento filtros te permite definir un filtro que resultará en solo un subconjunto limitado de los eventos que se examinarán. Para cada filtro debes definir lo siguiente:
nombreDelCampo - define el nombre del campo que deseas filtrar
operador - define la operación del filtro que debe usarse para filtrar el campo
valores - define el valor del filtro que se utiliza con el operador
Aquí tienes un ejemplo del argumento filtros utilizado para seleccionar solo eventos con un tipo_de_evento de Seguridad:
"filtros": [
{
"nombreDelCampo": "event_type",
"operador": "es",
"valores": ["Seguridad"]
}
]El argumento dimensiones
Usa el argumento dimensiones para agrupar campos con los mismos valores en filas resumen.
Aquí tienes un ejemplo que agrupa los archivos según el tipo_de_evento:
"dimensiones": [
{"nombreDelCampo": "event_type"}
]El argumento ordenar
El argumento ordenar define cómo deben ordenarse los datos devueltos. Aquí tienes un ejemplo de uso del argumento ordenar
'ordenar': [
{'nombreDelCampo': 'event_count', 'orden': 'desc'},
{'nombreDelCampo': 'event_type', 'orden': 'asc'}
]El argumento marcoDeTiempo
Define el marco_de_tiempo de la consulta. Esto se especifica usando el formato definido por la especificación ISO 8601. Aquí tienes un ejemplo de cómo especificar el marco de tiempo para los últimos 30 días:
"marcoDeTiempo": "last.P30D" Nota:
La duración máxima que se puede especificar para el argumento de marcoDeTiempo es actualmente de 89 días.
La especificación real de ISO 8601 se puede obtener aquí, pero no es gratuita. También puedes consultar este artículo de Wikipedia para obtener más información sobre cómo definir este argumento.
Ejemplo de consulta de eventos
Consulta de Ejemplo
consulta eventos(
$accountID: ID!,
$measures: [EventsMeasure],
$dimensiones: [EventsDimension],
$filters: [EventsFilter!],
$sort: [EventsSort!],
$timeFrame: TimeFrame!,
$limit: Int,
$from: Int) {
eventos(
accountID: $accountID
timeFrame: $timeFrame
measures: $measures
dimensiones: $dimensiones
filters: $filters
sort: $sort ) {
id
from
total
records(limit: $limit, from: $from) {
fieldsMap
}
}
}Valores de Variables
{
"accountID": "1234",
"medidas": [ {
"nombreDelCampo": "event_sub_type",
"tipoAgregación": "count_distinct"
}
],
"filtros": [ {
"nombreDelCampo": "event_type",
"operador": "es", "valores": ["Seguridad"]
}
],
"marcoDeTiempo": "last.P1M"
}Ejemplo de Salida de Eventos
{
"data": {
"eventos": {
"id": "xxx",
"de": "2023-01-26T00:00:00Z",
"a": "2023-02-27T00:00:00Z",
"total": 1,
"records": [
{
"fieldsMap": {
"event_sub_type": "6"
}
}
]
}
}
}