The event_loop
plugin helper manages event loops.
Here is an example:
require 'fluent/plugin/input'
module Fluent::Plugin
class ExampleInput < Input
Fluent::Plugin.register_input('example', self)
# 1. Load `event_loop_helper`
helpers :event_loop
# Omit `configure`, `shutdown` and other plugin APIs
def start
super
# 2. Attach watcher
watcher = Coolio::TCPServer.new(...)
event_loop_attach(watcher)
end
end
end
The attached watcher is managed by the plugin. No need of watcher detach code in plugin's shutdown
. The plugin shutdowns the attached watchers automatically.
This method attaches watcher to the event loop.
watcher
:Coolio::Watcher
instances
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.