当在kibana + elasticsearch中出现”No result”这样的蓝色横幅时,可以采取的应对措施是什么?
麻煩
使用fluentd + elasticsearch + kibana时遇到了些问题,从一个fluentd节点发送日志到elasticsearch,但在kibana中无法看到。
无结果,因为没有找到与您选择的时间范围匹配的索引。在Kibana上出现了一个蓝色的横幅。可能是Elasticsearch没有成功加载。
研究
目前,我們通過Apache的mod_rewrite進行重定向,並訪問elasticsearch。暫時先訪問了目標URL以確認elasticsearch的回應狀態碼為200。確認後顯示正常,表示已成功建立連接。
在节点/主节点上检查Fluentd是否运行中
$ ps aux | grep fluentd
确认是否监听了24224端口的连接:
$ netstat -an | grep 24224
确认数据包是否正在飞行
$ /usr/sbin/tcpdump 端口24224
确认正在进行通信。通过查看fluentd的主控日志,也确认收到了相关数据。
意味是,Elasticsearch出现故障,或者是Fluentd到Elasticsearch的部分出了问题。Elasticsearch的日志没有更新。
我决定重新审视Elasticsearch的设置。
通过大量数据传输引发的问题在diaspora社区中衍生了fluentd -> Elasticsearch的挑战。
但是事情并不顺利。
解决方法
由于在 Kibana 中显示了 Elasticsearch 内容为空的横幅,我误以为是 Elasticsearch 出错了。但是调查后发现还有一个名为 Kibana3 的选项存在。- @johtani的日记 2nd
看起来似乎需要在Kibana和Elasticsearch之间对日期和索引进行匹配。(我原本想着用”*”之类的进行搜索,看起来可以自动出来…)
暂时先从Kibana右上角的齿轮图标进入索引选项卡,然后在索引模式中以[]附带索引名称的方式进行配置,这样就成功了。
$ curl -X GET localhost:9200/_cat/shards
apache_access-201405 0 p 已启动 940 313.2kb 100.67.120.153 Sugar Man
在这种情况下,写成[apache_access-201405]并刷新。
设计有点问题,不能只凭感觉来进行。