Fluent::Plugin::ConditionalFilter, a plugin for Fluentd
Component
ConditionalFilter
fluent-plugin-conditional_filter provides a simple filter that filters out key/value pairs that don't satisfy a given condition. This is the filter version of ConditionalFilterOutput.
Usage
Synopsis
If there's such a configuration as below:
<filter test.**>
type conditional
key_pattern @example\.com$
condition 10
filter numeric_upward
</filter>
When the log below reaches:
'test' => {
'[email protected]' => 5,
'[email protected]' => 15,
'[email protected]' => 12,
}
key/value pairs that don't match either key_pattern
or the condition designated by condition
and filter
are filtered out.
'filtered.test' => {
'[email protected]' => 15,
}
Params
key_pattern
(required)
Key pattern to check.
condition
(required)
Condition for the filter below.
filter
(required)
Set filtering strategy.
ConditionalFilterOutput
fluent-plugin-conditional_filter provides a simple filter that filters out key/value pairs that don't satisfy a given condition.
Usage
Synopsis
If there's such a configuration as below:
<match test.**>
type conditional_filter
add_tag_prefix filtered.
key_pattern @example\.com$
condition 10
filter numeric_upward
</match>
When the log below reaches:
'test' => {
'[email protected]' => 5,
'[email protected]' => 15,
'[email protected]' => 12,
}
key/value pairs that don't match either key_pattern
or the condition designated by condition
and filter
are filtered out.
'filtered.test' => {
'[email protected]' => 15,
}
Params
key_pattern
(required)
Key pattern to check.
condition
(required)
Condition for the filter below.
filter
(required)
Set filtering strategy.
remove_tag_prefix
, remove_tag_suffix
, add_tag_prefix
, add_tag_suffix
You can also use the params above inherited from Fluent::HandleTagNameMixin.
Filters
numeric_upward
Filter out such key/value pairs whose value aren't greater than or equal to the given value as float value.
numeric_downward
Filter out such key/value pairs whose value aren't smaller than or equal to the given value as float value
string_match
Filter out such key/value pairs whose value don't match the given value as string.
Installation
Add this line to your application's Gemfile:
gem 'fluent-plugin-conditional_filter'
And then execute:
$ bundle
Or install it yourself as:
$ gem install fluent-plugin-conditional_filter
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request