Grafana整体二次开发
一、环境准备
1、安装windows的wsl
wsl --install -d Ubuntu
ljc 123456
sudo apt update && sudo apt upgrade
win + R 输入:\wsl$ 显示ubuntu 系统文件夹并添加到网络中
2、ubuntu 中安装go
2.1 check version
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.1 LTS
Release: 18.04
Codename: bionic
2.2、更新和安装golang
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install golang-go
注意:系统安装的go语言版本低 手动下载最新版本
wget https://dl.google.com/go/go1.17.2.linux-amd64.tar.gz --no-check-certificate
$ sudo tar -xvf go1.17.2.linux-amd64.tar.gz
sudo mv go /usr/local
2.3 配置环境变量
sudo nano ~/.bashrc
# Go Global variables
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$GOPATH/bin:$GOROOT/bin:$PATH
ctrl + x 选择Y 保存
source ~/.bashrc
go version
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
sudo apt install gcc
3、ubuntu 中安装前端环境
3.1 安装nvm控制node版本
sudo curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
cd 退出到根目录
source ~/.bashrc
nvm install 14.18.0
nvm use 14
4、安装yarn
npm install -g yarn
5、下载grafana
git clone https://github.com/grafana/grafana.git
6、运行grafana
6.1 前端(网速问题可能会慢)
链接手机热点开启vpn更新不然下载太慢
yarn install --inline-builds
yarn start
6.2 后端编译
sudo apt-get install make
make run
7、下载插件源码
7.1在插件目录中用下列命令创建插件模板
npx @grafana/toolkit plugin:create my-plugin
7.2 更改目录
cd my-plugin
7.3 下载必要的依赖
yarn install
7.4 在my-plugins 文件夹中创建 .eslintrc 文件并输入内容
mkdir .eslintrc
{
"extends": ["@grafana/eslint-config"],
"root": true
}
7.5 构建插件
yarn dev
1.1 安装go语言
下载go windows安装包: go1.15.5 windows/amd64
配置国内代理,打开powershell执行如下命令
go下载地址
go env -w GOPROXY=https://goproxy.cn,direct
验证go 语言
$ go version
go version go1.15.5 windows/amd64
$ go env GOPROXY
https://goproxy.cn,direct
1.2 安装node,npm
下载node安装包
安装node
配置国内源
npm config set registry http://registry.npm.taobao.org
npm config get registry
1.3 安装前端yarn
注意:如果与hadoop的yarn存在命令冲突记得
where yarn 找到路径修改 yarn.cmd --> yarn-js.cmd
npm install -g yarn
yarn config set registry 'https://registry.npm.taobao.org'
yarn config get registry
1.4 安装gcc
百度网盘中有gcc安装包下载下来
tdm64-gcc-9.2.0.exe,点击下一步下一步安装
1.5 给gcc添加make支持
到 https://sourceforge.net/projects/ezwinports/files/ 去下载
make-4.3-without-guile-w32-bin.zip 这个文件。
把该文件进行解压
把解压出来的文件全部拷贝的git的安装目录下: . \Program Files\Git\mingw64\ ,把文件夹进行合并,如果跳出来需要替换的文件要选择不替换
这样在git bash窗口下就可以执行make了(编译的时候编译器还是需要另外安装的)
二、下载源码
到github中下载grafana源码
然后必须将代码放到:$GOPATH/src/github.com/grafana/grafana
调试
1.1前端
npm install -g node-gyp
# 打开gitbash命令行,运行前端
yarn install --pure-lockfile
# 打包
yarn start
编译完成后,在public文件夹会看到多了个build文件夹
# 新开一个gitbash命令行,运行后端
#make run
1.2 后端
go run build.go setup
go run build.go build
编译完成后,会看到多了个bin文件夹