本文介紹如何使用Grafana訪問Log Service的Elasticsearch相容介面。
本文檔為阿里雲原創文檔,智慧財產權歸阿里雲所有,由於本文檔旨在介紹阿里雲與第三方產品互動的服務能力,因此可能會提及第三方公司或產品等名稱。
前提條件
ES對接支援Grafana 8.x 9.x 10.x 11.x版本。本文以Grafana 11.4.0為例進行說明。
已建立Project、標準型Logstore並完成日誌採集配置。具體操作,請參見管理Project、建立基礎LogStore和資料擷取概述。
查詢日誌前,已配置索引。具體操作,請參見建立索引。
已建立RAM使用者的AccessKey,並且為RAM使用者授予Logstore的查詢許可權。具體操作,請參見RAM授權。
背景資訊
Grafana是一款開源的資料視覺效果和監控平台,支援多種資料來源,包括但不限於Graphite、InfluxDB、Prometheus、Elasticsearch等,並提供豐富的圖表展示和資料查詢功能。
針對習慣於使用Grafana分析Elasticsearch資料,但需要將Elasticsearch資料移轉到Log Service的使用者,Log Service提供了相容Elasticsearch的介面,便於他們使用Grafana的Elasticsearch資料來源外掛程式訪問Log Service進行查詢和分析。
另外,Log Service也提供了原生的Grafana資料來源外掛程式。更多資訊,請參見對接Grafana。兩種外掛程式的區別如下表所示。
對比項 | Grafana+Elasticsearch相容介面 | Grafana+SLS原生外掛程式 |
使用的Grafana資料來源外掛程式 | Elasticsearch資料來源外掛程式(Grafana預設包含) | SLS資料來源外掛程式(需要手動安裝) |
查詢文法 | Elasticsearch DSL文法 | SLS索引查詢文法、SQL分析文法 |
配置資料來源
登入Grafana控制台。
在左側導覽列,選擇 。
在Add new connection頁簽,找到並單擊Elasticsearch。

然後再開啟的Elasticsearch詳情頁中,單擊Add new data source。

在Settings頁簽中,完成如下配置,然後單擊Save&test測試連通性。如顯示Data source successfully connected,表示配置正確。如果報錯,請參見常見問題和錯誤排查。

重要參數配置說明如下表所示,其他參數可使用預設配置。
配置地區
參數名稱
說明
Connection
URL
資料訪問地址,格式為
https://${project}.${sls-endpoint}/es/。其中${project}為Project名稱,${sls-endpoint}為Log ServiceProject的訪問網域名稱。更多資訊,請參見服務入口。例如:https://etl-guangzhou.cn-guangzhou.log.aliyuncs.com/es/。重要必須使用HTTPS協議。
Authentication methods
Basic authentication
選擇Basic authentication。
User
阿里雲帳號AccessKeyID。
建議使用RAM使用者的AccessKey,該RAM使用者需具備LogStore的資料查詢許可權。您可以通過許可權助手,配置許可權。具體操作,請參見配置許可權助手。AccessKey的擷取方法,請參見存取金鑰。
Password
阿里雲帳號AccessKeySecret。
建議使用RAM使用者的AccessKey,該RAM使用者需具備LogStore的資料查詢許可權。您可以通過許可權助手,配置許可權。具體操作,請參見配置許可權助手。AccessKey的擷取方法,請參見存取金鑰。
Elasticsearch details
Index name
Elasticsearch的索引模式名稱。該名稱的命名規則為
${Log ServiceProject名稱}.${Logstore名稱}。例如Project名稱為etl-guangzhou ,LogStore名稱為es_test22,那麼此處的名稱為etl-guangzhou.es_test22。
配置圖表示例
建立資料來源後,Grafana將可以訪問儲存在Log Service中的資料。通過ES的外掛程式對接SLS的ES相容介面,可以很方便地做圖表可視化,而無需寫SQL。下面以Nginx訪問日誌為例介紹具體配置樣本。
整體QPS曲線
在Lucene Query框中可以填寫過濾條件,文法是ES Lucene的文法。
統計status為200的曲線
在Lucene Query框中輸入status: 200即可查詢滿足這個條件的曲線。
統計Top請求的URI
Group By選擇Terms,並選擇request_uri欄位。
統計RT分位元
Metric選擇 Percentiles,並選擇upstream_response_time欄位, 在Values中可以選擇具體的分位元值,比如50,95,99。
按Top請求URI查看RT分位元
Metric選擇 Percentiles,並選擇upstream_response_time欄位,Values設定為99。Group By選擇Terms,並選擇request_uri欄位。

查看非200的Top請求URI
在Lucene Query框中輸入NOt status: 200,Group By選擇Terms,並選擇request_uri欄位。

查看非200的Top請求URI以及對應的Method
在Lucene Query框中輸入NOT status: 200,Group By選擇Terms,並選擇request_uri欄位。並增加request_method的Group By。
