Evaluates an arbitrary expression as a boolean value and filters events
when the expression returns true. Not only can Falcon LogScale make
comparisons between one field and one value, but it can also compare more
fields and their respective values, using the test()
function.
Note
In test()
unquoted strings are interpreted as field
names.
Parameter | Type | Required | Default Value | Description |
---|---|---|---|---|
expression [a] | expression | required | The expression to test. | |
[a] The argument name |
Hide omitted argument names for this function
Omitted Argument NamesThe argument name for
expression
can be omitted; the following forms of this function are equivalent:logscaletest("value")
and:
logscaletest(expression="value")
These examples show basic structure only.
Hide negatable operation for this function
Negatable Function OperationThis function is negatable, implying the inverse of the result. For example:
logscale!test()
Or:
logscalenot test()
For more information, see Negating the Result of Filter Functions.
test()
Examples
The following tests if the value of the field foo is less than the value of the field bar:
test(foo < bar)
This example compares a field value within the LogScale repository:
test(cputime < 7500)
Check if Field Contains Specific Value
Query
test(myField == "myValue")
Introduction
The test()
function can be used to make
comparisons between one field and one value, and it can also
compare more fields and their respective values. In this example,
the test()
function is used to check if a
field contains a specific value.
Step-by-Step
Starting with the source repository events.
- logscale
test(myField == "myValue")
Returns all events where field myField holds the specific value myOtherField. Notice the use of double-quotes. If the string had been
test(myField == myOtherField)
, then it would have returned results where the fields contained the same values and not a specific value. Event Result set.
Summary and Results
The query is used to check if a field contains a specific value.
The function syntax with test()
does not
support fields with space. For example, test("f o o" ==
"bar")
compares the two values, not a field named
f o o.
The syntax form, myField = myValue
is the preferred
method for performance reasons.
Check if Fields Contain Same Value
Query
test(length(userid) == length(method))
Introduction
The test()
function can be used to make
comparisons between one field and one value, and it can also
compare more fields and their respective values. In this example,
the test()
function is used to search for
events where the userid field and
method field have the same length.
Step-by-Step
Summary and Results
The query is used to compare more fields and their respective values.
Compare More Fields and Filter for Specific Events
Query
test(field1 != 2 * field2)
Introduction
The test()
function can be used to make
comparisons between one field and one value, and it can also
compare more fields and their respective values. Furthermore, it
is possible to use a negation to filter for specific events. In
this example, the test()
function is used to
filter for events where the value of field1
is not exactly twice as large as the value in
field2.
Step-by-Step
Starting with the source repository events.
- logscale
test(field1 != 2 * field2)
Filters for events where the value of the field field1 is not exactly twice as large as the value in field field2.
Event Result set.
Summary and Results
The query is used to compare more fields and filter for specific events that are not of a certain size.
Compare More Fields and Their Respective Values
Query
test(field1 < field2)
Introduction
The test()
function can be used to make
comparisons between one field and one value, and it can also
compare more fields and their respective values. In this example,
the test()
function is used to check if the
value of field1 is less than the value in
field2.
Step-by-Step
Starting with the source repository events.
- logscale
test(field1 < field2)
Evaluates if the value of the field field1 is less than the value in field field2.
Event Result set.
Summary and Results
The query is used to compare more fields and their respective values.
Evaluate Arbitrary Expression as Boolean Value
Query
test(foo < bar)
Introduction
The test()
function is used to evaluate
arbitrary expressions as boolean values in a query. Arbitrary
expressions are used for various purposes, like performing
calculations, making decisions, and defining conditions. In this
example, the test()
function evaluates the
arbitrary expression <
as a boolean value
(true/false) and filters events when the expression returns true.
Step-by-Step
Starting with the source repository events.
- logscale
test(foo < bar)
Evaluates if the value of the field foo is less than the value of the field bar.
Event Result set.
Summary and Results
The query is used to evaluate arbitrary expressions as boolean
values in a query. This is used to filter events where the
expression returns true. The difference between using the
test()
function instead of the
match()
function is that
test()
returns a boolean value and
match()
returns a string.
Evaluate Arbitrary Field Values for CPU Time Within Repository
Query
test(cputime < 7500)
Introduction
The test()
function is used to evaluate
arbitrary expressions as boolean values in a query. Arbitrary
expressions are used for various purposes, like performing
calculations, making decisions, and defining conditions. In this
example, the test()
function evaluates the
arbitrary expression <
as a boolean value
(true/false) and filters events when the expression returns true.
Step-by-Step
Starting with the source repository events.
- logscale
test(cputime < 7500)
Evaluates if the value of the field cputime is less than the value
7500
in a repository. Event Result set.
Summary and Results
The query is used to evaluate arbitrary expressions as boolean
values in a query. This is used to filter events where the
expression returns true. The difference between using the
test()
function instead of the
match()
function is that
test()
returns a boolean value and
match()
returns a string. Searching for CPU
times is useful when troubleshooting performance issues in a
system.
Evaluate Field Values Within Repository
Query
test(cputime < 7500)
Introduction
The test()
function is used to evaluate
arbitrary expressions as boolean values in a query. Arbitrary
expressions are used for various purposes, like performing
calculations, making decisions, and defining conditions. In this
example, the test()
function evaluates the
arbitrary expression <
as a boolean value
(true/false) and filters events when the expression returns true.
Step-by-Step
Starting with the source repository events.
- logscale
test(cputime < 7500)
Evaluates if the value of the field cputime is less than
7500
. Event Result set.
Summary and Results
The query is used to compare a field value within the Falcon LogScale repository.
Search Relative Time to Query Execution
Query
test(@timestamp < (start() + (30*24*60*60*1000)))
Introduction
The start()
can be used in a query that
executes against a time range relative to when the query is
executed.
Step-by-Step
Starting with the source repository events.
- logscale
test(@timestamp < (start() + (30*24*60*60*1000)))
Tests whether the @timestamp for an event is less than the start time of the query. The query start time is returned by the
start()
function. To work out the relative time, we add the explicit number of milliseconds by calculating the number of milliseconds in the specified number of days, in this case, 30. Event Result set.
Summary and Results
The query is a practical way of querying with a relative time from the query execution. The 30 days (and calculation) used in the example could be updated with any time calculation to achieve the required result.