Skip to main content
Lorsque vous recherchez dans les journaux, vous pouvez créer des requêtes à l’aide d’un sous-ensemble de la syntaxe de requête Lucene pour affiner votre recherche. La chaîne de requête est analysée en une série de termes et d’opérateurs :
  • Un terme peut être un seul mot, comme jane ou smith.
  • Un terme peut être une expression entre guillemets doubles ("customer log"), qui correspondra à tous les mots de l’expression dans le même ordre.
  • Un terme sans nom de champ ne correspondra qu’à ces champs sélectionnés.
  • Plusieurs termes peuvent être regroupés entre parenthèses pour former des sous-requêtes.
  • Tous les champs de recherche respectent la casse.
  • Les opérateurs (AND, OR, NOT) fonctionnent sur tous les champs interrogeables.

Champs interrogeables

Les champs suivants sont interrogeables et sensibles à la casse :

Champs interrogeables avec des termes seuls

Si un terme de recherche est saisi sans nom de champ, la recherche ne portera que sur les champs suivants :
  • client_name
  • connection
  • description
  • ip
  • log_id
  • type
  • user_name

Correspondance exacte

Pour trouver des correspondances exactes, utilisez des guillemets doubles : description:"Username invalid". Par exemple, pour trouver des journaux dont la description est Username invalid, utilisez q=description:"Username invalid".

Caractères génériques

Les recherches avec caractères génériques peuvent être effectuées sur des termes à l’aide de l’astérisque (*) pour remplacer zéro caractère ou plus : user_name:john*. Ils peuvent servir à faire une correspondance par préfixe, par exemple user_name:j*. Pour les autres usages des caractères génériques (par exemple, la correspondance par suffixe), les littéraux doivent comporter au moins 3 caractères. Par exemple, name:*usa est autorisé, mais name:*sa ne l’est pas. Le point d’interrogation (?) n’est pas pris en charge. Par exemple, pour trouver tous les journaux des utilisateurs dont le nom d’utilisateur commence par john, utilisez q=user_name:john*.

Intervalles

Vous pouvez utiliser des intervalles dans vos requêtes de recherche de journaux. Pour les intervalles inclusifs, utilisez des crochets : [min TO max], et pour les intervalles exclusifs, utilisez des accolades : {min TO max}. Les accolades et les crochets peuvent être combinés dans une même expression d’intervalle. Vous pouvez aussi utiliser des caractères génériques dans les intervalles. Par exemple, pour trouver tous les journaux du 18 décembre 2018 jusqu’à aujourd’hui, utilisez q=date:[2018-12-18 TO *]. Si vous voulez rechercher des journaux depuis le début de votre période de rétention jusqu’au 19 décembre 2018, sans l’inclure, utilisez q=date:[* TO 2018-12-19}.

Exemples de requêtes

Voici quelques exemples illustrant les types de requêtes que vous pouvez effectuer avec la .

Limitations

  • Si vous obtenez l’erreur 414 Request-URI Too Large, cela signifie que votre chaîne de requête dépasse la longueur prise en charge. Dans ce cas, précisez votre recherche.
  • Les champs de Log ne sont pas découpés en jetons; ainsi, description:rule ne correspondra ni à une description dont la valeur est Create a rule ni à Update a rule. Utilisez plutôt description:*rule. Consultez la section sur les caractères génériques et la correspondance exacte.
  • L’extension de champ .raw n’est pas prise en charge. Les champs correspondent à l’ensemble de la valeur fournie et ne sont pas découpés en jetons.
Lorsque vous envoyez une requête aux points de terminaison GET /api/v2/logs ou GET /api/v2/users/{user_id}/logs à l’aide du paramètre include_totals, le résultat est un objet JSON contenant un résumé des résultats et des journaux demandés. L’objet JSON ressemble à ceci :
Lorsque vous effectuez une recherche dans les journaux, le champ totals indique le nombre de journaux renvoyés sur la page (comme le champ length).

En savoir plus