全部產品
Search
文件中心

Application Real-Time Monitoring Service:使用Grafana訪問ARMS的Tempo相容介面

更新時間:May 01, 2025

本文介紹如何使用Grafana訪問 ARMS 的 Grafana Tempo 相容介面。

前提條件

  • Tempo 對接支援 Grafana 9.x、10.x、11.x 版本,其中 10.3.0 及以上版本支援 Tempo V2 介面,10.3.0 以下版本只支援 V1 介面。本文以 Grafana 11.5.2 為例進行說明。

  • 已接入ARMS可觀測鏈路 OpenTelemetry 版

  • 已建立RAM使用者的AccessKey,並且為RAM使用者授予Logstore的查詢許可權。具體操作,請參見RAM授權

背景資訊

Grafana是一款開源的資料視覺效果和監控平台,支援多種資料來源,包括但不限於 Tempo、Graphite、InfluxDB、Prometheus、Elasticsearch等,並提供豐富的圖表展示和資料查詢功能。

針對習慣使用 Grafana 分析 Trace 資料的使用者,ARMS 提供了相容 Tempo 的介面,便於他們使用 Grafana 的 Tempo 資料來源外掛程式訪問Log Service進行查詢和分析。

配置資料來源

  1. 登入Grafana控制台。

  2. 在左側導覽列,選擇Connections > Add new connection

  3. Add new connection頁簽,找到並單擊Tempo

    image.png

  4. 然後在開啟的Tempo詳情頁中,單擊Add new data source

    image.png

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

  6. Settings 頁簽中,完成如下配置(URL 和 HTTP Headers),然後單擊 Save&test 測試連通性。

    image.png

    image.png

    如顯示 Successfully connected to Tempo data source,表示配置正確。如果報錯,請參見常見問題和錯誤排查

    image.png

重要參數配置說明如下表所示,其他參數請使用預設配置。

配置地區

參數名稱

說明

Connection

URL

資料訪問地址,格式為 https://${sls-endpoint}/trace/tempo/。其中${sls-endpoint}為 Trace 資料所屬地區對應的Log Service訪問網域名稱。更多資訊,請參見服務入口。例如 https://cn-hangzhou.log.aliyuncs.com/trace/tempo/

HTTP headers

username

阿里雲帳號AccessKeyID。

建議使用RAM使用者的AccessKey,該RAM使用者需具備Log Service Logstore的資料查詢許可權。您可以通過許可權助手,配置許可權。具體操作,請參見配置許可權助手。AccessKey的擷取方法,請參見存取金鑰

password

阿里雲帳號AccessKeySecret。

建議使用RAM使用者的AccessKeySecret,該RAM使用者需具備Logstore的資料查詢許可權。您可以通過許可權助手,配置許可權。具體操作,請參見配置許可權助手。AccessKey的擷取方法,請參見存取金鑰

userId

阿里雲主帳號 ID。

regionId

Trace 資料所在地區。

查看資料

建立資料來源後,Grafana 將可以訪問儲存在Log Service中的 ARMS 調用鏈資料。通過 Tempo 的外掛程式對接 ARMS 的 Tempo 相容介面,可以很方便地做圖表可視化。

在 Explore 頁面搜尋 Traces

訪問 Grafana 的 Explore 頁面,選擇已建立的 Tempo 資料來源,即可使用常見維度(例如應用程式名稱、Span 名稱、狀態、時間範圍、耗時、Span 屬性等)搜尋 Traces。單擊 Trace ID,使用 Explore trace 視圖快速診斷系統中的錯誤和高延遲事件。

image.png

在儀錶盤中自訂圖表

下圖展示了如何在儀錶盤中為某個應用建立錯誤 Trace 列表。選擇 Tempo 資料來源後,在搜尋方塊中下拉選擇過濾條件,Service Name 選擇關注的應用程式名稱、Status 選擇 error,然後單擊儲存。您也可以直接輸入 TraceQL 進行篩選:{resource.service.name="mall-gateway" && status=error}

image.png

圖表示例:

image.png