| Recherche en texte libre | error | error | Correspond à tous les champs indexés ; dans ClickStack, cela est réécrit en SQL ILIKE sur plusieurs champs. |
| Correspondance de champ | level:error | level:error | Syntaxe identique. ClickStack fait correspondre les valeurs exactes des champs dans ClickHouse. |
| Recherche d’expression | "disk full" | "disk full" | Le texte entre guillemets correspond à une séquence exacte ; ClickHouse utilise l’égalité de chaînes ou ILIKE. |
| Correspondance d’expression sur un champ | message:"disk full" | message:"disk full" | Se traduit en SQL ILIKE ou en correspondance exacte. |
| Conditions OR | error OR warning | error OR warning | OR logique entre les termes ; les deux systèmes le prennent en charge nativement. |
| Conditions AND | error AND db | error AND db | Les deux se traduisent par une intersection ; aucune différence dans la syntaxe utilisateur. |
| Négation | NOT error ou -error | NOT error ou -error | Pris en charge de façon identique ; ClickStack convertit cela en SQL NOT ILIKE. |
| Groupement | (error OR fail) AND db | (error OR fail) AND db | Groupement booléen standard dans les deux cas. |
| Caractères génériques | error* ou *fail* | error*, *fail* | ClickStack prend en charge les caractères génériques en début et en fin ; ES désactive par défaut ceux en début de terme pour des raisons de performances. Les caractères génériques au sein d’un terme ne sont pas pris en charge, par ex. f*ail. Les caractères génériques doivent être appliqués avec une correspondance de champ. |
| Plages (numériques/date) | duration:[100 TO 200] | duration:[100 TO 200] | ClickStack utilise SQL BETWEEN ; Elasticsearch l’étend en requêtes de plage. Les * non bornés dans les plages ne sont pas pris en charge, par ex. duration:[100 TO *]. Si nécessaire, utilisez Unbounded ranges ci-dessous. |
| Plages non bornées (numériques/date) | duration:>10 ou duration:>=10 | duration:>10 ou duration:>=10 | ClickStack utilise les opérateurs SQL standard |
| Inclusif/exclusif | duration:{100 TO 200} (exclusive) | Same | {} indique des bornes exclusives. Les * dans les plages ne sont pas pris en charge, par ex. duration:[100 TO *] |
| Vérification d’existence | N/A | _exists_:user ou field:* | _exists_ n’est pas pris en charge. Utilisez LogAttributes.log.file.path: * pour les colonnes Map, par ex. LogAttributes. Pour les colonnes racine, elles doivent exister et auront une default value si elles ne sont pas incluses dans l’événement. Pour rechercher des default values ou des colonnes manquantes, utilisez la même syntaxe qu’Elasticsearch : ServiceName:* ou ServiceName != ''. |
| Regex | match function | name:/joh?n(ath[oa]n)/ | Actuellement non pris en charge dans la syntaxe Lucene. Vous pouvez utiliser SQL et la fonction match ou d’autres string search functions. |
| Correspondance approximative | editDistance('quikc', field) = 1 | quikc~ | Actuellement non pris en charge dans la syntaxe Lucene. Les Distance functions peuvent être utilisées en SQL, par ex. editDistance('rror', SeverityText) = 1 ou other similarity functions. |
| Recherche de proximité | Not supported | "fox quick"~5 | Actuellement non pris en charge dans la syntaxe Lucene. |
| Pondération | quick^2 fox | quick^2 fox | Non pris en charge dans ClickStack à l’heure actuelle. |
| Caractère générique de champ | service.*:error | service.*:error | Non pris en charge dans ClickStack à l’heure actuelle. |
| Caractères spéciaux échappés | Escape reserved characters with \ | Same | L’échappement est requis pour les symboles réservés. |