Search operators
FuseQL search operators enable both regular and advanced log search (after you choose the Advanced Search option). The language specifies the following syntactical rules:
-
The search operator must appear before the first pipe (
|) symbol in the query expression. -
All other operators must follow a valid search expression.
- and
-
Intersection operator (AND logic) between two search operators. Selects results that satisfy both conditions.
- or
-
Union operator (OR logic) between two search operators. Selects results that satisfy either or both conditions.
- equal
-
Searches for specified value; exact match.
- not equal
-
Searches for values other than the specified value; exact match.
- greater than,
> -
Searches for values that are greater than the specified number.
- greater than or equal
-
Searches for values that are greater than or equal to the specified number.
- less than,
< -
Searches for values that are less than the specified number.
- less than or equal,
<= -
Searches for values that are less than or equal to the specified number.
- regex
-
Searches for results that match a specific character pattern.
- not regex,
!~ -
Searches for results that do not match a specific character pattern.
- terms exist,
term -
Matches complete tokens in the log message body. Terms are based on the tokenized words in the message body. All terms must appear in the log line, in any order. Fast and inexpensive.
- not terms exist,
!term -
Excludes log lines that match complete tokens. Terms are determined by tokenization. All terms must appear in the log line, in any order, for the line to be excluded.
- grep,
"grep" -
Searches for a literal, case-sensitive substring in the log message body. Unlike
term, this matches character sequences rather than whole tokens, so it can match partial words and phrases. - not grep,
!"grep" -
Excludes log lines containing a literal, case-sensitive substring in the log message body.
- facet terms exist
-
Searches to match a specific facet and its value.
- facet terms not exist
-
Searches to exclude a specific facet and its value.
- starts with,
*~ -
Searches for labels or facets where the value begins with the specified string.
- ends with,
~* -
Searches for labels or facets where the value ends with the specified string.
- contains,
** -
Searches for labels or facets where the value contains the specified string.
- key exists
-
Searches for the presence of a specific facet, regardless of its value.
and, and
Intersection operator (AND logic) between two search operators. Selects results that satisfy both conditions.
-
Regular search
-
Advanced search
level="info" header="map"
@level="info" and @header="map"
or, or
Union operator (OR logic) between two search operators. Selects results that satisfy either or both conditions.
- Syntax
-
There is a difference in syntax for the operator between regular search and advanced search.
-
Regular search
-
Advanced search
@facet=”valueA OR valueB”none@facet=”valueA” or @facet=”valueB”none -
- Example
-
or operator for facet
-
Regular search
-
Advanced search
level="info OR warning"none@level="info" or @level="warning"none -
key exists
Searches for the presence of a specific facet, regardless of its value.
- Syntax
-
There is a difference in syntax for the operator between regular search and advanced search.
-
Regular search
-
Advanced search
key exists = “facet”none@facetnone -
- Example
-
key exists operator for facet
-
Regular search
-
Advanced search
key exists="user_agent_original"none@user_agent_originalnone -