exit_on_eof wait until output flushes all the buffers
- Dominant language
- C
- Stars
- 8.1k
- Forks
- 2k
- Avg merge
- 4d 16h
- Merged PRs (30d)
- 58
Description
**Is your feature request related to a problem? Please describe.**
Fluent-Bit’s current behavior with **tail**'s **exit_on_eof** terminates the service as soon as all input files reach EOF.
However, when this happens, Fluent-Bit begins the shutdown sequence before the output plugins (e.g., Kafka) have fully flushed their remaining buffers.
This leads to data loss, because output workers stop prematurely even though there are still unflushed chunks or in-flight messages.
Increasing Grace does not help.
This makes **exit_on_eof** unusable for bulk processing workflows where complete delivery is mandatory.
**Describe the solution you'd like**
I would like Fluent-Bit to support a safe shutdown mode when **exit_on_eof** is enabled, where Fluent-Bit:
Stops inputs when EOF is reached.
Allows output plugins to continue flushing until all buffered data is successfully delivered (or even after a certain number of failures).
Initiates the actual shutdown.
Contributor guide
Assessment
This issue has not been assessed yet.