前端異常監控實踐

2021-09-24 06:47:52 字數 1007 閱讀 6584

前端異常監控系統的開發其實並不複雜,開源實現方案也頗多,技術實現成本並不難,痛點有但是並不是都不能解決,根據我們的情況總結了一下:

捕獲使用者的操作路徑,根據操作路徑我們去還原使用者的使用場景,來幫助我們快速定位問題的所在。

操作路徑分為以下幾個點:

當然這塊整體的資料我們會基於cookie和localstorage來訪問資料。

指令碼通過window.onerror以及攔截angular和vue的handleerror來獲取。 ajax這塊除了ajax報錯資訊之外,也會根據業務層面的需求攔截返回的錯誤(栗子:我們請求返回除200外都是錯誤,所以整體都會上報)。

異常這塊其實坑還是蠻多的,不過市面上各位大大總結的夠好了,大家可以看看各位大大的總結。

這塊就是整個系統的資訊,以及瀏覽器的資訊、ua等。

sdk這塊其實2個難點,乙個是使用者行為如何定義?另乙個異常收集這塊會有蠻多的坑要踩。 另一部分整體的上報策略,目前我們是對異常進行了分級,低階別的錯誤延遲並且合併上報,同乙個點同一種錯誤去重上報。

所有日誌都打到nginx,並且nginx備份日誌,請求**到後面的node服務,node服務清洗資料後進行入庫,這塊有乙個要注意的點,如果node服務***,整個資料就斷掉了,所以這塊我們有乙個定時任務從nginx備份的日誌裡清洗出由於服務掛掉沒有處理的請求。

預警服務採用分級策略,按照組織架構,高階別的異常上來後,一段時間沒有處理,預警系統會觸發向上彙總的策略,直到部門負責人。

目前這塊會相對薄弱一些,基本只分析了乙個週期的專案情況。整個重心還是在錯誤的解決層面。

前端sdk更偏重於前端的異常收集。整體的後端服務,其實是面向於所有的異常來做的,我們更傾向於給公司提供一套完善的日誌系統(ps:目前我們團隊的後端監控的資料也逐漸的上到該系統)。

最後希望感興趣的同學加入我們團隊email:[email protected](除前端外,我們也招python,爬蟲,大資料), 也希望各位能給我們提些意見和建議,畢竟組內的同學們也是通過業餘時間來把整體的方案完善,並且開發完成,還有很多需要提公升的地方。

前端異常監控

前端監控包括 行為監控 異常監控 效能監控,這裡主要討論異常監控。對於前端而言,和後端處於同乙個監控系統中,前端有自己的監控方案,後端也有自己的監控方案,但兩者並不分離,因為乙個使用者在操作應用的過程中如果出現異常,有可能是前端引起,也有可能是後端引起,需要有乙個機制,將前後端串聯起來,使監控本身統...

前端錯誤異常捕獲監控

前端錯誤的分類 即時執行錯誤 錯誤 資源載入錯誤 第一種錯誤一般用 try.catch例項 try catch err window.onerror例項 window.onerror function msg,url,line,col,error function finderror finderr...

前端監控之白屏異常

一 意義 這裡和測速的白屏不同,測速的白屏是指 導航頁面開始到ttfb之間的時間稱之為白屏時間。白屏異常是指 使用者看到的一直是白屏,頁面沒有任何內容。比如渲染函式報錯 vue或react路由頁面沒有內容 網頁載入很慢很慢以至規定的時間範圍內一直沒內容。監控白屏異常能發現一些遺漏的bug並及時修復。...