【问题标题】:Kibana not showing some of the documents from elasticsearch - even though they existKibana 没有显示来自 elasticsearch 的一些文档——即使它们存在
【发布时间】:2019-06-12 15:26:01
【问题描述】:

我有一个 elasticsearch 和 kibana 设置,我正在将文档发送到 elasticsearch 并返回创建的 201,当我直接查询文档的 id(卷曲到 elasticsearch API)时,我得到了结果:

# curl elasticsearch.metrics:9200/falco/_doc/1559716938212262231-1
{"_index":"falco","_type":"_doc","_id":"1559716938212262231-1","_version":1,"_seq_no":1096,"_primary_term":1,"found":true,"_source":{ "priority": "Info", "output": "test", "rule": "test", "output_fields": { "test": "test", "evt.time": "1559716938212262231" }}}

但是,此文档(以及许多其他文档)并未出现在 kibana 中。

这并不是说 kibana 中什么都没有,我确实看到了那里的一些文档,甚至比我的测试出现的新文档。

为什么会这样?

【问题讨论】:

  • 你能发布mapping 以及有1559716938212262231-1 的文档吗?
  • 带有 id 的文档是我在我的问题中粘贴的(这是整个文档,它很短 ;-) )。如何获取映射?
  • 另外,我确实注意到我的测试文档没有时间字段,这和它有什么关系吗?
  • 好的。获取映射尝试curl elasticsearch.metrics:9200/falco/_mapping

标签: elasticsearch kibana


【解决方案1】:

例如,为了在 diacovery 选项卡中显示文档,kibana 在时间选择器(右上角)中缩小到所选时间范围内的所有文档。您还选择了一个索引模式,其中定义了一个时间字段(在大多数情况下为@timestamp)。

因此 Kibana 会在为当前选定的索引模式配置的时间字段中搜索值在选定时间范围内的文档。

如果@timestamp 字段中缺少数据,您可以使用所有文档中存在的不同日期字段轻松创建不同的索引模式。如果没有,请考虑使用这样的文件来丰富您的文档。

【讨论】:

  • 这对我有帮助。我删除了“堆栈管理”->“索引管理”下的索引模式,重新创建了没有@timestamp 字段的索引,并且我的记录出现了。您可以在“发现”中判断是否设置了它,因为它会显示时间过滤器。我在这方面花费的时间比我想承认的要多,但它现在正在起作用。谢谢!
猜你喜欢
  • 1970-01-01
  • 2010-12-27
  • 1970-01-01
  • 2014-05-30
  • 1970-01-01
  • 2019-08-05
  • 1970-01-01
  • 2017-09-06
  • 2019-03-26
相关资源
最近更新 更多