Overview
Voici les spécifications de l'API qui doivent être respectées lors des appels HTTP. Les API de recherche de données sont basées sur le langage de requête informatique Skope.
Request Parameters
HTTP Method: GET
| URL Parameter | Description | Exemple |
|---|---|---|
| query | Filtre avancé pour la recherche d'événements. | query=access_method+eq+'value'+et+category+like+'abc' |
| champs | Noms des colonnes dont les valeurs doivent être récupérées dans les résultats. | fields=app,category |
| starttime | Horodatage Unix de l'heure de début des événements en secondes. | starttime=1641860455 |
| endtime | Horodatage Unix de l'heure de fin des événements en secondes. | endtime=1641866455 |
| timeout | Délai d'attente de la requête, en secondes. Valeur par défaut : 180 | timeout=180 |
| offset | Nombre de lignes à sauter avant de présenter les résultats. | offset=1 |
| limit | Nombre maximal d'enregistrements à renvoyer dans le résultat. | limite=20 |
| sublimit | Nombre maximal d'enregistrements pour limiter la sous-agrégation. | sublimit=10 |
| groupbys | Champs à agréger. | groupbys=category,app |
| subgroupbys | Champs secondaires à agréger. | subgroupbys=category |
| orderbys | Champs permettant de trier les événements par ordre croissant ou décroissant. | orderbys=access_method+asc,app+desc |
Organe de réponse
Réponse positive
Si status.execution == "SUCCESS", la demande a abouti. Vérifiez le résultat pour connaître les données renvoyées.
# JSON
{
"result": [], # slice of json results
"status": {
"execution": "SUCCESS",
"count": 1, # length of results
"message": "Executed Successfully",
"status_code": 200
}
}
Réponse d'erreur
Si status.execution == "FAILED", la demande a échoué. Vérifiez le message d'erreur.
# JSON
{
"result": [], # slice of json results
"status": {
"execution": "FAILED",
"count": 1, # length of results
"message": "Executed Unsuccessfully",
"status_code": non-200 code
}
}
Exemples de requêtes
Étant donné que les points de terminaison Datasearch sont destinés à des requêtes ad hoc et vous permettent de récupérer des événements dans le système en fournissant divers paramètres dans la requête, vous pouvez utiliser ce point de terminaison pour filtrer et récupérer tous les événements et/ou des événements spécifiques sur la base de critères tels que l'ID, l'intervalle de temps et d'autres métadonnées. Voici quelques exemples :
- Vous pouvez appliquer une agrégation pour filtrer les événements d'alerte et présenter le nombre total d'alertes sur une période donnée.
Query/api/v2/events/datasearch/alert?starttime=1731535136&endtime=1736805536&fields=count_total:count(id)
Response
{ "result":[ { "count_total":372359 } ], "status":{ "count":1, "execution":"SUCCESS", "message":"Executed Successfully", "status_code":200 } } - Vous pouvez également combiner plusieurs opérations pour afficher des mesures agrégées sur une période donnée.
Query/api/v2/events/datasearch/page?starttime=0&endtime=0&groupby=user&sortby=server_bytes&fields=sessions=sum(session_number_unique),server_bytes=sum(server_bytes_total),client_bytes=sum(client_bytes_total),numbytes=sum(numbytes_total)
Response
{ "result":[ { "client_bytes":7167685749707, "numbytes":7183668827587, "server_bytes":14567122273, "sessions":9044400340052308025 } ], "status":{ "count":1, "execution":"SUCCESS", "message":"Executed Successfully", "status_code":200 } }

