-
Notifications
You must be signed in to change notification settings - Fork 105
Description
Hello,
We have experienced a couple of blocked web server containers in our production infrastructure caused by fluentd being overloaded.
I suspect this is caused by the attempt of send
to flush the entire buffer and keeping a hold on the buffer lock while doing so.
If the fluend server is slow for any reason the send
method will slowly loop until the buffer is empty.
In the meantime, any attempt to log will block at the appendBuffer
level because send
still has the lock.
While looking for known issues/prs I found #33 and the implementing PR from @alexlry #52 which would remove the lock altogether.
It would be great if that PR could be reviewed and merged in so that docker containers would not longer block while trying to write to stdout but rather fail with full buffers.
I have also built a Gist detailing how to reproduce this issue with docker-compose and tc: https://gist.github.com/stefano-pogliani/463af63c040d1bd3740fb46255d2768a