Grafana包含對Prometheus的內置支持。react
添加數據源Grafana
- 單擊頂部標題中的Grafana圖標打開側邊菜單。
- 在
Dashboards
連接下的側邊菜單中,您應找到一個名爲的連接Data Sources
。 - 單擊
+ Add data source
頂部標題中的按鈕。 Prometheus
從「 類型」下拉列表中選擇。
注意:若是您沒有
Data Sources
在側邊菜單中看到該連接,則表示您當前的用戶沒有Admin
當前組織的角色。正則表達式
數據源選項
名稱 | 描述 |
---|---|
名稱 | 數據源名稱。這是您在面板和查詢中引用數據源的方式。 |
默認 | 默認數據源意味着它將爲新面板預先選擇。 |
網址 | 你的Prometheus服務器的http協議,ip和端口(默認端口一般是9090) |
訪問 | 服務器(默認)=須要從Grafana後端/服務器訪問URL,須要從瀏覽器訪問Browser = URL。 |
基本認證 | 啓用Prometheus數據源的基自己份驗證。 |
用戶 | 您的Prometheus用戶的名稱 |
密碼 | 數據庫用戶的密碼 |
刮傷間隔 | 這將用做Prometheus步驟查詢參數的下限。默認值爲15秒。 |
查詢編輯器
經過單擊標題>編輯(或在鼠標e
懸停在面板上時按鍵)打開編輯模式下的圖形。數據庫
名稱 | 描述 |
---|---|
查詢表達式 | Prometheus查詢表達式,查看Prometheus文檔。 |
圖例格式 | 使用名稱或模式控制時間系列的名稱。例如,{{hostname}} 將替換爲標籤的標籤值hostname 。 |
最小步驟 | 設置Prometheus步驟選項的下限。步驟控制Prometheus查詢引擎執行範圍查詢時跳轉的大小。遺憾的是,沒有正式的prometheus文檔連接到這個很是重要的選項。 |
解析度 | 控制步驟選項。小步驟能夠建立高分辨率圖形,但在較大的時間範圍內可能會很慢,下降分辨率能夠加快速度。1/2 將嘗試設置步驟選項,爲每一個其餘像素生成1個數據點。值1/10 將嘗試設置步驟選項,以便每10個像素有一個數據點。 |
指標查找 | 在此輸入字段中搜索度量標準名稱。 |
格式爲 | 在表格,時間序列或熱圖之間切換。表格格式僅適用於「表格」面板。熱圖格式適用於在熱圖面板上顯示具備直方圖類型的度量。在引擎蓋下,它將累積直方圖轉換爲常規,並按桶綁定排序系列。 |
注意:Grafana稍微修改查詢的請求日期,以使它們與動態計算的步驟對齊。這可確保度量數據的一致顯示,但可能會致使圖表右邊緣的數據間隙很小。後端
模板
您能夠在其位置使用變量,而不是在度量標準查詢中對服務器,應用程序和傳感器名稱等硬編碼進行硬編碼。變量顯示爲儀表板頂部的下拉選擇框。這些下拉菜單能夠輕鬆更改儀表板中顯示的數據。api
查看模板文檔,瞭解模板功能和不一樣類型的模板變量。瀏覽器
查詢變量
Query類型的變量容許您查詢Prometheus以獲取度量標準,標籤或標籤值的列表。Prometheus數據源插件提供了可在Query
輸入字段中使用的如下功能。服務器
名稱 | 描述 |
---|---|
label _ names() | 返回標籤名稱列表。 |
label _ values(label) | 返回label 每一個指標中的標籤值列表。 |
label _ values(metric,label) | 返回label 指定度量標準中的標籤值列表。 |
度量(公制) | 返回與指定metric 正則表達式匹配的度量標準列表。 |
查詢 _ 結果(查詢) | 返回一個Prometheus查詢結果列表query 。 |
有關度量標準名稱,標籤名稱和標籤值的詳細信息,請參閱Prometheus文檔。app
使用區間和範圍變量
支持
$__range
,$__range_s
而且$__range_ms
只能從Grafana V5.3編輯器
能夠在查詢變量中使用一些全局內置變量; $__interval
,$__interval_ms
,$__range
,$__range_s
和$__range_ms
,看到全球內置變量以獲取更多信息。query_result
當您須要過濾變量查詢時,這些能夠方便地與函數一塊兒使用,由於label_values
函數不支持查詢。函數
確保將變量的refresh
觸發器設置爲On Time Range Change
在更改儀表板上的時間範圍時獲取正確的實例。
用法示例:
根據儀表板中顯示的時間範圍內的平均QPS,使用最繁忙的5個請求實例填充變量:
Query: query_result(topk(5, sum(rate(http_requests_total[$__range])) by (instance))) Regex: /"([^"]+)"/
在儀表板中顯示的時間範圍內使用具備特定狀態的實例填充變量,使用更精確的$__range_s
:
Query: query_result(max_over_time(<metric>[${__range_s}s]) != <state>) Regex:
在查詢中使用變量
有兩種語法:
$<varname>
示例:rate(http_requests_total {job =〜「\ $ job」} [5m])[[varname]]
示例:rate(http_requests_total {job =〜「[[job]]」} [5m])
爲何兩種方式?第一種語法更易於讀寫,但不容許您在單詞的中間使用變量。啓用「 多值」或「 包含全部值」選項後,Grafana會將標籤從純文本轉換爲正則表達式兼容字符串。這意味着你必須使用=~
而不是=
。
註釋
註釋容許您在圖表上疊加豐富的事件信息。您能夠經過儀表板菜單/註釋視圖添加註釋查詢。
Prometheus支持兩種查詢註釋的方法。
- 常規度量標準查詢
- 針對掛起和觸發警報的Prometheus查詢(有關詳細信息,請參閱在運行時檢查警報)
步驟選項可用於限制從查詢返回的事件數。
將Grafana指標歸入普羅米修斯
從4.6.0開始,Grafana在/metrics
端點上公開了Prometheus的指標。咱們還在Grafana中捆綁了一個儀表板,以便您能夠更快地開始查看指標。您能夠經過轉到數據源編輯頁面並單擊儀表板選項卡來導入捆綁的儀表板。在那裏你能夠找到一個Grafana儀表板和一個Prometheus儀表板。導入並開始查看全部指標!
使用Provisioning配置數據源
如今可使用Grafana的配置系統使用配置文件配置數據源。您能夠在配置文檔頁面上閱讀有關其工做原理以及能夠爲數據源設置的全部設置的更多信息
如下是此數據源的一些配置示例。
apiVersion: 1 datasources: - name: Prometheus type: prometheus access: proxy url: http://localhost:9090