WorkerThreads¶
Sets the default number of worker threads for listeners on epoll-enabled systems.
This parameter applies to imtcp: TCP Syslog Input Module.
- Name:
WorkerThreads
- Scope:
module
- Type:
integer
- Default:
module=2
- Required?:
no
- Introduced:
8.2504.0
Description¶
The WorkerThreads
parameter defines the default number of worker threads for all imtcp
listeners. This setting applies only on epoll-enabled systems. If epoll
is unavailable,
imtcp
will always run in single-threaded mode, regardless of this setting.
Default value: 2
Allowed values: 1
(single-threaded) to any reasonable number (should not exceed CPU cores).
Behavior and Recommendations
If set to
1
,imtcp
operates in single-threaded mode, using the main event loop for processing.If set to
2
or more, a worker pool is created, allowing multiple connections to be processed in parallel.Setting this too high can degrade performance due to excessive thread switching.
A reasonable upper limit is the number of available CPU cores.
Scope and Overrides
- This is a module-level parameter, meaning it sets the default for all imtcp
listeners.
- Each listener instance can override this by setting the workerthreads
listener parameter.
Example Configuration The following sets a default of 4 worker threads for all listeners, while overriding it to 8 for a specific listener:
module(load="imtcp" WorkerThreads="4") # Default for all listeners
input(type="imtcp" port="514" workerthreads="8") # Overrides default, using 8 workers
If WorkerThreads
is not explicitly set, the default of 2
will be used.
Module usage¶
module(load="imtcp" workerThreads="4")
See also¶
See also imtcp: TCP Syslog Input Module.
Support: rsyslog Assistant | GitHub Discussions | GitHub Issues: rsyslog source project
Contributing: Source & docs: rsyslog source project
© 2008–2025 Rainer Gerhards and others. Licensed under the Apache License 2.0.