elasticsearch 从logstash中删除索引后,是否可以再次指向同一日志文件以获取另一个索引?,elasticsearch,logstash,kibana,elasticsearch,Logstash,Kibana" /> elasticsearch 从logstash中删除索引后,是否可以再次指向同一日志文件以获取另一个索引?,elasticsearch,logstash,kibana,elasticsearch,Logstash,Kibana" />

elasticsearch 从logstash中删除索引后,是否可以再次指向同一日志文件以获取另一个索引?

elasticsearch 从logstash中删除索引后,是否可以再次指向同一日志文件以获取另一个索引?,elasticsearch,logstash,kibana,elasticsearch,Logstash,Kibana,我删除了一个索引。它包含来自某个文件的日志。即使删除了该索引,为什么logstash/elasticsearch在创建新索引时不读取相同的日志文件?谁来读取日志?是ES还是LS?Logstash读取您的日志并将其放入elasticsearch。有一种叫做sincedb的东西,Logstash使用它来跟踪它已经处理过的文件。如果删除它并重新启动logstash,它将重新处理所有日志 如果要重新分析特定日志,最简单的方法是: mv logfile logfile.copy cp logfile.co

我删除了一个索引。它包含来自某个文件的日志。即使删除了该索引,为什么logstash/elasticsearch在创建新索引时不读取相同的日志文件?谁来读取日志?是ES还是LS?

Logstash读取您的日志并将其放入elasticsearch。有一种叫做sincedb的东西,Logstash使用它来跟踪它已经处理过的文件。如果删除它并重新启动logstash,它将重新处理所有日志

如果要重新分析特定日志,最简单的方法是:

mv logfile logfile.copy
cp logfile.copy logfile
rm logfile.copy

这会给它一个新的inode,并使logstash认为它是一个新日志。

您还可以停止logstash,手动编辑sincedb文件以删除对相关文件/inode的引用,然后重新启动logstash。这个sincedb文件到底在哪里?我没有在logstash目录中找到它。sincedb的位置可以在
文件{}
元素中定义。如果不指定它,则默认为
$HOME/.sincedb
(运行logstash的用户主目录下的子目录)