背景讲述:
首先说明一个问题,想要开发kibana的插件就必须在kibana的开发环境下开发
以前(kibana6.3.0版本以前)都是用template-kibana-plugin
也就是sao
来生成开发插件的模板的。需要自己去下载npm install -g sao
然后再跑起来。还是想用这个方法的可以浏览这些文章:
1. kibana-plugin-development-tutorial——kibana5版本的插件开发教程
2. template-kibana-plugin文档——sao使用文档
但是呢,到了kibana6.3版本之后,你就可以用kibana自带的插件模板生成器(Kibana Plugin Generator
)去生成模板
下面主要就是讲述kibana6.3.0开发环境的搭建,以及Kibana Plugin Generator
这个东西的使用。
一、开发环境搭建
step1: 把kibana的git项目克隆下来,地址:https://github.com/elastic/kibana
git clone https://github.com/[YOUR_USERNAME]/kibana.git kibana
cd kibana
(我电脑clone下来有点慢,直接下载回来解压也行)
step2:
安装.node-version
这个文件里面提到的node的版本。(kibana6.3.0用的node好像是8.11.3版本)
(官方教程提到下什么nvm什么的不用管,nvm只是用来方便切换node版本的而已)
step3:
安装最新版的yarn
,下载地址:https://github.com/yarnpkg/yarn/releases
下个压缩包版本的,下载回来之后直接解压,然后把路径填进环境变量。在cmd下,输入yarn -v
发现它报出版本信息就算安装成功了。
建议下载yarn1.6的版本,因为yarn1.7 在下一步操作里会报错
step4:
在kibana
目录下运行命令yarn kbn bootstrap
,这个是安装所有的依赖包(类似npm install
)
如果出现以下情形则说明安装成功:
step5:
请特别注意下面这一步
官方教程在这里教我们去运行yarn es snapshot
命令去启动elasticsearch
,如果你可以自己启动elasticsearch
就可以执行node scripts/makelogs
命令把elasticsearch
与开发环境连接起来
其实完全没必要,因为我就是因为执行了这一步,导致我报错报了一天
真正的做法是,自己启动elasticsearch
,然后git bash
运行用yarn start
命令
这个时候打开 http://localhost:5601有东西就说明启动成功了。
二、Kibana Plugin Generator
使用
根据上面步骤配置好环境之后, Kibana Plugin Generator
的使用就很简单了
还是在kibana
目录下运行node scripts/generate_plugin my_plugin_name
命令。
程序会生成一个插件模板my_plugin_name
在../kibana-extra/my_plugin_name
这个目录下
这时候你进入../kibana-extra/my_plugin_name
这个目录下,运行yarn start
就可以了
Kibana Plugin Generator文档:咻!传送门~
三、各种报错
启动
yarn start
之后在页面看到下面这个报错,这是说明es的版本不匹配。下载安装一个就好了,再执行一下bin/elasticsearch.bat,下载地址:https://snapshots.elastic.co/downloads/elasticsearch/elasticsearch-7.0.0-alpha1-SNAPSHOT.zipThis version of Kibana requires Elasticsearch v7.0.0-alpha1 on all nodes.
出现下面这种情况,可以尝试切换到yarn1.6的版本
Couldn’t find package “debug@^2.1.2” required by “needle@^2.2.1” on the ” npm” registry…
请务必用
git bash
运行用yarn start
命令
还有其他问题欢迎评论,一起研究
本人最近在开发kibana插件,包括但不限于:汉化kibana,二次开发kibana,有意一起研究的小伙伴可以加我QQ:820327571(备注kibana)