新增自訂計量

適用於: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 範例存放庫。 即使您選擇的語言尚未提供範例,一般方法仍可協助您。

命名規範

如需一般指引,請參閱 Prometheus 檔中的最佳做法。 下列其他建議對IoT Edge案例很有説明。

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

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

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

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

一旦自定義模組發出計量,下一個步驟是 設定 metrics-collector 模組 來收集及傳輸自定義計量。

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

注意

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

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

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

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 活頁簿的活頁簿文件和查詢作為指南。

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

下一步

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