-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Multiline received as last input will be dropped #57
Comments
I'm hitting this issue too, using the |
I am hitting same issue too +1 when multiline codec with stdin input is used. |
I just ran into this issue using |
#63 should eventually fix this. |
Closing as this will be handed over to #73 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
When sending data that includes a multiline at the very end, the multiline will be dropped by this codec.
For example, this affects every file being read with the
stdin
orfile
inputs (see below for mitigation when usingfile
).Example
stacktrace.log:
logstash.javastacktrace.conf:
Output:
Why?
The codec will buffer lines matching a multiline pattern, but not output them until it encounters a line not matching the multiline pattern.
While a
flush
method is implemented, it will never be called by Logstash: elastic/logstash#6523Mitigation
Setting
auto_flush_interval
helps for inputs that don't exit (e.g.file
, but notstdin
).However, it introduces a race condition - if the input or Logstash dies before the data is auto flushed it will still be lost.
The text was updated successfully, but these errors were encountered: