The inject
plugin helper injects values into events according to the configuration.
Here is an example:
require 'fluent/plugin/filter'
module Fluent::Plugin
class ExampleFilter < Filter
Fluent::Plugin.register_filter('example', self)
# 1. Load inject helper
helpers :inject
# Omit `configure`, `shutdown` and other plugin APIs
def filter(tag, time, record)
# 2. Inject values into `record`
new_record = inject_values_to_record(tag, time, record)
# edit new_record ...
new_record
end
end
end
For more details, see Inject section.
This method injects values to the given record and returns the new record.
tag
: the tag of the eventtime
: event timestamprecord
: event record
Example:
def filter(tag, time, record)
new_record = inject_values_to_record(tag, time, record)
# edit new_record ...
new_record
end
This method injects values into the given event stream and returns the new event stream.
tag
: the tag of the eventes
: event stream
Example:
def process(tag, es)
new_es = inject_values_to_event_stream(tag, es)
# do something using new_es
end
If this article is incorrect or outdated, or omits critical information, please let us know. Fluentd is an open-source project under Cloud Native Computing Foundation (CNCF). All components are available under the Apache 2 License.