elasticsearch Filebeat复制事件,elasticsearch,logstash,elastic-stack,filebeat,elasticsearch,Logstash,Elastic Stack,Filebeat" /> elasticsearch Filebeat复制事件,elasticsearch,logstash,elastic-stack,filebeat,elasticsearch,Logstash,Elastic Stack,Filebeat" />

elasticsearch Filebeat复制事件

elasticsearch Filebeat复制事件,elasticsearch,logstash,elastic-stack,filebeat,elasticsearch,Logstash,Elastic Stack,Filebeat,我正在使用Filebeat>logstash>elasticsearch>kibana运行一个基本的麋鹿堆栈设置-所有这些都在5.2版上 当我删除Filebeat并将logstash配置为直接查看文件时,它会接收正确数量的事件 如果我删除数据并使用Filebeat重新摄取文件,以将相同的日志文件内容传递给logstash,那么创建的事件将增加10%以上。我已经检查了其中一些,以确认filebeat正在创建副本 有人看到过这个问题吗?或者有什么建议可以解释为什么会发生这种情况吗?我需要首先了解您删

我正在使用Filebeat>logstash>elasticsearch>kibana运行一个基本的麋鹿堆栈设置-所有这些都在5.2版上

当我删除Filebeat并将logstash配置为直接查看文件时,它会接收正确数量的事件

如果我删除数据并使用Filebeat重新摄取文件,以将相同的日志文件内容传递给logstash,那么创建的事件将增加10%以上。我已经检查了其中一些,以确认filebeat正在创建副本


有人看到过这个问题吗?或者有什么建议可以解释为什么会发生这种情况吗?

我需要首先了解您删除文件节拍是什么意思

可能性-1

如果您已卸载并再次安装,那么显然file beat将再次从路径读取数据(您已重新接收并将其发布到logstash->elasticsearch->kibana(假设旧数据未从elastic节点中删除),因此会出现重复数据

可能性2

您刚刚停止了filebeat,为logstash配置并重新启动了filebeat,可能是您的注册表文件在关机期间未正确更新(如您所知,file beat逐行读取并将注册表文件更新到它已成功发布到logstash/elasticsearch/kafka等的行,如果这些输出服务器中的任何一个在处理来自filebeat的巨大输入负载时遇到任何困难,则filebeat将等待这些服务器可用于进一步处理输入数据。一旦这些输出服务器可用,filebeat将读取注册表文件并扫描到它已发布的行,然后开始发布下一行(从下一行开始)

示例注册表文件如下所示

{
"source": "/var/log/sample/sample.log",
"offset": 88,
"FileStateOS": {
    "inode": 243271678,
    "device": 51714
},
"timestamp": "2017-02-03T06:22:36.688837822-05:00",
"ttl": -2
}
如您所见,它在注册表文件中维护时间戳。 所以这是重复的原因之一

如需更多参考,请点击以下链接

希望这会有所帮助。

只是想澄清一下,是比创建的日志存储“多10%的事件”,还是比源文件中存在的“多10%的事件”?