介紹
Variables變量提供了用戶(hù)和面板交互磅甩,并動(dòng)態(tài)刷新面板的功能姥卢。不需要硬編碼,不需要每次都修改SQL查詢(xún)語(yǔ)句僧叉。變量的下拉菜單顯示在面板的頂部棺榔,這樣改變下拉菜單的值,即可改變變量的值郎笆,而且所有使用該變量的儀表板都會(huì)隨著變量的改變而改變忘晤。
變量(Variables)的定義:
在dashboard的設(shè)置中定義的變量设塔,可以作為該dashboard的全局變量使用,如下圖所示
變量的表示符號(hào)IDC表示IDC這個(gè)變量钞护,使用的時(shí)候,直接使用$IDC就可以獲取IDC變量的值课梳。
新建變量:
點(diǎn)擊new按鈕,填充如下跨算,
Type為變量的類(lèi)型诸蚕,總共有六種類(lèi)型:Interval(時(shí)間間隔類(lèi))氧猬,Query(查詢(xún)類(lèi)),Datasource(數(shù)據(jù)源類(lèi)型)漠魏,Custom(自定義類(lèi))妄均,Constant(常量類(lèi)),Ad hoc filters(我也不知道啥玩意禁熏,未知類(lèi))
這里我選用了常用類(lèi)型:Query瞧毙,數(shù)據(jù)源為已經(jīng)設(shè)置的mysql數(shù)據(jù)源锌蓄,然后直接填入mysql查詢(xún)語(yǔ)句:
SELECT DISTINCT cluster FROM jdos_node_base WHERE idc = '$IDC'
注:取值即可您访。
Refresh變量刷新方式
Refresh是指變量的刷新方式剪决,總共三種: Never,On Dashboard Load,On Time Range Change.
Never : 從來(lái)不刷新
On Dashboard Load:面板加載的時(shí)候柑潦,刷新一次
On Time Range Change:跟隨面板刷新時(shí)間刷新該變量,面板的刷新設(shè)置在面板的右上角览露,如下
變量設(shè)置完成之后譬胎,下方會(huì)出現(xiàn)變量的值命锄。
點(diǎn)擊Add按鈕脐恩,設(shè)置完成侦讨。
返回面板,是這樣的骗污,
可以看到機(jī)房和集群已經(jīng)設(shè)置成功了怜俐。
變量的使用
添加儀表板拍鲤,進(jìn)入編輯儀表板汞扎,如下圖,
選擇數(shù)據(jù)源景鼠,輸入查詢(xún)語(yǔ)句:
SELECT
UNIX_TIMESTAMP(start_time) as time_sec,
cpu_max as value,
"cpu_max" as metric
FROM jdos_idc_info
WHERE $__timeFilter(start_time) AND cluster = "$Cluster"
ORDER BY start_time ASC
這里的Cluster就是之前在Variables設(shè)置的變量痹扇,還是使用$符號(hào)取值鲫构。
選擇不同的機(jī)房&集群就會(huì)自動(dòng)刷新面板的值,因?yàn)楦淖儥C(jī)房&集群结笨,變量的值也會(huì)同步改變炕吸。如下:
歡迎在下方評(píng)論交流赫模。