Grep Filter 🔗︎

Overview 🔗︎

The grep filter plugin “greps” events by the values of specified fields.

Configuration 🔗︎

GrepConfig 🔗︎

regexp ([]RegexpSection, optional) 🔗︎

Regexp Directive

Default: -

exclude ([]ExcludeSection, optional) 🔗︎

Exclude Directive

Default: -

or ([]OrSection, optional) 🔗︎

Or Directive

Default: -

and ([]AndSection, optional) 🔗︎

And Directive

Default: -

Regexp Directive 🔗︎

Specify filtering rule. This directive contains two parameters.

key (string, required) {#regexp directive {#regexp-directive}-key} 🔗︎

Specify field name in the record to parse.

Default: -

pattern (string, required) {#regexp directive {#regexp-directive}-pattern} 🔗︎

Pattern expression to evaluate

Default: -

Example Regexp filter configurations 🔗︎

apiVersion: logging.banzaicloud.io/v1beta1
kind: Flow
metadata:
 name: demo-flow
spec:
 filters:
   - grep:
       regexp:
       - key: first
         pattern: /^5\d\d$/
 selectors: {}
 localOutputRefs:
   - demo-output

Fluentd Config Result 🔗︎

 <filter **>
   @type grep
   @id demo-flow_1_grep
   <regexp>
     key first
     pattern /^5\d\d$/
   </regexp>
 </filter>

Exclude Directive 🔗︎

Specify filtering rule to reject events. This directive contains two parameters.

key (string, required) {#exclude directive {#exclude-directive}-key} 🔗︎

Specify field name in the record to parse.

Default: -

pattern (string, required) {#exclude directive {#exclude-directive}-pattern} 🔗︎

Pattern expression to evaluate

Default: -

Example Exclude filter configurations 🔗︎

apiVersion: logging.banzaicloud.io/v1beta1
kind: Flow
metadata:
 name: demo-flow
spec:
 filters:
   - grep:
       exclude:
       - key: first
         pattern: /^5\d\d$/
 selectors: {}
 localOutputRefs:
   - demo-output

Fluentd Config Result 🔗︎

 <filter **>
   @type grep
   @id demo-flow_0_grep
   <exclude>
     key first
     pattern /^5\d\d$/
   </exclude>
 </filter>

Or Directive 🔗︎

Specify filtering rule. This directive contains either regexp or exclude directive.

regexp ([]RegexpSection, optional) {#or directive {#or-directive}-regexp} 🔗︎

Regexp Directive

Default: -

exclude ([]ExcludeSection, optional) {#or directive {#or-directive}-exclude} 🔗︎

Exclude Directive

Default: -

Example Or filter configurations 🔗︎

apiVersion: logging.banzaicloud.io/v1beta1
kind: Flow
metadata:
 name: demo-flow
spec:
 filters:
   - grep:
       or:
         - exclude:
           - key: first
             pattern: /^5\d\d$/
           - key: second
             pattern: /\.css$/

 selectors: {}
 localOutputRefs:
   - demo-output

Fluentd Config Result 🔗︎

   <or>
     <exclude>
       key first
       pattern /^5\d\d$/
     </exclude>
     <exclude>
       key second
       pattern /\.css$/
     </exclude>
   </or>

And Directive 🔗︎

Specify filtering rule. This directive contains either regexp or exclude directive.

regexp ([]RegexpSection, optional) {#and directive {#and-directive}-regexp} 🔗︎

Regexp Directive

Default: -

exclude ([]ExcludeSection, optional) {#and directive {#and-directive}-exclude} 🔗︎

Exclude Directive

Default: -

Example And filter configurations 🔗︎

apiVersion: logging.banzaicloud.io/v1beta1
kind: Flow
metadata:
 name: demo-flow
spec:
 filters:
   - grep:
       and:
         - regexp:
           - key: first
             pattern: /^5\d\d$/
           - key: second
             pattern: /\.css$/

 selectors: {}
 localOutputRefs:
   - demo-output

Fluentd Config Result 🔗︎

   <and>
     <regexp>
       key first
       pattern /^5\d\d$/
     </regexp>
     <regexp>
       key second
       pattern /\.css$/
     </regexp>
   </and>