Metrics Client
搜尋附近嘅 Metrics Server,並即時睇到經藍牙 LE 傳送嘅裝置即時指標。
概覽
Metrics Client 會連接到另一部裝置上運行緊嘅 Metrics Server,並即時顯示伺服器嘅即時指標。佢會接收 CPU 使用率、每核心 CPU 活動、裝置身份(伺服器名稱、裝置型號、裝置名稱)同時間戳,全部都係經藍牙低功耗(Bluetooth Low Energy)串流傳送。
目錄
分頁
Metrics Client 有兩個分頁。你可以左右滑動切換,或者點擊分頁標題。
- 探測 — 掃描同連接附近伺服器。
- 指標 — 睇已連接伺服器嘅即時數據。
探測分頁
探測分頁係進入工具時嘅主畫面。佢會掃描附近嘅 Metrics Server 外圍裝置,並讓你連接其中一部。
探測狀態卡
狀態卡會顯示:
- 掃描指示 — 一個有顏色嘅圓點同標籤:
- 掃描中(藍色,有載入動畫)— 正在主動掃描外圍裝置。
- 閒置(灰色)— 掃描已暫停。
- 已發現伺服器 — 目前可見嘅 Metrics Server 外圍裝置數量。
- 重新整理按鈕 — 停止並重新開始 BLE 掃描,以搜尋新伺服器。
打開工具時會自動開始掃描。
可用伺服器清單
狀態卡下方會列出已發現嘅伺服器。只會顯示有廣播 Metrics Server BLE 服務 UUID 嘅外圍裝置,其他藍牙裝置會被過濾。
搵唔到伺服器時,會顯示疑難排解清單:
- 有裝置運行緊 Metrics Server 工具
- 已於設定授權本地網絡權限
- 兩部裝置同時連接同一網絡/處於 BLE 範圍內
消失咗嘅伺服器會喺清單保留短暫寬限期(3 秒),避免畫面閃爍。
伺服器列
每個已發現伺服器會以一行顯示,內容包括:
- 伺服器名稱 — Metrics Server 設定嘅名稱(例如「iPhone 16 Pro Max (iPhone17,2)」)。顯示名稱會有 1.5 秒防抖處理,避免 BLE 廣播名稱變動時閃爍。
- RSSI — 訊號強度(dBm),配合三格顏色指示:
- 綠色(三格)— 強訊號(>= -60 dBm)
- 橙色(兩格)— 中等訊號(>= -75 dBm)
- 紅色(一格)— 弱訊號(< -75 dBm)
- 服務可用性 — 綠色或灰色圓點,顯示伺服器有冇廣播 Metrics 服務 UUID。
- 連接/斷線按鈕:
- 連接(藍色)— 發起 BLE 連線到此伺服器。
- 連接中(灰色,有載入動畫)— 連線進行中。
- 斷線(紅色)— 斷開目前伺服器連線。
同一時間只支援連接一部伺服器。連接其中一部時,其他伺服器列會被停用。
指標分頁
連接後,指標分頁會顯示由伺服器串流過嚟嘅即時數據。成功連線後,客戶端會自動切換到此分頁。
連線狀態卡
頂部卡片會顯示:
- 連線狀態 — 有顏色圓點同標籤:
- 已連線(綠色)
- 已斷線(紅色)
連線時,會顯示額外資料:
-
訊號強度 — 五格指示器,配合品質標籤(極佳、良好、一般、較差、極差)同原始 RSSI 數值(dBm):
RSSI 範圍 品質 格數 >= -50 dBm 極佳 5 -51 至 -65 dBm 良好 4 -66 至 -75 dBm 一般 3 -76 至 -85 dBm 較差 2 低於 -85 dBm 極差 1 -
RSSI 歷史 — 滾動線圖,顯 示訊號強度讀數(最多 120 個樣本),方便觀察連線穩定性。
-
伺服器身份 — 三行資料,顯示伺服器傳送過嚟嘅資料:
欄位 說明 伺服器名稱 Metrics Server 設定嘅名稱(例如「iPhone 16 Pro Max (iPhone17,2)」)。 裝置型號 伺服器裝置嘅市場名稱(例如「iPhone 16 Pro Max」)。 裝置 iOS 設定中用戶自訂嘅裝置名稱(例如「Rogerio's iPhone 16ProMax」)。 -
錯誤訊息 — 如有 BLE 錯誤(連線失敗、斷線等),會以紅色警告顯示。
-
斷線按鈕(紅色,全寬),用於終止連線。
即時指標卡
收到指標時,此卡片會顯示:
| 欄位 | 說明 |
|---|---|
| CPU 使用率 | 伺服器裝置目前整體 CPU 使用百分比(例如 30.0%),以大字顯示。 |
| 核心數量 | 伺服器裝置嘅 CPU 核心數(例如 6)。 |
| 上次更新 | 最近一次指標封包嘅時間戳,以時間字串顯示。 |
CPU 使用率歷史
滾動線圖,顯示伺服器 CPU 使用率隨時間變化。圖 表最多儲存 100 個數據點,預設每秒更新一次,約可顯示 100 秒歷史。
每核心使用率
當伺服器有提供每核心 CPU 數據時,歷史圖下方會顯示每核心使用率視圖。每個 CPU 核心目前使用百分比都會顯示,視覺效果同 CPU 監控工具一致。
無指標狀態
未連線或未收到指標時,指標分頁會顯示佔位畫面,有圖表圖示同提示,指引用探測分頁連接伺服器。
如何配合 Metrics Server 使用
- 喺你想觀察嘅裝置上,打開 工具 > Metrics Server,然後點擊 啟動伺服器。
- 喺運行 Metrics Client 嘅裝置上,打開 工具 > Metrics Client。
- 喺 探測 分頁搵到伺服器,然後點擊 連接。
- 客戶端會自動切換到 指標 分頁,顯示即時數據。
權限
- 藍牙權限 — 用於 BLE 掃描同連線。如權限被拒,請喺 iOS 設定為 Lirum 啟用藍牙存取。
- 藍牙權限由 CoreBluetooth 自動處理。首次啟動工具時,系統會彈出授權提示。
技術細節
- 客戶端以 BLE Central 身份運作,使用
CBCentralManager。會掃描所有附近外圍裝置,並只顯示有廣播 Metrics Server 服務 UUID 嘅裝置。 - 連線後,客戶端會發現 Metrics Server GATT 服務,並訂閱 summary 同 per-core 通知特徵。
- 指標以二進位封包形式,每秒約一次傳送。客戶端會解碼:
- Summary:伺服器名稱、裝置型號、裝置名稱、整體 CPU 使用率(Float)、核心數(UInt16)、時間戳(UInt64 毫秒)。
- Per-core:核心數、每核心使用率陣列(每核心 Float)、時間戳(UInt64 毫秒)。
- 客戶端同時支援 v1(舊版)同 v2(現行)封包格式,確保兼容舊版 Metrics Server。v2 新增裝置型號、伺服器名稱獨立欄位,以及毫秒級時間戳。
- RSSI 會每 2 秒經
readRSSI()輪詢一次。訊號圖最多儲存 120 個樣本。 - 訊號平滑 — 探測清單內 RSSI 會用指數平滑(alpha = 0.15)處理,減少訊號格閃爍。
- 名稱穩定化 — 探測清單內伺服器顯示名稱會有 1.5 秒防抖,避免 BLE 廣播名稱頻繁變動時閃爍。
- 消失寬限期 — BLE 廣播消失嘅伺服器會保留 3 秒先移除,避免清單閃爍。
- 啟用 CoreBluetooth 狀態回復,即使系統重啟 app,客戶端都可以恢復現有連線。
- 指標歷史最多儲存 100 筆,預設每秒更新一次,約等於 100 秒數據。
注意事項與限制
- 呢個工具用 藍牙 LE,唔係 Wi-Fi 網絡。兩部裝置必須處於 BLE 範圍內。
- 同一時間只支援連接一部伺服器。
- RSSI 只係訊號強度嘅大約指標,會受環境影響而波動。
- 指標串流包括 CPU 使用率、每核心使用率、核心數同裝置身份。其他裝置指標(記憶體、儲存空間、溫度)暫時未有傳送。
- visionOS 上唔支援 Metrics Client,因為該平台唔支援 BLE central 角色。