当ElasticSearch在不同的机器上时,通过在Kibana3的config.js中设置elasticsearch: "http://different_machine_ip:9200"
,Kibana3可以成功运行。
现在,我想在我的本地计算机上运行它们中的所有三个进行测试。我正在使用 Windows7 并使用 Chrome 浏览器。我在 Tomcat7 上安装了 Kibana 3 。我从 LogStash jar文件启动了嵌入式ElasticSearch。
我将ElasticSearch位置设置为"localhost:9200"
或"127.0.0.1:9200"
或"computer_name:9200"
。当我在浏览器上检查Kibana3时,通过间谍揭示的ElasticSearch查询没有logstash索引。
curl -XGET 'http://localhost:9200//_search?pretty' -d ''
如您所见,索引部分为空,仅显示//
。 预期查询应如下所示。
curl -XGET 'http://localhost:9200/logstash-2013.08.13/_search?pretty' -d 'Some JSON Data'
浏览器能够成功调用ElasticSearch API。例如,在地址栏上键入http://localhost:9200/logstash-2013.08.13/_mapping?pretty=true
将返回logstash索引的映射。这证明连接到ElasticSearch没有任何问题。
这里的问题是Kibana查询的索引是空的。为什么索引为空?
答案 0 :(得分:7)
Kibana 3与Kibana 1和2的工作方式不同。它完全在浏览器中运行。
配置文件由javascript读取并在浏览器中执行,因此localhost:9200告诉Kibana寻找在你面前的笔记本电脑上运行的ElasticSearch,而不是服务器。
BTW - 最新版本的LogStash捆绑了Kibana,因此您无需独立托管它。