我正在尝试实现nginx日志循环,将所有日志发送到apachekafka pubsub消息。虽然有一个相当大的输入(大约1gbpm),但我不确定当日志文件被旋转时tail的行为。
例如:
我用以下命令跟踪日志文件: tail -F access.log | kafkacat -b broker -t topic
在某个时间点 tail
由于管道最大缓冲区大小,将无法读取文件,因为向Kafka发送消息不是即时的。
如果文件将按 logrotate
命令时间 tail
是锁着的,没办法判断以前 access.log
完全读取或有一些日志线留下。
所以我的问题是:我该如何实现 tail
至 kafkacat
同时确保尾部将读取所有文件,无论它是否会被旋转?
暂无答案!
目前还没有任何答案,快来回答吧!