說到監(jiān)控,,大家時(shí)間想到的肯定是Zabbix,、Nagios等各種強(qiáng)大的后端監(jiān)控服務(wù),。
誠(chéng)然,,這些強(qiáng)大的平臺(tái)通過采集服務(wù)器以及鏈路上各種中間件的數(shù)據(jù),,為我們的應(yīng)用穩(wěn)定起到了不可或缺的保駕護(hù)航作用。然而在互聯(lián)網(wǎng)的另一端,,運(yùn)行在用戶終端上的代碼卻缺少這樣強(qiáng)大的監(jiān)控能力,。
對(duì)于工程師來說,想到或者做出一個(gè)前端監(jiān)控方案并不是什么難事——通過全局的事件捕獲到運(yùn)行時(shí)錯(cuò)誤,,然后上報(bào)到采集端,,再做一個(gè)頁(yè)面展示數(shù)據(jù)——看起來確實(shí)只需要寫一個(gè)簡(jiǎn)單的CRUD應(yīng)用就能搞定。webfunny前端監(jiān)控此就是把前端監(jiān)控應(yīng)用做到面面俱到,。 webfunny前端監(jiān)控專為前端開發(fā)所打造,。通過前端監(jiān)控系統(tǒng),可以實(shí)時(shí)監(jiān)控前端性能,,還實(shí)時(shí)分析前端健康狀態(tài),。有哪些開源的前端監(jiān)控和前端行為分析工具
前端程序員如何明確定位、排查前端生產(chǎn)問題,?二,、分析錯(cuò)誤詳情通過webfunny前端監(jiān)控系統(tǒng),我們可以把線上的錯(cuò)誤日志統(tǒng)計(jì)出來了,,那如何解析這些錯(cuò)誤日志呢,。比如:解析出用戶的機(jī)型,版本,,系統(tǒng)平臺(tái),,影響范圍,以及具體的錯(cuò)誤位置,,從而提高前端工程師解決問題的效率,。方法能夠利用的功能都已經(jīng)用的差不多了,但是它真的可以幫我們定位和解決所有前端線上的問題嗎,?線上能夠修復(fù)的問題,,前端工程師肯定是遇到都在盡量修復(fù),但是前端線上的問題頻發(fā),。當(dāng)客服反饋一個(gè)問題,,你發(fā)現(xiàn)沒有測(cè)試機(jī)型,無法復(fù)現(xiàn)用戶錯(cuò)誤的時(shí)候,,讓你來修復(fù)這個(gè)問題,,前端只能兩眼一抹黑無能為力。所以前端監(jiān)控的建設(shè)很有必要性,。國(guó)內(nèi)好用的前端監(jiān)控和頁(yè)面性能監(jiān)控平臺(tái)webfunny前端一體化埋點(diǎn)系統(tǒng),,可按項(xiàng)目設(shè)定不同的模型看板,設(shè)定人員權(quán)限,滿足多種數(shù)據(jù)分析需求,。
前端監(jiān)控通常情況下監(jiān)控的內(nèi)容可以分為三類:一,,js錯(cuò)誤。js錯(cuò)誤又分大概四種:一是uncaughterror,這種錯(cuò)誤通常情況下發(fā)生在我們的開發(fā)過程中,。理論上不需要我們進(jìn)行上報(bào),。二是jsruntimeerror,這種錯(cuò)誤會(huì)觸發(fā)事件,我們可以通過onerror事件,,獲取到相關(guān)的信息進(jìn)行上報(bào),。三是資源錯(cuò)誤,比如圖片加載失敗等,,它也會(huì)觸發(fā)error事件,。四是unhandledregection錯(cuò)誤,這種錯(cuò)誤由promise觸發(fā),,我們可以onunhandledrejection方法獲取相關(guān)信息進(jìn)行上報(bào)
前端程序員如何明確定位,、排查前端生產(chǎn)問題?比如在分析錯(cuò)誤詳情時(shí),,遇到線上用戶進(jìn)過了復(fù)雜的鏈接跳轉(zhuǎn)而發(fā)生了錯(cuò)誤;用戶調(diào)用的接口發(fā)生了異?;蛘叱瑫r(shí),;線上的用戶反饋異常根本就跟實(shí)際情況不符等等。這些非直觀型的問題該如何解決,?這時(shí)候前端工程師就需要用戶的行為記錄,。三、記錄用戶的跳轉(zhuǎn)行為(Demo)有些錯(cuò)誤是前端頁(yè)面經(jīng)過復(fù)雜的跳轉(zhuǎn),、回退之后才發(fā)生的,,就算測(cè)試人員也很難測(cè)試出這種問題,因?yàn)榫€上的用戶的任何行為都有可能出現(xiàn),。往往我們知道的只是他在后面停留的頁(yè)面發(fā)生了錯(cuò)誤,。如此,我們通過webfunny前端監(jiān)控系統(tǒng)來記錄下用戶的跳轉(zhuǎn)日志,,就能夠復(fù)現(xiàn)出用戶的行為,,從而復(fù)現(xiàn)BUG來解決。webfunny埋點(diǎn)系統(tǒng)可快速全鏈路數(shù)據(jù)接入,,打破數(shù)據(jù)孤島,,多角度洞察業(yè)務(wù),實(shí)現(xiàn)數(shù)據(jù)智能決策,。
搭建前端監(jiān)控系統(tǒng)(三)靜態(tài)資源加載監(jiān)控篇前端監(jiān)控除了如何做JS錯(cuò)誤監(jiān)控,,還有一種錯(cuò)誤是靜態(tài)資源加載報(bào)錯(cuò),很多時(shí)候資源加載報(bào)錯(cuò)對(duì)前端項(xiàng)目來說是致命的,,因?yàn)殪o態(tài)資源加載出錯(cuò)了,,有可能就會(huì)導(dǎo)致前端頁(yè)面無法渲染,,用戶就只能對(duì)著一個(gè)空白屏幕發(fā)呆,不知所措,。因?yàn)橥蝗挥刑?,我們的前端線上環(huán)境爆出了大量的白屏錯(cuò)誤,經(jīng)過很長(zhǎng)時(shí)間的排查,,終于定位到問題原因:我們使用的CDN路徑不知道怎么的,把我們的https協(xié)議全部指向了http協(xié)議,,在安全協(xié)議下無法訪問非安全協(xié)議的資源,,導(dǎo)致了大量的白屏。所以我決定增加靜態(tài)資源監(jiān)控功能,,以應(yīng)對(duì)未來的未知情況,。絕大多數(shù)的監(jiān)控平臺(tái)都提供規(guī)則報(bào)警的能力,。前端監(jiān)控和前端行為分析軟件
webfunny前端監(jiān)控系統(tǒng)的用戶細(xì)查功能:是深入分析每個(gè)用戶,記錄用戶的所有行為,。有哪些開源的前端監(jiān)控和前端行為分析工具
三,、性能指標(biāo)FP(FirstPaint):繪制時(shí)間,,包括了任何用戶自定義的背景繪制,它是首先將像素繪制到屏幕的時(shí)刻,。FCP(FirstContentPaint):內(nèi)容繪制,。瀏覽器將個(gè)DOM渲染到屏幕的時(shí)間,可能是文本,、圖像、SVG等,。這其實(shí)就是白屏?xí)r間FMP(FirstMeaningfulPaint):有意義繪制,。頁(yè)面有意義的內(nèi)容渲染的時(shí)間LCP(LargestContentfulPaint),。比較大內(nèi)容渲染。在viewport中比較大的頁(yè)面元素加載的時(shí)間,。DCL(DomContentLoaded):DOM加載完成,。當(dāng)HTML文檔被完全加載和解析完成之后,DOMContentLoaded事件被觸發(fā)。無需等待樣式表,,圖像和子框架的完成加載。L(onload):當(dāng)依賴的資源全部加載完畢之后才會(huì)觸發(fā),。TTI(TimetoInteractive):可交互時(shí)間,。用于標(biāo)記應(yīng)用已進(jìn)行視覺渲染并能可靠響應(yīng)用戶輸入的時(shí)間點(diǎn),。FID(FirstInputDelay):輸入延遲,。用戶和頁(yè)面交互(單擊鏈接,、點(diǎn)擊按鈕等)到頁(yè)面響應(yīng)交互的時(shí)間。有哪些開源的前端監(jiān)控和前端行為分析工具
上海觀縱科技有限公司主營(yíng)品牌有webfunny,walkingfunny,argus,,發(fā)展規(guī)模團(tuán)隊(duì)不斷壯大,,該公司服務(wù)型的公司。公司是一家有限責(zé)任公司企業(yè),,以誠(chéng)信務(wù)實(shí)的創(chuàng)業(yè)精神、專業(yè)的管理團(tuán)隊(duì),、踏實(shí)的職工隊(duì)伍,,努力為廣大用戶提供***的產(chǎn)品。以滿足顧客要求為己任,;以顧客永遠(yuǎn)滿意為標(biāo)準(zhǔn),;以保持行業(yè)優(yōu)先為目標(biāo),提供***的webfunny前端監(jiān)控,,webfunny前端埋點(diǎn),,全鏈路應(yīng)用性能監(jiān)控,Argus-IT運(yùn)維監(jiān)控,。觀縱科技自成立以來,,一直堅(jiān)持走正規(guī)化、專業(yè)化路線,,得到了廣大客戶及社會(huì)各界的普遍認(rèn)可與大力支持。