1. 程式人生 > >安裝可以查看PMM 源碼的Go環境

安裝可以查看PMM 源碼的Go環境

target server tps nsh 文檔 port 屬組 解決 分享圖片

1.基礎介紹

最近在搭建PMM數據庫監控系統,我們知道 Prometheus 是 PMM Server 的重要組件,*_exporter是PMM Client的主要組件。

歸屬組件 名稱 作用

Server組件

Prometheus 一個開源的服務監控系統和時間序列數據庫,它連接到PMM Client上的exporter聚集DB的監控數據。
Client組件 node_exporter Prometheus exporter用於搜集一般系統信息
mysqld_exporter Prometheus exporter用於搜集MySQL Server的信息
mongodb_exporter Prometheus exporter用於搜集MongoDB server的信息

為了更深入的學習和調整,有時候我們需要去看源代碼,主要是Go語言。

2.基礎環境安裝

以mongodb_exporter為例,我們安裝下基礎環境。

step 1 下載 mongodb_exporter

當我們按照地址(https://github.com/percona/mongodb_exporter)去下載 mongodb_exporter。

Step 2 安裝 VSCode,更容易閱讀、調試代碼。

Step 3 安裝 go 安裝包(https://golang.org/dl/,go1.12.windows-amd64.msi)。

step 4 為了更好的調試Go 代碼,VSCode 還需要添加以下幾個應用。

技術分享圖片

技術分享圖片

此時就可以查看代碼了。

3.補充說明

但是分析代碼時,看到部分代碼需要引用其他的GitHub,例如 mongodb_collector.go 文件中的import,

技術分享圖片

我們看到 github.com/prometheus/client_golang/prometheus 會被其他功能 調用的,如下

技術分享圖片

那麽怎麽才能,看到這個文件中的代碼呢?

如果,直接輸入網址,是獲取不到的 404 錯誤。

技術分享圖片

解決方案。

我們先看看go的用法

技術分享圖片

其中 go get 可以獲取 包或依賴

因此:

step 1 : 執行 下載命令

 go get github.com/prometheus/client_golang/prometheus

如圖

技術分享圖片

step 2 查看默認下載的路徑

go env GOPATH

如圖:顯示為 C:\Users\XXXX\go

技術分享圖片

step 3 登入路徑 C:\Users\XXXX\go,在路徑下的src文檔中 查找

技術分享圖片

step 4 在VSCode 工具中,通過open file的形式,就可以加載打開此文件

技術分享圖片

step 5 找到前面提到的方法定義( NewMongodbCollector 包含的prometheus.NewCounter的具體功能定義)

技術分享圖片

安裝可以查看PMM 源碼的Go環境