Kibana 4'发现'搜索错误

时间:2015-05-17 17:10:51

标签: elasticsearch kibana

我在ElasticSearch中索引了一个地理数据记录数据集,以便在Kibana中进行分析。我的问题是发现'选项卡不会提取数据,而是显示错误消息

Discover: An error occurred with your request. Reset your inputs and try again.

在'设置'中,我可以很好地配置我的数据索引,而Kibana正在使用正确的类型/分析/索引元数据来获取所有映射字段。 '可视化'工作得很好。我可以创建我的图表,将它们添加到仪表板,向下钻取 - 一切。只是发现'标签对我来说是坏的。

我正在运行ElasticSearch 1.5.2,现在尝试使用Kibana 4.0.1,4.0.2和4.1-snapshot(在Ubuntu 14.04上),所有结果都相同。

我注意到的另一个影响:侧边栏没有显示任何可用字段&#39;。只有当我展开字段设置并取消勾选&#39;隐藏缺失的字段&#39;我将获取架构字段列表。 (这些都是灰色的,因为它们被Kibana认为是“缺失的。”但有趣的是,点击其中一个上的“可视化”以绘制其分发图表,再次完全没问题。)< / p>

我唯一怀疑的是:我的数据没有时间戳字段,所以也许这就是搞乱的事情。虽然从文档判断,但我认为应该支持非时间序列数据。

任何提示都赞赏!

3 个答案:

答案 0 :(得分:1)

就我而言,原因是我将格式错误的JSON索引到elasticsearch中。它是有效的Javascript,但不是有效的JSON。特别是我忽略了引用对象中的键

我使用curl插入了我的(测试)数据,例如

curl -X PUT http://localhost:9200/foo/doc/1 -d '{ts: "2015-06-24T01:07:00.000Z", employeeId: 105, action: "PICK", quantity: 8}'

请注意,ts:应该是“ts”:等等。

看起来像弹性搜索容忍这样的事情,但Kibana没有。一旦我修好了,Discover工作得很好。

请注意,当出现错误时,您看到的错误是在客户端生成的。如果您打开客户端调试程序(例如Firefox),您将在控制台日志中看到错误。就我而言,错误消息是

错误:无法解析/序列化正文

如果您的错误不同,则会有不同的原因。

开始输入错误的JSON是我的错。奇怪的是,弹性搜索比Kibana更宽容。

答案 1 :(得分:0)

它也发生在我身上。我尝试了所有......:

  • 删除所有索引(.kibana,我自己等)无法正常工作
  • 重新启动ES,Kibana和LS服务没有帮助。
  • 我在kibana.yml中也没有Request Timeout问题。

我的问题是时间戳字段使用了错误的时间格式。我将其更改为此格式并且有效:“date”:“2015-05-13T00:00:00”

答案 2 :(得分:0)

我遇到了同样的问题。建议的解决方案都没有帮助。在Wireshark中比较工作版本和非工作版本时,我终于找到了问题。

不要在JSON前面发出UTF8字节顺序标记。不知何故,我的序列化程序设置为这样做... ElasticSearch很好用,但Kibana无法在Discover页面上处理它。