Query Language Syntax
The LogScale Query Language (LQL) is the syntax that lets you compose queries to retrieve, process, and analyze data in Falcon LogScale.
The query language is built around a chain of data-processing commands linked together. Each expression passes its result to the next expression in the sequence, allowing you to create complex queries by combining query expressions. This architecture is similar to command pipes, a powerful and flexible mechanism for advanced data analysis in Unix and Linux shells.
This reference section on the LogScale Query Language provides detailed explanations on several related topics. They're listed below with brief descriptions — click on a heading to see more:
When querying data in LogScale, filters may be used to reduce the results to the relevant data. You can use free-text filters to grep data, or you can filter based on fields, stipulating acceptable field values or using regular expressions for matching field contents.
You can use query functions to get values, or reduce results. LogScale provides many built-in query functions, and you can combine them to create your own.
For filtering, there are several operators available: besides logical operators, there are also some comparison operators to narrow search results to what's most important to you.
Regular expressions in LogScale Query Language are similar to most regular expression environments, with slight differences though.
To improve results sets, as well as to construct more complex queries, you can create new fields when querying data. You can do this using the
:=
syntax, theas
syntax, a regex, oreval()
function.Although LogScale query language does not provide a typical conditional syntax, there are ways to evaluate data conditionally. You can use a
case
statement or amatch()
function.LogScale supports the joining of queries using the
join()
function. One query can be used to filter or enrich another, thus obtaining a combined result.This applies to Array Query Functions, for indexing and selecting members in objects using a syntax similar to JSON.
For time related queries, you may want to know about Rate Unit Conversion, or about relative time syntax.
LogScale Query Language Grammar Subset
This grammar is a subset of the LogScale Query Language, intended as a guide for programmatically generating LogScale queries (not for parsing them).
You may also want to read the Falcon LogScale Beginner Introduction. It will link you to an interactive tutorial that will introduce you to queries in LogScale and let you try sample queries that will demonstrate the basic principles.