本文說明ARMS前端監控各頁面的關鍵統計指標含義以及日志字段的含義。
滿意度
性能指數APDEX(全稱Application Performance Index)是一個國際通用的應用性能計算標準。該標準將用戶對應用的體驗定義為三個等級:
滿意(0~T)
可容忍(T~4T)
不滿意(大于4T)
計算公式為:
Apdex=(滿意數+可容忍數/2)/總樣本量
ARMS取頁面首次渲染時間(First Paint Time)作為計算指標,默認定義T為2秒。
JS穩定性
JS穩定性在ARMS中是指頁面的JS錯誤率。
在一個PV周期內,如果發生過錯誤(JS Error),則此PV周期為錯誤樣本。
錯誤率=錯誤樣本量/總樣本量
頁面異常除了自動上報的JS Error外,也包括手動調用前端接口說明上報的錯誤。
訪問速度
在ARMS中,訪問速度是指頁面的首次渲染時間。
在性能測速統計中,所有數據都是根據W3C規范中定義的Navigation Timing API計算出來的。
上報字段 | 描述 | 計算公式 | 備注 |
FMP(First Meaningful Paint) | 首屏時間 | 無 | |
FPT(First Paint Time) | 首次渲染時間(白屏時間) | responseEnd - fetchStart | 從請求開始到瀏覽器開始解析第一批HTML文檔字節的時間差。 |
TTI(Time to Interact) | 首次可交互時間 | domInteractive - fetchStart | 瀏覽器完成所有HTML解析并且完成DOM構建,此時瀏覽器開始加載資源。 |
Ready | HTML加載完成時間, 即DOM Ready時間。 | domContentLoadEventEnd - fetchStart | 如果頁面有同步執行的JS,則同步JS執行時間=Ready-TTI。 |
Load | 頁面完全加載時間 | loadEventStart - fetchStart | Load=首次渲染時間+DOM解析耗時+同步JS執行+資源加載耗時。 |
FirstByte | 首包時間 | responseStart - domainLookupStart | 第一包接收的時間。 |
上報字段 | 描述 | 計算公式 | 備注 |
DNS | DNS查詢耗時 | domainLookupEnd - domainLookupStart | 無 |
TCP | TCP連接耗時 | connectEnd - connectStart | 無 |
TTFB(Time to First Byte) | 請求響應耗時 | responseStart - requestStart | TTFB有多種計算方式,ARMS采用的標準,請參見Google Development定義。 |
Trans | 內容傳輸耗時 | responseEnd - responseStart | 無 |
DOM | DOM解析耗時 | domInteractive - responseEnd | 無 |
Res | 資源加載耗時 | loadEventStart - domContentLoadedEventEnd | 表示頁面中的同步加載資源。 |
SSL | SSL安全連接耗時 | connectEnd - secureConnectionStart | 只在HTTPS下有效。 |
上報字段 | 描述 | 計算方式 | 備注 |
FPT(First Paint Time) | 首次渲染時間 | onShow (first page) - onLaunch (app) | 小程序從onLaunch到第一個頁面onShow之間的時間。 |
API成功率
API成功率=接口調用成功的樣本量/總樣本量
統計API成功率的樣本除了自動上報的AJAX請求,還包括手動調用前端接口說明上報的數據。
日志字段
下列表格說明了日志中的字段含義。
字段 | 含義 |
uid | 用戶ID,用于標識訪問用戶,可手動配置,用于根據用戶ID檢索。如果不配置,則由SDK自動生成且每半年更新一次。 |
username | 用戶名稱,需要通過SDK主動上報,否則內容為空。 |
release | 應用版本號 |
environment | 生產環境 |
page | 頁面 |
sampling | 采樣率 |
tag | 用戶自定義Tag |
字段 | 含義 |
api | API請求地址,不帶參數。 |
msg | responseText:字符串形式的響應數據。 |
code | 狀態碼 |
time | API耗時 |
success | API成功與否 |
字段 | 含義 |
msg | 報錯內容 |
stack | 錯誤堆棧 |
cate | 錯誤類型:
|
file | 出錯文件 |
line | 出錯行 |
col | 出錯列 |
times | 出錯次數 |
日志說明
日志類型 | Type | 查詢字段 (通用指標字段:所有日志皆可查詢過濾) |
PV日志 | PV | 在頁面Onload的時候上傳,用于計算PV和UV。 PV、UV計算方式:
|
性能日志 | Perf | |
慢加載日志 (>8s的性能日志) | RES | |
JS錯誤日志 | Error |
|
API日志 | API |
|
SUM日志 | SUM | 自定義Key:事件名(如scroll-count) |
AVG日志 | AVG | 自定義Key:事件名(如scroll-time) |
資源錯誤日志 | ResourceError | 資源錯誤SRC |
無 | Custom | 無 說明
|