天天看點

安裝可以檢視PMM 源碼的Go環境

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 還需要添加以下幾個應用。

安裝可以檢視PMM 源碼的Go環境
安裝可以檢視PMM 源碼的Go環境

 此時就可以檢視代碼了。

 3.補充說明

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

安裝可以檢視PMM 源碼的Go環境

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

安裝可以檢視PMM 源碼的Go環境

那麼怎麼才能,看到這個檔案中的代碼呢?

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

安裝可以檢視PMM 源碼的Go環境

解決方案。

我們先看看go的用法

安裝可以檢視PMM 源碼的Go環境

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

 是以:

step 1 : 執行 下載下傳指令

go get github.com/prometheus/client_golang/prometheus      

如圖

安裝可以檢視PMM 源碼的Go環境

 step 2 檢視預設下載下傳的路徑 

go env GOPATH      

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

安裝可以檢視PMM 源碼的Go環境

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

安裝可以檢視PMM 源碼的Go環境

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

安裝可以檢視PMM 源碼的Go環境

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

安裝可以檢視PMM 源碼的Go環境

繼續閱讀