Grafana 利用Grafana Variables變量配置快速切換不同主機的圖表數據展示


用Grafana Variables變量配置快速切換不同主機的圖表數據展示

 

by:授客 QQ:1033553122

 

測試環境 

需求描述 

操作步驟 

結果展示 

 

測試環境

influxdb-1.5.2.x86_64.rpm

網盤下載地址:

https://pan.baidu.com/s/1jAbY4xz5gvzoXxLHesQ-PA

 

 

grafana-5.1.2-1.x86_64.rpm

下載地址:

https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-5.1.3-1.x86_64.rpm

下載地址:https://pan.baidu.com/s/1wtnPH-iYxaXc6FnL1i0ZVg

 

 

需求描述

在一個Dashboard中新建了多個pannel,用於監控目標主機性能,因為需要監控的機器比較多,所以,希望用這一套pannel能方便的展示不同主機的性能--根據用戶選擇的目標機器,自動展示對應的性能數據。

 

此外,還希望這些pannel在展示數據時,能根據用戶所選的tag進行展示。

 

另外,還希望在某個pannel上展示1到多個measurement的數據,比如想同時查看看單個、多個磁盤的%util的性能數據

 

操作步驟

1、新建Dashboard及pannel

 

 

2、進入步驟1新建的 Dashboard頁面,點擊Settings->Variables->Add variable

 

 

 

點擊后打開如下界面

 

 

 

3、新建Datasource變量

說明:例中每台主機的性能數據單獨存儲在一個Datasource數據源中,所以需要新建這樣一個數據源變量。

 

 

 

 

如圖,

General中   填寫 Name, Type選擇 Datasource,

Data source options   Type選擇InfluxDB

其它,設置項保持默認。

 

說明:

Name 變量名稱,要求變量名唯一,且不包含空白字符。

Label 變量在下拉列表中中的名稱(The name of the dropdown for this variable。

Hide 隱藏該變量的下拉選擇框,即在Dashboard中不展示。

Type 定義變量類型。

 

 

4、新建Query變量

說明:tag值需要通過查詢得到,所以要新建Query變量。

 

 

 

如圖,

General中   填寫 Name, Type選擇 Query,

Data source options   Data source選擇剛新建的變量 $dataSource,以保持變量“聯動”,Refresh 設置為On Time Range Change。填寫Query表達式(表達式書寫規則因數據源不同而不同, 比如mysql,InfluxDB數據庫都用各自的查詢語法, InfluxDB為例,查詢tag值 SHOW TAG VALUES WITH KEY= ‘stuid’ (這里stuid為tag的key)。Sort選擇 Alphabetical(asc),按字母順序升序排序

 

存儲到數據源中的數據結構如下

json_body = [
    {
        "measurement": measurement,
        "tags": {
            "stuid": tag
        },
        "time": datetime_for_data,
        "fields":field_dic
    }
]

 

 

Selection Options 勾選Muiti-value,include All option以便變量下拉列表中可以進行多選,否則單選。

其它,設置項保持默認。

 

說明:

Data source    設置從哪個數據源中查詢。

Refresh 控制啥時候更新變量選擇列表(變量下拉列表中的值)。可選值 never(從不)、On Dashboard Load(Dashboard加載完成之前更新,這會減慢加載速度) 、On Time Range Change(如果變量選項包含一個時間范圍過濾,即和時間相關,或者依賴dashboard時間范圍選擇)

Query 因數據源不同而不同的特定查詢表達式

Regex 正則表達式,用於過濾Query返回的數據(可能我們只需要Query返回中的部分數據,可選。

Sort 定義下拉選項的順序,設置為Diasble則表示保持按查詢返回的數據排序。

 

Multi-value  如果勾選,即開啟,則變量下拉列表指出多選

Include All option   添加一個 All 選項,該選項表示包含所有變量值

Custom all value  如上,默認添加的ALL選項會包含同查詢表達式綁定的所有值,這些值可能會有很多,這會帶來性能問題,這種情況下,我們可以指定一個自定義all值,比如一個通配符正則表達式(globs 或 lucene 語法的表達式),以減少all所包含的數據量,如果發現設置了不起作用,那么要考慮正則表達式是否正確了。

 

 

新建供磁盤使用的measurement Query變量

 

 

 

 

5、編輯pannel,引用變量

 

 

 

 

結果展示

 

 

 

參考鏈接:

http://docs.grafana.org/reference/templating/

http://docs.grafana.org/features/datasources/influxdb/

 

附:

來自網絡的一個演示demo:

http://47.96.36.117:3000/dashboard/db/nginxfang-wen-tong-ji?spm=a2c4g.11186623.2.78.546e6e15HziVlc&orgId=1


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM