一尘不染

老日志不会通过logstash导入ES

elasticsearch

当我启动logstash时,旧日志不会导入ES。
ES中仅记录新的请求日志。
现在我已经在文档中看到了。

即使设置了start_position=>"beginning",也不会插入旧日志。
这仅在我在Linux上运行logstash时发生。

如果我使用相同的配置运行它,则会导入旧日志。
我什至不需要start_position=>"beginning"在Windows上进行设置。

有什么想法吗?


阅读 337

收藏
2020-06-22

共1个答案

一尘不染

当您读取Logstash的输入日志时,Logstash会保留有关此文件上读取位置的记录,这称为sincedb

Where to write the sincedb database (keeps track of the current position of monitored log files). 
The default will write sincedb files to some path matching "$HOME/.sincedb*"

因此,如果要导入旧的日志文件,则必须删除$ HOME中的所有.sincedb *。然后,您需要设置

start_position =>“开始”

在您的配置文件中。

希望这可以帮到你。

2020-06-22