新增自訂計量

適用於: IoT Edge 1.5 核取記號 IoT Edge 1.5 IoT Edge 1.4 核取記號 IoT Edge 1.4

重要

IoT Edge 1.5 LTS 和 IoT Edge 1.4 LTS 為支援的版本。 IoT Edge 1.4 LTS 於 2024 年 11 月 12 日結束生命週期。 如果您是舊版,請參閱更新 IoT Edge

除了系統模組提供的內建計量之外,還會從您的 IoT Edge 模組收集自訂計量。 內建計量可為您的部署健康情況提供絕佳的基準可見度。 不過,您可能需要自訂模組中的其他資訊才能完成圖片。 您可以使用適當的 Prometheus 用戶端程式庫來發出計量,將自訂模組整合至您的監視解決方案。 此額外資訊可以啟用針對您需求特製化的新檢視或警示。

範例模組存放庫

如需檢測以發出計量的自訂模組範例,請參閱 azure-samples 存放庫。 即使您選擇的語言尚未提供範例,一般方法仍可協助您。

命名規範

如需一般指引,請參閱來自 Prometheus 文件的最佳做法。 下列其他建議有助於 IoT Edge 案例。

  • 在計量名稱開頭包含模組名稱,以清楚指出哪個模組已發出計量。

  • 在每個計量中包含 IoT 中樞名稱或 IoT Central 應用程式名稱、IoT Edge 裝置識別碼,以及模組識別碼作為標籤 (也稱為標籤/維度)。 此資訊可作為 IoT Edge 代理程式所啟動的每個模組的環境變數。 方法是由範例存放庫中的範例加以示範。 若沒有此內容,就無法將指定的計量值與特定裝置建立關聯。

  • 在標籤中包含執行個體識別碼。 執行個體識別碼可以是任何唯一識別碼,例如在模組啟動期間產生的 GUID。 執行個體識別碼資訊可協助在後端處理模組的計量時協調模組重新啟動。

設定計量收集器以收集自訂計量

一旦自訂模組發出計量,下一個步驟就是設定計量收集器模組,來收集和傳輸自訂計量。

環境變數 MetricsEndpointsCSV 必須更新,才能包含自訂模組計量端點的 URL。 更新環境變數時,請務必包含系統模組端點,如計量收集器設定範例所示。

注意

根據預設,自訂模組的計量端點不需要對應至主機連接埠,以允許計量收集器存取此端點。 除非在 Linux 上明確覆寫,否則這兩個模組都會在名為 azure-iot-edge使用者定義 Docker 橋接器網路上啟動。

使用者定義的 Docker 網路包含預設 DNS 解析程式,允許使用模組 (容器) 名稱進行模組間通訊。 例如,如果名為 module1 的自訂模組在路徑 /metrics 的 HTTP 連接埠 9600 上發出計量,則收集器應該設定為從端點 http://module1:9600/metrics 收集。

在 IoT Edge裝置上執行下列命令,以測試在路徑 /metrics 的 HTTP 連接埠 9600 上自訂模組發出的計量是否可供存取:

sudo docker exec replace-with-metrics-collector-module-name curl http://replace-with-custom-module-name:9600/metrics

新增自訂視覺效果

一旦您是在 Log Analytics 中接收自訂計量,就可以建立自訂視覺效果和警示。 監視活頁簿可以擴增,以新增查詢支援的視覺效果。

每個計量都會與 IoT 中樞或 IoT Central 應用程式的資源識別碼相關聯。 這就是為什麼您可以從相關聯 IoT 中樞或 IoT Central 應用程式的 [記錄] 頁面,檢查是否已正確地擷取自訂計量,而不是從支援 Log Analytics 工作區進行此檢查。 使用此基本 KQL 查詢來驗證:

InsightsMetrics
| where Name == 'replace-with-custom-metric-name'

一旦確認了擷取,您就可以建立新的活頁簿或擴增現有的活頁簿。 使用活頁簿文件和查詢 (來自策展的 IoT Edge 活頁簿) 作為指南。

滿意結果時,您可以與小組共用活頁簿,或以程式設計方式部署活頁簿作為組織資源部署的一部分。

下一步

使用策展的活頁簿探索其他計量視覺效果選項。