与 Elasticsearch 通信
edit
IMPORTANT: This documentation is no longer updated. Refer to Elastic's version policy and the latest documentation.
与 Elasticsearch 通信
editKibana 在服务器和浏览器上暴露了两个客户端用于和 elasticsearch 通信。其中一个为管理客户端,用于管理 Kibana 的状态;另外一个为数据客户端,用于处理其它所有的请求。客户端使用 elasticsearch.js 库。
服务器客户端
edit服务器客户端通过 elasticsearch 插件暴露。
const adminCluster = server.plugins.elasticsearch.getCluster('admin);
const dataCluster = server.plugins.elasticsearch.getCluster('data);
//ping as the configured elasticsearch.user in kibana.yml
adminCluster.callWithInternalUser('ping');
//ping as the user specified in the current requests header
adminCluster.callWithRequest(req, 'ping');
浏览器客户端
edit浏览器客户端通过 AngularJS 服务暴露。
uiModules.get('kibana')
.run(function (esAdmin, es) {
es.ping()
.then(() => esAdmin.ping())
.catch(err => {
console.log('error pinging servers');
});
});