这个 logstash
config将日志文件设置为输入源,然后将内容发送到 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
已经收到了,尽管这似乎效率不高。
1条答案
按热度按时间gzszwxb41#
这个
file
输入文档包含一整段关于它如何处理旋转的内容无论文件是通过重命名还是复制操作进行旋转,此输入都会检测并处理文件旋转。要支持在旋转发生后一段时间内写入旋转文件的程序,请在要监视的文件名模式(路径选项)中同时包含原始文件名和旋转文件名(例如/var/log/syslog和/var/log/syslog.1)。
自从
tail
模式是默认的,您的path
参数应该确保使用glob模式来捕获所有文件,就像您所做的那样。你准备好了。快乐的尾随!