Home / Search/ Language Reference/Operators in Cribl Search

Operators in Cribl Search

A comprehensive list of all operators supported in Cribl Search, grouped by category.


An operator in Cribl Search is a query component that processes data, performing actions such as filtering, counting, or transforming events. Operators can use functions, and are delimited by the pipe character |.

For example, the limit operator sets the maximum number of events returned from a search:

dataset="cribl_search_sample"
 | limit 100

Aggregation Operators

Aggregation operators summarize data by grouping it based on specified fields and applying aggregation functions like sum, avg, or max to produce meaningful insights.

NameDescription
countReturns the number of all input events.
eventstatsAggregates events and adds the results as new fields to the source events.
summarizeProduces a table that aggregates the input data.
timestatsAggregates events by time periods or bins..

Data Operators

Data operators transform, enrich, or manipulate events, enabling actions like renaming, joining, or exporting.

NameDescription
centralizeForces subsequent operators to the coordinator.
exportExports search results to a lookup or a Cribl Lake Dataset.
extendAppends fields created by expressions.
extractExtracts data from a field.
foldkeysFolds hierarchical field names into a nested structure.
ip-lookupEnriches events with IP address data.
joinMerges events from two different data scopes.
lookupEnriches events with lookup files.
mv-expandExpands an object into multiple events.
mv-pullPulls key-value pairs from array objects into events or objects/bags.
project-renameRenames fields.
unionAppends one set of results to another.

Display Operators

Display operators control how data is presented in the output, allowing formatting, sorting, or visualizing results for better readability.

NameDescription
limit (take)Limits the number of events.
order (sort)Arranges events into order by one or more fields.
printOutputs expression results.
projectKeeps only the fields specified, and can also rename fields and insert new computed fields.
project-awayExcludes specific fields from the results..
rangeGenerates a series of events.
renderEnforces a specific visualization of the search results.
topReturns the first N events sorted by the specified fields.

Filter Operators

Filter operators exclude or include events based on specified conditions, allowing you to narrow down the Dataset to relevant records.

NameDescription
dedupFilters out duplicate events.
distinctFinds unique field values.
searchFinds events that contain the specified text.
whereFilters events based on the specified predicate.

Logical Operators

Logical operators perform comparisons and evaluations.

OperatorDescription
ANDReturns true if both operands are true, otherwise returns false.
NOT or !Returns true if the operand is false, otherwise returns false.
ORReturns true if at least one operand is true, otherwise returns false.

Numerical Operators

Numerical operators perform arithmetic operations on numerical values, enabling calculations like addition or subtraction.

OperatorDescription
==Equal
!=Not Equal
>Greater Than
>=Greater Than or Equal To
<Less Than
<=Less Than or Equal To
+Add
-Subtract
*Multiply
/Divide
%Modulo

Search operators retrieve events based on defined criteria, enabling efficient data discovery.

NameDescription
criblFinds specific events. The fundamental Cribl Search operator, implicit in queries that do not specify an operator.
findFinds specific events.

String Operators

String operators manipulate and transform text, enabling actions like concatenation, trimming, replacement, or extraction.

OperatorDescriptionCase-SensitiveExample (yields true)
==EqualsYes"aBc" == "aBc"
!=Not equalsYes"abc" != "ABC"
=~EqualsNo"abc" =~ "ABC"
!~Not equalsNo"aBc" !~ "xyz"
containsRHS occurs as a subsequence of LHSNo"FabriKam" contains "BRik"
!containsRHS doesn’t occur in LHSNo"Fabrikam" !contains "xyz"
contains_csRHS occurs as a subsequence of LHSYes"FabriKam" contains_cs "Kam"
!contains_csRHS doesn’t occur in LHSYes"Fabrikam" !contains_cs "Kam"
endswithRHS is a closing subsequence of LHSNo"Fabrikam" endswith "Kam"
!endswithRHS isn’t a closing subsequence of LHSNo"Fabrikam" !endswith "brik"
endswith_csRHS is a closing subsequence of LHSYes"Fabrikam" endswith_cs "kam"
!endswith_csRHS isn’t a closing subsequence of LHSYes"Fabrikam" !endswith_cs "brik"
hasRight-hand-side (RHS) is a whole term in left-hand-side (LHS)No"North America" has "america"
!hasRHS isn’t a full term in LHSNo"North America" !has "amer"
has_allSame as has but works on all of the eventsNo"North and South America" has_all("south", "north")
!has_allNot all of the RHS terms are present in LHSNo"North and South America" !has_all("south", "east")
has_anySame as has but works on any of the eventsNo"North America" has_any("south", "north")
!has_anyNone of the RHS terms are present in LHSNo"North and South America" !has_any("east", "west")
has_csRHS is a whole term in LHSYes"North America" has_cs "America"
!has_csRHS isn’t a full term in LHSYes"North America" !has_cs "amer"
hasprefixRHS is a term prefix in LHSNo"North America" hasprefix "ame"
!hasprefixRHS isn’t a term prefix in LHSNo"North America" !hasprefix "mer"
hasprefix_csRHS is a term prefix in LHSYes"North America" hasprefix_cs "Ame"
!hasprefix_csRHS isn’t a term prefix in LHSYes"North America" !hasprefix_cs "CA"
hassuffixRHS is a term suffix in LHSNo"North America" hassuffix "ica"
!hassuffixRHS isn’t a term suffix in LHSNo"North America" !hassuffix "americ"
hassuffix_csRHS is a term suffix in LHSYes"North America" hassuffix_cs "ica"
!hassuffix_csRHS isn’t a term suffix in LHSYes"North America" !hassuffix_cs "icA"
inEqual to any of the eventsYes"abc" in ("123", "345", "abc")
!inNot equal to any of the eventsYes"bca" !in ("123", "345", "abc")
in~Equal to any of the eventsNo"Abc" in~ ("123", "345", "abc")
!in~Not equal to any of the eventsNo"bCa" !in~ ("123", "345", "ABC")
matches regexLHS contains a match for RHSYes"Fabrikam" matches regex "b.*k"
startswithRHS is an initial subsequence of LHSNo"Fabrikam" startswith "fab"
!startswithRHS isn’t an initial subsequence of LHSNo"Fabrikam" !startswith "kam"
startswith_csRHS is an initial subsequence of LHSYes"Fabrikam" startswith_cs "Fab"
!startswith_csRHS isn’t an initial subsequence of LHSYes"Fabrikam" !startswith_cs "fab"