本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Connect 至石墨資料來源
Grafana 具有先進的 Graphite 查詢編輯器,可讓您快速瀏覽指標空間,添加函數,更改函數參數等等。編輯器可以處理所有類型的石墨查詢。它甚至可以通過使用查詢引用來處理複雜的嵌套查詢。
石墨設定
若要存取 Graphite 設定,請暫停 [設定] (齒輪) 圖示,然後選擇 [資料來源],然後選擇 Graphite 資料來源。
名稱 | 描述 |
---|---|
Name
|
資料來源名稱。這是您在面板和查詢中查看數據源的方式。 |
Default
|
預設資料來源表示將為新面板預先選取該資料來源。 |
URL
|
HTTP 協議,IP 和您的石墨-網絡或石墨-api 安裝端口。 |
Access
|
服務器(默認)= URL 必須從 Grafana 後端/服務器訪問。 |
Auth
|
|
Basic Auth
|
啟用資料來源的基本驗證。 |
User
|
基本驗證的使用者名稱。 |
Password
|
基本驗證的密碼。 |
Custom HTTP Headers
|
選擇 [新增標頭] 以新增自訂 HTTP 標頭。 |
Header
|
輸入自訂標頭名稱。 |
Value
|
輸入自訂標頭值。 |
Graphite details
|
|
Version
|
選擇您的石墨版本。 |
Type
|
選擇您的石墨類型。 |
存取模式可控制如何處理對資料來源的要求。如果沒有說明其他內容,則服務器應該是首選的方式。
伺服器存取模式 (預設值)
所有請求都是從瀏覽器發送到 Amazon Managed Grafana,這會將請求轉發到資料來源,避免可能的跨來源資源共用 (CORS) 要求。如果您選取此存取模式,則必須可從 Amazon 受管 Grafana 存取該 URL。
瀏覽器存取模式
Amazon 受管的 Grafana 不支援石墨資料來源的瀏覽器直接存取。
石墨查詢編輯器
Grafana 包含石墨特定的查詢編輯器,可協助您建立查詢。
若要查看傳送至 Graphite 的查詢原始文字,請選擇切換文字編輯模式 (鉛筆) 圖示。
選擇要查詢的量度
選擇選取測量結果以導覽測量結果空間。開始之後,您可以繼續使用指標或鍵盤方向鍵。您可以選取萬用字元,然後繼續。
函數
若要新增函數,請選擇「函數」旁邊的加號圖示。您可以搜尋功能或從功能表中選取該功能。選擇一個函數後,它將被添加,並且您的焦點將在第一個參數的文本框中。若要編輯或變更參數,請選擇該參數,該參數就會變成文字方塊。-若要刪除函數,請選擇函數名稱,然後選擇 x 圖示。
某些函數 (例如aliasByNode
) 支援選用的第二個引數。若要新增引數,請暫停第一個引數,然後選擇出現的+
符號。若要移除第二個可選參數,請選擇該參數並保持空白。編輯器將刪除它。
排序標籤
如果您想要一致的順序,請使用sortByName
. 當您在多個圖表上具有相同的標籤時,這可能會很煩人,並且它們都以不同的方式排序並使用不同的顏色。若要修正此問題,請使用sortByName()
.
嵌套查詢
您可以通過它們所在的行字母引用查詢(類似於 Microsoft Excel)。如果您將第二個查詢新增至圖表,您可以輸入 #A 來參照第一個查詢。這提供了建立複合查詢的便利方式。
使用萬用字元避免許多查詢
有時候,您可能想要在同一個圖表上看到繪製多個時間序列。例如,您可能想要查看電腦上如何使用 CPU。您可以先為每個時間序列新增查詢來建立圖形cpu.percent.user.g
,例如cpu.percent.system.g
、等等。這會導致對數據源進行 n 次查詢,這是效率低下的。
為了提高效率,可以在搜索中使用通配符,從而在一個查詢中返回所有時間序列。例如 cpu.percent.*.g
。
修改表格或圖表中的測量結果名稱
使用alias
函數變更 Grafana 表格或圖表上的度量名稱;例如,aliasByNode()
或。aliasSub()
積分合併
所有 Graphite 量度都經過整合,因此 Graphite 傳回的資料點不會超過圖表中像素的數量。默認情況下,這種合併是使用avg
函數完成的。您可以透過新增石墨合併依據功能來控制石墨合併指標的方式。
注意
這表示圖例摘要值 (最大值、最小值、總計) 不能全部同時正確。它們是由 Grafana 客戶端計算。根據您的合併功能,只有一個或兩個可以同時正確。
結合時間序列
若要合併時間序列,請在「函數」清單中選擇「結合」。
數據探索和標籤
在石墨中,一切都是一個標籤。
探索資料時,先前選取的標籤會用來篩選剩餘的結果集。若要選取資料,您可以使用seriesByTag
函數,該函數會使用標籤運算式 (=
!=
、=~
、、!=~
) 來篩選時間序列。
當您選取標籤時,Grafana 查詢建構器會自動為您執行此動作。
注意
提示:在高基數標籤上,正則表達式搜索可能會很慢,因此請嘗試使用其他標籤來減少範圍。從特定名稱或命名空間開始有助於減少結果。
模板變量
您可以在指標查詢中使用變量,而不是對服務器,應用程序和傳感器名稱等硬編碼內容。變數會顯示為儀表板頂端的下拉式選取方塊。您可以使用這些下拉式方塊來變更顯示在儀表板中的資料。
如需範本變數和範本變數的詳細資訊,請參閱〈〉模板和變量。
若要使用標籤值建立變數,請使用 Grafana 函tags
數和。tag_values
Query | 描述 |
---|---|
tags()
|
返回所有標籤。 |
tags(server=~backend\*)
|
僅返回與過濾器表達式匹配的序列中出現的標籤。 |
tag_values(server)
|
傳回指定標籤的標籤值。 |
tag_values(server, server=~backend\*)
|
傳回符合這些運算式的序列中,針對指定標籤所發生的篩選標籤值。 |
tag_values(server, server=~backend\*,
app=~${apps:regex})
|
多個篩選運算式和運算式可以包含其他變數。 |
有關更多詳細信息,請參閱有關標籤自動完成 API 的 Graphite 文檔
查詢變數
您在查詢欄位中指定的查詢應該是查詢的度量尋找類型。例如,如查詢prod.servers.*
會以萬用字元位置中的所有可能值填入變數。
您也可以建立在其定義中使用其他變數的巢狀變數。例如,$app
在其查詢定義中apps.$app.servers.*
使用變數。
用__searchFilter
來篩選查詢變數結果
__searchFilter
在查詢字段中使用將根據您在下拉選擇框中輸入的內容過濾查詢結果。當您不輸入任何內容時,預設值為 __searchFilter
is *
和 ``當做規則運算式的一部分使用時。
下面的例子演示了如何使用__searchFilter
作為查詢字段的一部分,以啟用搜索,server
而用戶在下拉列表選擇框中輸入文本。
Query
apps.$app.servers.$__searchFilter
TagValues
tag_values(server, server=~${__searchFilter:regex})
變數用法
您可以在度量節點路徑中使用變數,或做為函數的參數。
有兩種語法:
-
$<varname>
例如:應用程序。前端。 $ 服務器請求. -
${varname}
例如:應用程序。前端。 $ {服務器}。請求。
為什麼有兩種方式? 第一種語法更容易閱讀和寫入,但不允許您在單詞中間使用變量。在運算式中使用第二種語法,例如my.server${serverNumber}.count
。
標籤查詢中的變數用法
標籤查詢中的多值變數會針對變數使用 Grafana 5.0 中引入的進階格式化語法:。{var:regex}
非標籤查詢將使用多值變量的默認 glob 格式。
下列程式碼範例會示範具有 regex 格式的標籤運算式,並使用等於波狀符號=~
運算子。
server=~${servers:regex}
如需詳細資訊,請參閱 進階變數格式選項。
註釋
註釋使您可以在圖形頂部覆蓋豐富的事件信息。您可以透過「儀表板」功能表/「註釋」檢視來新增註釋 如需詳細資訊,請參閱 註釋。
石墨支援兩種查詢註釋的方式:
-
一般量度查詢。為此,您可以使用 [石墨] 查詢文字方塊。
-
石墨事件查詢。為此,您可以使用
Graphite event tags
文本框,並指定標籤或通配符(將其保持為空也應該工作)。