使用 mPaaS 提供的 Nebula 容器加載 H5 頁面時,Nebula 容器會自動統計頁面的行為數據、加載性能,捕獲異常報錯等數據,方便您更好地跟蹤 H5 頁面加載時的各項數據。本文將引導您集成 Nebula 容器自動化埋點能力及查看埋點數據。
前置條件
集成 mPaaS 提供的 H5 容器自動化埋點功能,需滿足以下兩個條件:
操作步驟
初始化配置
要集成 Nebula 容器的自動埋點功能,需在容器初始化時啟動 H5 埋點監控:
// 監控委托,添加 H5 頁面的自動化埋點 NBLogConfigurationGet().shouldInjectSPMJS=YES; #ifdef DEBUG NBLogConfigurationGet().enableConsoleLog = YES; #endif [NBLogServiceGet() start]; [[NBMonitor defaultMonitor] setDelegate:NBLogServiceGet()];
啟動 H5 埋點監控后,使用 Nebula 容器加載 H5 頁面,容器就會自動統計頁面加載行為、性能及異常數據等。根據查看埋點數據的場景不同,分為以下兩種方式:
查看客戶端日志
加載 H5 頁面后,在 XCode 控制臺搜索關鍵字 [h5log],即可查看頁面加載相關的埋點數據的關鍵信息,如下圖。
Xcode 控制臺打出的 H5 容器埋點數據,只包含了以下關鍵信息:
SeedId | 示例 | 含義 |
bizType | webapp | 日志類型,寫入本地日志文件的文件名。 |
seedId | H5_AL_SESSION_FROM_NATIVE | 埋點的唯一標識,具體含義參見下文的 H5 容器埋點集。 |
head | HD-VM | 日志模型??蓞⒖?性能埋點。 |
params | https://www.baidu.com | 當前頁面的 URL。 |
currentTimestamp=1553072784000 | 自定義參數,如時間戳,頁面加載狀態。 | |
- | 自定義參數,如頁面元素位置。 | |
^url=https://www.baidu.com^referer=MPH5DemoVC^viewId=MPH5DemoVC^refviewId=MPHomeViewController^token=A994169ddd50640fa262dbc2dfebb2bb3^h5SessionToken=db4db9cfd83521aa2bc31a2e5a6df30e/td> | 埋點信息:包括離線包 APPID、離線包版本號、當前 H5 頁面加載的 URL、所在的 VC 類名、當前頁面的 token 等。 | |
formatter | header = "HD-VM" | 同 head 字段說明。 |
若您需要查看 Xcode 控制臺上某條日志的完整內容,可在沙盒中找到 Library/log
下以 bizType
開頭的文件名,然后根據 seedId 關鍵字搜索查詢。
查看服務端日志
若需要查看線上用戶 H5 容器的埋點數據,可在 mPaaS 控制臺通過 查詢歷史日志 進行查詢。
H5 容器埋點集
H5 容器統計的自動化埋點信息,根據埋點數據的 seedID 作為唯一標識,按加載的 H5 頁面方式不同,主要有以下三類:
打開在線 URL 的相關埋點集:
SeedId | 含義 |
H5_AL_SESSION_FROM_NATIVE | 容器已經啟動。 |
H5_AL_PAGE_START | 頁面開始加載。 |
H5_AL_NETWORK_START | 頁面開始發起網絡請求。 |
H5_OPEN_PAGE_FINISH | 頁面加載完成。 |
H5_AL_PAGE_APPEAR | 頁面首次出現。 |
H5_AL_JSAPI_SENDEVENT | 頁面調用 JSAPI。 |
H5_AL_JSAPI_NOTFOUND | 頁面調用 JSAPI 失敗。 |
H5_TITLEBAR_BACK_BT | 單擊導航欄返回按鈕。 |
H5_PAGE_PERFORMANCE | 統計頁面加載的性能。 |
打開離線包頁面的相關埋點集:
SeedId | 含義 |
H5_APP_REQUEST | 請求離線包信息。 |
H5_APP_LOAD_DATASOURCE | 加載離線包信息。 |
H5_AL_SESSION_FROM_NATIVE | 容器已經啟動。 |
H5_APP_DOWNLOAD | 離線包下載。 |
H5_APP_UNZIP | 離線包解壓。 |
H5_APP_POOL | 包管理信息池操作 (包含池內信息的增、刪、改)。 |
H5_APP_VERIFY | 離線包驗簽。 |
H5_AL_SESSION_VERIFYTAR_FAIL | 離線包驗簽失敗。 |
H5_AL_PAGE_START | 頁面開始加載。 |
H5_AL_SESSION_MAP_SUCCESS | 加載本地離線包成功。 |
H5_AL_SESSION_FALLBACK | 加載本地離線包失敗,走 fallback 請求在線頁面。 |
H5_OPEN_PAGE_FINISH | 頁面加載完成。 |
H5_AL_PAGE_APPEAR | 頁面首次出現。 |
異常埋點:
seedId | 含義 |
H5_AL_NETWORK_PERFORMANCE_ERROR | 資源請求異常。 |
H5_PAGE_ABNORMAL | 頁面異常。 |
H5_AL_PAGE_JSERROR | JS 異常。 |
H5_AL_JSAPI_RESULT_ERROR | JSAPI 異常。 |