rsyslog 8.2610.0 Released
Scheduled-stable releases are bi-monthly snapshots of the daily-stable branch,
providing predictable update points with the same functional content as
daily-stable at the time of the snapshot.

Highlights
- Experimental producer-local queue scope for improved queue concurrency
- New Amazon Kinesis Data Streams output via
omkinesis - Global strict input startup policy via
inputStartupPolicy="require-all" - OpenSSL 4 X.509 accessor compatibility
- Improved asynchronous
omfilerotation reliability - Queue contention and Elasticsearch request-duration statistics
- Expanded Enterprise Linux packaging, including an
imhttpsubpackage - Broad defensive hardening across queues, parsers, inputs, TLS, and outputs
Notable changes
Queues, concurrency, and reliability
- Experimental
queue.scope="local"places bounded producer-specific front
queues ahead of shared FixedArray or LinkedList backends, including disk
assistance. Global scope remains the default. - Queue processing received extensive reliability and performance work,
including targeted worker wakeups, improved disk-assisted worker restart
handling, safer shutdown behavior, and reduced shared-lock overhead. - Optional queue mutex contention statistics expose contention counts and
observed wait time through impstats. - Existing classic disk queues retain their supported serialization format;
Darwin ARM64 serialization now uses the expected fixed calling convention.
Inputs and startup policy
global(inputStartupPolicy="require-all")can make configured input startup
failures fatal, including listener and worker failures. The default remains
best-effort startup.imtcpdefers regex framing checks until a line boundary, reducing repeated
scans for fragmented input.imudpvalidates receive-buffer dimensions before startup, preventing invalid
allocation and offset arithmetic.imrelprejects framing sizes beyond librelp’s supported limit.
Outputs and integrations
- The new
omkinesisaction sends signed KinesisPutRecordrequests with
configurable streams, regions, credentials, payload templates, and fixed or
template-based partition keys. RainerScript and YAML configurations are
supported. - Asynchronous
omfileoutput now remains active across size-based rotation
and avoids shutdown hangs and rotation races. mmaitagadds response-size, request-timeout, connect-timeout, and low-speed
budgets while keeping provider response bodies out of failure diagnostics.omelasticsearchexposes request counts, duration, and interval minimum and
maximum duration through impstats.- The starter PostgreSQL schema accepts longer Docker and journald-style tags.
Normalization, parsing, and TLS
mmnormalizepreserves complete TurboVM results, including nested JSON and
null values, and reports truncated results throughturbo.truncated.- RainerScript replacement and template substring results are bounded safely,
including negative substring endpoints and large regex-match offsets. - Empty compressed records, oversized diagnostics, and raw message offsets are
validated before use. - TLS certificate handling supports newer OpenSSL X.509 accessors while
retaining compatibility with older OpenSSL versions. - DTLS sessions that fail peer verification are closed instead of retained.
Broken forwarding TLS sessions are explicitly aborted before descriptor reuse.
Overall hardening and security maintenance
This release includes broad defensive hardening across parsers, message
handling, queues, inputs, TLS/DTLS, compression, configuration validation, and
output actions.
It also incorporates security and robustness fixes accumulated in daily-stable
since the previous scheduled-stable release. These include bounds checks,
safer malformed-input handling, stricter certificate and peer validation,
safer dynamic paths, improved queue recovery, and protection against crashes,
resource exhaustion, busy loops, and unsafe shutdown behavior.
Compatibility notes
- Producer-local queue scope is experimental and opt-in. It requires lock-free
64-bit atomics and monotonic condition variables; global queue scope remains
the default. inputStartupPolicy="require-all"is opt-in. Existing configurations retain
best-effort startup behavior unless the strict policy is enabled.- New Kinesis output support requires the corresponding optional build
dependencies when enabled.
Contributors
Thanks to everyone who contributed to this release, including:
- Andreas Hasenack
- F3dor
- FLAK-ZOSO
- Galaxy Roaming
- hanjinpeng
- Jérémie Jourdin
- Mattia Marchese
- owen-rote
- Peter de Ridder
All other changes were contributed by Adiscon GmbH.
Artifact availability
The rsyslog 8.2610.0 source release is available from the usual rsyslog download locations. Packages and container images may appear with some delay while downstream publishing completes.
