Fuchsia 上的診斷和觀測能力

Fuchsia 提供各種系統,可用於觀察執行中的 Fuchsia 系統。每個可觀察性系統都會提供不同的資訊和權衡。可觀察性系統如下:

記錄

記錄在診斷作業中扮演重要角色,因為它們會描述 Fuchsia 系統中發生的事件,並以人類可讀的方式呈現。在 Fuchsia 中,元件 透過 fuchsia.logger.LogSink 錄製記錄訊息 因此效能相當卓越sdk/lib/syslog/cppsrc/lib/diagnostics/log/rust 是 支援程式庫。這些程式庫提供編碼器實作,可用於標記、結構化鍵/值組合、中繼資料、訊息和 fuchsia.logger.LogSink 整合。如要進一步瞭解 Fuchsia 元件如何寫入記錄,請參閱「記錄記錄」。

如果您想執行下列操作,建議您使用記錄功能:

  • 查看使用者可理解的低頻率訊息和活動。
  • 在快照和其他 Fuchsia 工具中查看資料。

追蹤

Fuchsia 的追蹤系統提供全面性方法,可從 Fuchsia 使用者空間程序和 Zircon 核心收集、匯總及視覺化診斷追蹤資訊。追蹤記錄和記錄一樣,也代表 Fuchsia 系統的事件,但追蹤記錄更精細、頻率更高,且可供機器使用,用於計算其他深入分析和視覺化資料。結合結構化記錄與追蹤功能,可助您一臂之力 更有效率地診斷各種 Fuchsia 目標裝置,並進行偵錯和疑難排解。

如果您「不需要」查看即時資料,建議您使用追蹤功能 而且希望能夠:

  • 收集精細的結構化資料,精確到小於 1 微秒。
  • 在互動式檢視器中以視覺化方式呈現資料。
  • 在 SQL 中查詢及匯總資料。

檢查

Fuchsia 提供檢查功能,可讓 Fuchsia 元件 各項資訊的結構化診斷資訊接著,您可以使用 ffx inspect 工具查詢這項診斷資訊。詳情請參閱「Fuchsia 元件檢查」和 ffx inspect

如果您想執行下列操作,不妨考慮使用檢查工具:

  • 監控特定時間點的元件狀態。
  • 代表元件目前狀態和近期歷來歷史的相關資訊。
  • 針對元件狀態的低頻率快照收集資料,以便啟用 機群層級指標
  • 在快照和工具中查看「檢查資料」。
  • 建立圖表、分析,並根據快照建立自動異常偵測功能。

鈷豔藍

Cobalt 是一種管道,可從使用者擁有的裝置收集指標資料,並產生匯總報表。

Cobalt 包含一系列保護使用者隱私和匿名資料的功能 同時為產品所有人提供改善產品所需的資料

使用 Cobalt 時,建議您使用 Inspect 對元件進行檢測。如果元件已使用 Inspect 進行檢測,Sampler 會將 Inspect 診斷資料轉送至 Cobalt 遙測系統,以便監控車隊。

如要進一步瞭解 Cobalt,請參閱「Cobalt:內建隱私權保護機制的遙測資料」。

快照

Fuchsia 裝置能夠擷取含有資訊的快照 瞭解整個系統目前的狀態這包括系統上執行的 Fuchsia 版本、核心和系統記錄,以及系統及其元件的檢查資料。您也可以使用 ffx target snapshot 工具擷取快照。

偵測

此外,Fuchsia 裝置會執行 Detect,可根據定期擷取一組元件檢查資料的快照,並檢查各種條件,如果為真,就會觸發停止運作或提供意見回饋的報告。

使用診斷和觀測功能

使用 Fuchsia 記錄、檢查和追蹤功能來診斷問題時,您可能會想使用下列部分工具:

  • ffx log,從 Fuchsia 裝置擷取記錄。
  • ffx target snapshot 可擷取 Fuchsia 目標裝置的狀態快照。
  • ffx triage 可分析記錄,並檢查 Fuchsia 快照中的元件。
  • ffx inspect 可透過以下方式查詢元件公開的資料 檢查 API
  • ffx trace:用於收集、匯總並以視覺化方式呈現診斷結果 追蹤資訊
  • zxdb 對在 Fuchsia 上執行的程式碼進行偵錯。zxdb 是 在 Fuchsia 上執行的程式碼使用主控台模式偵錯工具。

您可能也想要:

您也可以按照診斷程式碼研究室操作:

您也可以按照追蹤教學課程和指南操作: