I'm trying to use a regular expression in a summary query. I want to get all events so that nothing is omitted and I can gather count statistics on all events, even if a regular expression fails to match in the rex
command.
The rex
command will not filter or remove any events, even if the rex
doesn't match. The regex
command is used to filter and remove events based on a regular expression.
If the rex
fails to match a field, that field won't be present in that event.
index=foo | rex field=_raw "Hello (?<match>.*)"
For this data, you'll get the following
_raw | match |
---|---|
Hello world! | world! |
Goodbye for now |
You can then use the fillnull
command to put a default value in fields where the value is NULL.
index=foo | rex field=_raw "Hello (?<match>.*)" | fillnull value="EMPTY" match
Which will give you the following results
_raw | match |
---|---|
Hello world! | world! |
Goodbye for now | EMPTY |
The rex
command will not filter or remove any events, even if the rex
doesn't match. The regex
command is used to filter and remove events based on a regular expression.
If the rex
fails to match a field, that field won't be present in that event.
index=foo | rex field=_raw "Hello (?<match>.*)"
For this data, you'll get the following
_raw | match |
---|---|
Hello world! | world! |
Goodbye for now |
You can then use the fillnull
command to put a default value in fields where the value is NULL.
index=foo | rex field=_raw "Hello (?<match>.*)" | fillnull value="EMPTY" match
Which will give you the following results
_raw | match |
---|---|
Hello world! | world! |
Goodbye for now | EMPTY |
You know, it would be great if the reference page in the online manual for "rex" indicated your answer.