取樣器轉送 Inspect 將診斷資料傳送至 Cobalt 遙測系統。
如果元件已透過檢查功能檢測,你可以使用 Cobalt 遙測功能 只有設定檔變更就好!如果希望 執行機群監控作業的低複雜度進入機群 (無新 FIDL 整合服務,沒有新資料) 不必隨心所欲控制複雜的流程),不妨使用取樣器!
享有的福利
取樣器提供簡化的方式,讓您進行機群監控 每個元件的偵錯工具包
集中化資料模型
許多開發人員認為必須維護兩個獨立的資料模型 一種處理裝置端或當機報告偵錯等等 像是機群監控
使用取樣器,單一診斷資料模型 (檢查) 可做為來源 。
避免複雜的直接整合工作
對某些元件 (例如驅動程式) 來說,工作負載非常重要, 「抓準時機」是執行非基本工作,例如診斷 製作報表可能並不容易我們將取樣集中到取樣器 對執行中的程式 非尖峰使用者的負載即使是未提供 系統關鍵服務,與 Sampler 整合,讓 Fuchsia 更健康 以做出更明智的取樣排程
與 Cobalt 直接整合時,元件作者必須考量使用流程 做為用戶端,藉此將要求傳送至裝置端轉寄站。流量 控制項隱含在取樣器中,因此您可以專注於上傳 指標類型,且不新增服務依附元件。
開始使用
- 如果是 V2 元件,請務必公開
diagnostics
導入診斷平台。 - 登錄 Cobalt 指標 決定要將檢查指標轉換為
- 建立 Sampler 設定,以定義從檢查到的轉換 Cobalt,查看現有的設定檔。
取樣器設定
我們會使用 FVM 整合做為設定範例。
{
"project_id": 3676913920,
"poll_rate_sec": 3600,
"metrics": [
{
"selector": "bootstrap/driver_manager:root/fvm/partitions/blobfs:total_slices_reserved",
"metric_id": 3000,
"metric_type": "Integer",
"event_codes": [0]
},
{
"selector": "bootstrap/driver_manager:root/fvm/partitions/minfs:total_slices_reserved",
"metric_id": 3000,
"metric_type": "Integer",
"event_codes": [1]
}
]
}
取樣器設定會指定頂層專案 ID,而該專案會指定 取樣器代抽樣及轉送的 Cobalt 用戶端。 它也會指定頂層 Pol_rate_seconds,不過在取樣器 v1.1 中, 並代表客戶將輪詢率遷移至個別指標設定。
接下來,設定需要指標轉換清單。在以下 用戶端會提供一個選取器,以找出相關 檢查指標,以及轉寄檢查所需的 Cobalt 中繼資料 。
metric_type
是要求的指標轉換類型。- 如果 Cobalt 指標的類型採用「OCCURRENCE」 數值匯總,請使用 metric_type 以記錄方式。
- 如果 Cobalt 指標類型為 INTEGER 追蹤原始數據 整數 (例如 cpu_load、thermal_temp),請使用 metric_type Integer。
- 如果 Cobalt 指標類型為 INTEGER_HISTOGRAM,請使用 metric_type。 IntHistogram。
- 如果 Cobalt 指標屬於 STRING 類型,請使用 metric_type。 字串。
metric_id
與你在 Cobalt 中登錄指標時使用的 ID 相同 YAML 檔案event_codes
是您在 註冊 Cobalt 指標在 FVM 的案例中,每項指標都含有 對應的分區類型維度值。
注意:取樣器設定中的維度值順序必須 與在 YAML 檔案中宣告維度的順序一致 定義