| Búsqueda de texto libre | error | error | Coincide en todos los campos indexados; en ClickStack esto se reescribe como un ILIKE SQL en varios campos. |
| Coincidencia de campo | level:error | level:error | Sintaxis idéntica. ClickStack hace coincidir valores exactos de campos en ClickHouse. |
| Búsqueda de frase | "disk full" | "disk full" | El texto entre comillas coincide con una secuencia exacta; ClickHouse usa igualdad de cadenas o ILIKE. |
| Coincidencia de frase en campo | message:"disk full" | message:"disk full" | Se traduce a ILIKE SQL o a una coincidencia exacta. |
| Condiciones OR | error OR warning | error OR warning | OR lógico de términos; ambos sistemas lo admiten de forma nativa. |
| Condiciones AND | error AND db | error AND db | Ambos se traducen en una intersección; no hay diferencias en la sintaxis para el usuario. |
| Negación | NOT error o -error | NOT error o -error | Compatible de la misma forma; ClickStack lo convierte a NOT ILIKE SQL. |
| Agrupación | (error OR fail) AND db | (error OR fail) AND db | Agrupación booleana estándar en ambos. |
| Comodines | error* o *fail* | error*, *fail* | ClickStack admite comodines al principio y al final; ES desactiva los comodines iniciales de forma predeterminada por rendimiento. No se admiten comodines dentro de los términos; por ejemplo, f*ail. Los comodines deben aplicarse con una coincidencia de campo. |
| Rangos (numérico/fecha) | duration:[100 TO 200] | duration:[100 TO 200] | ClickStack usa BETWEEN SQL; Elasticsearch lo amplía a consultas de rango. No se admite * no acotado en rangos; por ejemplo, duration:[100 TO *]. Si es necesario, use Unbounded ranges a continuación. |
| Rangos no acotados (numérico/fecha) | duration:>10 o duration:>=10 | duration:>10 o duration:>=10 | ClickStack usa operadores SQL estándar |
| Inclusivo/exclusivo | duration:{100 TO 200} (exclusive) | Igual | {} indica límites exclusivos. No se admite * en rangos; p. ej., duration:[100 TO *] |
| Comprobación de existencia | N/A | _exists_:user o field:* | _exists_ no es compatible. Use LogAttributes.log.file.path: * para columnas Map, por ejemplo LogAttributes. En el caso de las columnas raíz, estas deben existir y tendrán un valor predeterminado si no se incluyen en el evento. Para buscar valores predeterminados o columnas ausentes, use la misma sintaxis que en Elasticsearch: ServiceName:* o ServiceName != ''. |
| Regex | función match | name:/joh?n(ath[oa]n)/ | Actualmente no es compatible en la sintaxis de Lucene. Puede usar SQL y la función match u otras funciones de búsqueda de cadenas. |
| Coincidencia difusa | editDistance('quikc', field) = 1 | quikc~ | Actualmente no es compatible en la sintaxis de Lucene. Se pueden usar funciones de distancia en SQL; por ejemplo, editDistance('rror', SeverityText) = 1 u otras funciones de similitud. |
| Búsqueda de proximidad | No compatible | "fox quick"~5 | Actualmente no es compatible en la sintaxis de Lucene. |
| Realce | quick^2 fox | quick^2 fox | Actualmente no es compatible en ClickStack. |
| Comodín de campo | service.*:error | service.*:error | Actualmente no es compatible en ClickStack. |
| Caracteres especiales escapados | Escape los caracteres reservados con \ | Igual | Es necesario escapar los símbolos reservados. |