KNOWLEDGE BASE
Release Notes v4.0.4
Fluent Bit is a Fast and Lightweight Data Processor and Forwarder for Linux, BSD, Windows and macOS. We are proud to announce the availability of Fluent Bit v4.0.4.
This release brings significant improvements to OpenTelemetry support, including a new internal OTLP interface and enhanced Lua scripting with metadata awareness. This release also introduces native character encoding conversion in in_tail, full support for AWS MSK IAM authentication in Kafka plugins, and performance boosts via Kafka consumer auto-commit. In addition, we’ve included numerous stability, compatibility, and memory handling enhancements across the core engine and plugins — with special attention to NFS-friendly log rotation, improved upstream connection reuse, and expanded platform compatibility.
Below is a detailed list of changes included in this release…
What’s new ?
Core
- network
- downstream
- http_client: validate return of host and content_length check (PR #10466)
- opentelemetry
- new abstraction for OTel data handling (PR #10549)
- log_event_encoder_dynamic_field: ensure outstanding scopes are cleaned up before releasing the underlying buffer (PR #10549)
- pack: extra protection on error handling on JSON to msgpack (PR #10549)
- stream_processor: update yylex() signatures in lexer definition files (PR #10551)
- reload: fix handling hot reload when reload failure (PR #10547)
- hash_table
- io: on network connect exceptions, invalidate file descriptor (PR #10425)
- internal: config: implement storage inheritance option (PR #10396)
- log_event_decoder: validate memory allocation (PR #10433)
- upstream
- processor: add function to allow a direct string property value (PR #10444)
- multiline: release unpacked contexts on exceptions (PR #10449)
- http_server: allow to set a maximum buffer size for a client payload (PR #10448)
- config_format: yaml: add detailed error message on bad format (PR #10499)
- go: plugin_proxy: update function pointer signatures with correct args for C23 (PR #10489)
- build
- Isolate onigmo headers for building process (PR #10517)
- check for SASL before linking to it (PR #10525)
- remove double-linking to ssl and crypto (PR #10525)
- src: Build generic part of unicode interface (PR #10464)
- adjust order for Kafka dependencies and AWS defs (PR #10536)
- deprecate option FLB_FILTER_LUA_USE_MPACK (PR #10457)
- gzip: Process boundary conditions strictly (PR #10526)
- input_chunk: Keep consistent for appending chunks (PR #10527)
- aws
- kafka: add new API to manage a context with opaque pointers (PR #10525)
- packaging: add pkg-config (PR #10525)
- unicode
- conv: Unicode: Add a search function for encoding types (PR #10464)
- st: regparse: Handle C23 strict checking for function signatures (PR #10521)
- record_accessor
Libraries
Plugins
- Elasticsearch (Input)
- use new http server api to set max buffer size (PR #10448)
- HTTP (Input)
- use new http server api to set max buffer size (PR #10448)
- OpenTelemetry (Input)
- Prometheus remote write (Input)
- use new http server api to set max buffer size (PR #10448)
- Splunk (Input)
- Calyptia_fleet (Input)
- Docker (Input)
- update function pointer signatures with correct args for C23 (PR #10490)
- Kafka (Input)
- Prometheus scrape metrics (Input)
- release context if upstream context fails (PR #10539)
- Kernel Logs (Input)
- use
strtoull()to fix timestamp parsing on 32-bit systems (PR #10543)
- use
- Tail (Input)
- Event_test (Input)
- use new server api with backlog parameter (PR #10550)
- Winevtlog (Input)
- Launch w/o valid subscription when using
ignore_missing_channelsparameter (PR #10555)
- Launch w/o valid subscription when using
- Modify (Filter)
- fix leaks on exceptions (PR #10434)
- Lua (Filter)
- Content modifier (Processor)
- Sampling (Processor)
- fix handling of dropped spans (PR #10538)
- Sql (Processor)
- update yylex() signatures in a lexer definition file (PR #10551)
- OpenTelemetry (Output)
- Kafka (Output)
- Calyptia (Output)
- destroy context when failure is encountered during init. (PR #10502)
- Cloudwatch logs (Output)
- fix
strcasestr()_GNU_SOURCE(PR #10452)
- fix
- Loki (Output)
- prevent race conditions when multiple workers use the Remove_Keys (PR #10563)
Contributors
On every release, there are many people involved doing contributions to different areas like bug reporting, troubleshooting, documentation and coding, without these contributions from the community, the project won’t be the same and won’t be in the good shape that it is now. So THANK YOU! to everyone who takes part of this journey!
Join us
We want to hear about you, our community is growing, and you can be part of it!, you can contact us at:
- Github: http://github.com/fluent/fluent-bit
- Slack: http://slack.fluentd.org
- Twitter: @fluentbit