问题描述

通过Logstash导入数据,发现第一次能成功,把索引删除后***重新导入却不能成功***,这个问题折腾了2天,没有头绪,于是对着每一行日志开始分析

Logstash输出有一条信息虽然是info,但却很迷惑
 [2021-06-25T20:46:32,283][INFO ][logstash.inputs.file     ]
 [main] No sincedb_path set, generating one based on the "path" setting {:sincedb_path=>"/usr/local/Cellar/logstash-full/7.13.2/libexec/data/plugins/inputs/file/.sincedb_xxxx", :path=>["xxxx/xxx/xxxx/xx.csv"]}
这个sincedb_path到底是个啥,通过文档查询,是这么解释的:

如果 sincedb 文件中已经有这个文件的 inode 记录了,那么 logstash 依然会从记录过的 pos 开始读取数据。所以重复测试的时候每回需要删除 sincedb 文件。

解决方法

把sincedb_path路径下所有文件删除即可
rm sincedb_xxxx