8
8
9
9
beta::[]
10
10
11
- IMPORTANT: {es} supports a subset of {eql-ref}/index.html[EQL syntax]. See
12
- <<eql-syntax-limitations>>.
13
-
14
11
[discrete]
15
12
[[eql-basic-syntax]]
16
13
=== Basic syntax
@@ -35,7 +32,7 @@ process where process.name == "svchost.exe"
35
32
[[eql-syntax-event-categories]]
36
33
==== Event categories
37
34
38
- In {es}, an event category is a valid, indexed value of the
35
+ An event category is a valid, indexed value of the
39
36
<<eql-required-fields,event category field>>. You can set the event category
40
37
field using the `event_category_field` parameter of the EQL search API.
41
38
@@ -251,10 +248,8 @@ Divides the value to the left of the operator by the value to the right.
251
248
[WARNING]
252
249
====
253
250
If both the dividend and divisor are integers, the divide (`\`) operation
254
- _rounds down_ any returned floating point numbers to the nearest integer.
255
-
256
- EQL queries in {es} should account for this rounding. To avoid rounding, convert
257
- either the dividend or divisor to a float.
251
+ _rounds down_ any returned floating point numbers to the nearest integer. To
252
+ avoid rounding, convert either the dividend or divisor to a float.
258
253
259
254
*Example* +
260
255
The `process.args_count` field is a <<number,`long`>> integer field containing a
@@ -599,9 +594,8 @@ until [ process where event.type == "stop" ]
599
594
[[eql-functions]]
600
595
=== Functions
601
596
602
- {es} supports several of EQL's built-in functions. You can use these functions
603
- to convert data types, perform math, manipulate strings, and more. Most
604
- functions are case-sensitive by default.
597
+ You can use EQL functions to convert data types, perform math, manipulate
598
+ strings, and more. Most functions are case-sensitive by default.
605
599
606
600
For a list of supported functions, see <<eql-function-ref>>.
607
601
@@ -682,21 +676,21 @@ For a list of supported pipes, see <<eql-pipe-ref>>.
682
676
[[eql-syntax-limitations]]
683
677
=== Limitations
684
678
685
- {es} EQL does not support the following features and syntax.
679
+ EQL does not support the following features and syntax.
686
680
687
681
[discrete]
688
682
[[eql-compare-fields]]
689
683
==== Comparing fields
690
684
691
- In {es} EQL, you cannot use comparison operators to compare a field to
685
+ You cannot use EQL comparison operators to compare a field to
692
686
another field. This applies even if the fields are changed using a
693
687
<<eql-functions,function>>.
694
688
695
689
[discrete]
696
690
[[eql-array-fields]]
697
691
==== Array field values are not supported
698
692
699
- {es} EQL does not support <<array,array>> field values, also known as
693
+ EQL does not support <<array,array>> field values, also known as
700
694
_multi-value fields_. EQL searches on array field values may return inconsistent
701
695
results.
702
696
@@ -709,38 +703,45 @@ sub-fields of a `nested` field. However, data streams and indices containing
709
703
`nested` field mappings are otherwise supported.
710
704
711
705
[discrete]
712
- [[single-quote-strings ]]
713
- ==== Single quote strings
706
+ [[eql-unsupported-syntax ]]
707
+ ==== Differences from Endgame EQL syntax
714
708
715
- In {es} EQL, the single quote (`'`) character is reserved for future use.
716
- Strings enclosed in single quotes are not supported. Enclose strings in
717
- double quotes (`"`) instead.
709
+ {es} EQL differs from the {eql-ref}/index.html[Elastic Endgame EQL syntax] as
710
+ follows:
718
711
719
- You cannot use an escaped single quote (`\'`) for literal strings. Use an
720
- escaped double quote (`\"`) instead.
712
+ * Most operators and functions in {es} EQL are case-sensitive. For
713
+ case-insensitive equality comparisons, use the `:` operator.
721
714
722
- [discrete]
723
- [[eql-unsupported-syntax]]
724
- ==== Unsupported syntax
715
+ * Comparisons using the `==` and `!=` operators do not expand wildcard
716
+ characters. For example, `process_name == "cmd*.exe"` interprets `*` as a
717
+ literal asterisk, not a wildcard. For case-sensitive wildcard matching, use the
718
+ <<eql-fn-wildcard,`wildcard`>> function.
719
+
720
+ * `=` cannot be substituted for the `==` operator.
721
+
722
+ * Strings enclosed in single quotes (`'`) are not supported. Enclose strings in
723
+ double quotes (`"`) instead.
724
+
725
+ * `?"` and `?'` do not indicate raw strings. Enclose raw strings in
726
+ three double quotes (`"""`) instead.
725
727
726
- {es} supports a subset of {eql-ref}/index.html[EQL syntax]. {es} cannot run EQL
727
- queries that contain:
728
+ * {es} EQL does not support:
728
729
729
- * Array functions:
730
- ** {eql-ref}/functions.html#arrayContains[`arrayContains`]
731
- ** {eql-ref}/functions.html#arrayCount[`arrayCount`]
732
- ** {eql-ref}/functions.html#arraySearch[`arraySearch`]
730
+ ** Array functions:
731
+ *** {eql-ref}/functions.html#arrayContains[`arrayContains`]
732
+ *** {eql-ref}/functions.html#arrayCount[`arrayCount`]
733
+ *** {eql-ref}/functions.html#arraySearch[`arraySearch`]
733
734
734
- * {eql-ref}/joins.html[Joins]
735
+ ** {eql-ref}/joins.html[Joins]
735
736
736
- * {eql-ref}/basic-syntax.html#event-relationships[Lineage-related keywords]:
737
- ** `child of`
738
- ** `descendant of`
739
- ** `event of`
737
+ ** {eql-ref}/basic-syntax.html#event-relationships[Lineage-related keywords]:
738
+ *** `child of`
739
+ *** `descendant of`
740
+ *** `event of`
740
741
741
- * The following {eql-ref}/pipes.html[pipes]:
742
- ** {eql-ref}/pipes.html#count[`count`]
743
- ** {eql-ref}/pipes.html#filter[`filter`]
744
- ** {eql-ref}/pipes.html#sort[`sort`]
745
- ** {eql-ref}/pipes.html#unique[`unique`]
746
- ** {eql-ref}/pipes.html#unique-count[`unique_count`]
742
+ ** The following {eql-ref}/pipes.html[pipes]:
743
+ *** {eql-ref}/pipes.html#count[`count`]
744
+ *** {eql-ref}/pipes.html#filter[`filter`]
745
+ *** {eql-ref}/pipes.html#sort[`sort`]
746
+ *** {eql-ref}/pipes.html#unique[`unique`]
747
+ *** {eql-ref}/pipes.html#unique-count[`unique_count`]
0 commit comments