logstash
配置将日志文件设置为输入源,然后将内容发送到ElasticSearch
。
input
部分如下所示
input{
file{
path => "/data/logs/backend.log*"
start_position => "beginning"
}
}
然后,日志文件将按大小滚动,这意味着日志文件名首先为backend.log
,当文件大小达到10M时,将其重命名为backend.log.1
,并重新命名为空创建backend.log来记录内容。
所以问题是logstash
是否将从backend.log.1
发送内容到es服务器?或者ElasticSearch
能够区分已经收到backend.log.1
中的内容,尽管这似乎效率不高。
答案 0 :(得分:0)
file
输入文档包含一整段有关如何处理rotation
此输入检测并处理文件旋转,而不管文件是通过重命名还是通过复制操作旋转。为了支持在旋转发生后一段时间内写入旋转文件的程序,请在文件名模式中同时包含原始文件名和旋转文件名(例如/ var / log / syslog和/var/log/syslog.1)。观看(路径选项)。
由于默认为tail
模式,因此path
参数应确保使用glob模式来捕获所有文件,就像您所做的一样。因此,您已经准备就绪。拖尾很开心!