我想使用fluentd从另一个日志文件中读取日志,我的目标是最终可以将这些日志发送给kafka经纪人。到目前为止,我只想确保我可以从源文件中获取所有内容并获取stdout。 这是我的配置:
<source>
@type tail
path /var/log/maillog
tag mail.log
format none
read_from_head true
</source>
<match **>
@type stdout
</match>
在测试期间,默认情况下,fluentd仅从文件的末尾读取,因此在运行容器之前,我无法从邮件日志中获取日志。 然后我发现set read_from_head = true可以从文件的开头读取。但是由于某些原因,我只能得到文件的一部分。例如,我的邮件日志文件包含从12/23 5:56到12/27 11:30的日志。在执行“ docker run”和“ docker logs”之后,我只能获得历史记录的输出,从12/23 5:56到12/24 9:08。一旦邮件日志文件在12/27 11:35更新了新日志,我将重新输入“ docker logs”命令,日志消息将从12/24跳至该最新日志。它没有在12/24 9:08和12/27 11:30之间复制日志。