新增自訂計量
適用於: IoT Edge 1.5 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 活頁簿的活頁簿文件和查詢作為指南。
滿意結果時,您可以 與小組共用活頁簿 ,或 以程序設計方式 部署這些活頁簿,作為組織資源部署的一部分。
下一步
使用 策劃的活頁簿探索其他計量視覺效果選項。