Replies: 5 comments 2 replies
-
@yukuraga Thanks for this report! We need to investigate the cause of the problem. I will make some comments later. |
Beta Was this translation helpful? Give feedback.
-
@yukuraga |
Beta Was this translation helpful? Give feedback.
-
As per our configuration, buffer is organized as file buffer with timekey, so it generates new buffer files as logs continue to come. It's like this, When you go into docker container via docker exec -it and you go to buffer path, you run watch ls -al command at the path; you see the "problematic" .log and .log.meta files are there, as per its timekey period new buffer files are created and when the new ones expire they are deleted but this problematic pair stays. I can try to create a GIF of this scenario. |
Beta Was this translation helpful? Give feedback.
-
After activating debug logs, I see this: I marked the chunk id and as you can see from previous binary content share, it is exactly the buffer we are facing problem. Does this suggest a possible corruption of buffer or buffer meta files? |
Beta Was this translation helpful? Give feedback.
-
Describe the bug
Hello,
We are using fluentd as our central log collector component of our project in a containerized fashion. Basically fluentd collects logs from various input sources and outputs them to our postgresql database via postgres output plugin.
Recently, we came across a situation where a buffer file is flushed over and over and never gets expired resulting quite number of duplicated log records in the database (for a case, two lines of logs reached 30000+ duplicated records).
To Reproduce
N/A (System is being tested and at it's not clear which point exactly it came into this situation)
Expected behavior
Flushed buffer should be expired.
Your Environment
Your Configuration
Your Error Log
Additional context
We backed up the mentioned .log file and .log.meta file and if I put them at the buffer path of different setup, issue arises on the new setup also.
For the sake of info security, we cannot share the .log file itself, if it's going to help, I can share the .log.meta file.
I shared only buffer section of postgres output plugin because our configuration is split into quite number of different configuration files and I think only this buffer section is relevant. If you need, I can share from other config files also.
Beta Was this translation helpful? Give feedback.
All reactions