靠譜的前端監(jiān)控和js錯(cuò)誤監(jiān)控系統(tǒng)

來源: 發(fā)布時(shí)間:2023-08-24

搭建前端監(jiān)控系統(tǒng)(四)接口請(qǐng)求異常監(jiān)控篇如何監(jiān)控前端接口請(qǐng)求:1、如何監(jiān)控ajax請(qǐng)求如果作為前端開發(fā)者你用的jquery、zepto、或者自己封裝的ajax方法,就可以用如下的方法進(jìn)行監(jiān)控排查。前端開發(fā)者在監(jiān)控XMLHttpRequest對(duì)象的兩個(gè)事件loadstart,loadend。但是監(jiān)控的結(jié)果并不是像我們想象的那么容易理解,我們先看下ajaxLoadStart,ajaxLoadEnd的回調(diào)方法。一個(gè)頁面上會(huì)有很多個(gè)請(qǐng)求,當(dāng)一個(gè)頁面發(fā)出多個(gè)請(qǐng)求的時(shí)候,ajaxLoadStart事件被監(jiān)控到,但是卻無法區(qū)分出來到底發(fā)送的是哪個(gè)請(qǐng)求,只返回了一個(gè)內(nèi)容超多的事件對(duì)象,而且事件對(duì)象的內(nèi)容幾乎完全一樣。當(dāng)ajaxLoadEnd事件被監(jiān)控到的時(shí)候,也會(huì)返回一個(gè)內(nèi)容超多的時(shí)間對(duì)象,這個(gè)時(shí)候事件對(duì)象里包含了接口請(qǐng)求的所有信息。幸運(yùn)的是,兩個(gè)對(duì)象是同一個(gè)引用,也就意味著,ajaxLoadStart和ajaxLoadEnd事件被捕獲的時(shí)候,他們作用的是用一個(gè)對(duì)象。那前端開發(fā)者就有辦法分析出來了。webfunny前端監(jiān)控系統(tǒng)支持PC前端、H5項(xiàng)目??孔V的前端監(jiān)控和js錯(cuò)誤監(jiān)控系統(tǒng)

前端出現(xiàn)異常的時(shí)候,前端程序員如何快速甩鍋?這就需要定位到前端異常的問題,才能有針對(duì)性的去甩鍋。常見的前端異常一、白屏想必是前端小伙伴的噩夢(mèng),因?yàn)轫撁姘灼亮?,?duì)前端小伙伴來說,是屬于嚴(yán)重的bug了,因?yàn)闃I(yè)務(wù)因此癱瘓了,哪怕不是前端程序員的鍋,也背定了。為了避免一臉懵逼,什么有用的信息都沒有,解決起來無從著手的情況發(fā)生,我們要知道導(dǎo)致白屏的原因有哪些呢?基本上導(dǎo)致白屏的原因是你的JS報(bào)錯(cuò)了,運(yùn)行時(shí)拋出異常,靜態(tài)資源加載失敗,如:js、css文件加載失敗,也會(huì)導(dǎo)致白屏。以上兩點(diǎn)是導(dǎo)致前端白屏的主要原因,當(dāng)然還有什么機(jī)子兼容性不好太卡,網(wǎng)絡(luò)異常什么的,那都小概率事件,屬于前端監(jiān)控的另一個(gè)維度了,webfunny前端監(jiān)控工具這些維度都有覆蓋。國(guó)內(nèi)好用的前端監(jiān)控和前端行為分析軟件意識(shí)到前端監(jiān)控的必要性,選對(duì)前端監(jiān)控產(chǎn)品如webfunny,及早開始進(jìn)行監(jiān)控,才能更好的避免線上故障的產(chǎn)生。

webfunny整套前端監(jiān)控監(jiān)控系統(tǒng)的流程是比較簡(jiǎn)單的:手機(jī)端-用戶訪問頁面會(huì)產(chǎn)生錯(cuò)誤日志、產(chǎn)生的日志會(huì)存入瀏覽器緩存,瀏覽器本地緩存會(huì)定時(shí)向Node服務(wù)推送日志信息,NodeJs日志服務(wù)會(huì)分類處理后,存入到mysql數(shù)據(jù)庫中,數(shù)據(jù)可視化系統(tǒng)會(huì)展示日志數(shù)據(jù)。因?yàn)檎浊岸吮O(jiān)控流程比較簡(jiǎn)單,有些前端工程師可能會(huì)有疑問,比如:監(jiān)控這么多東西,會(huì)不會(huì)影響頁面的性能???前端監(jiān)控居然用node做日志服務(wù),并發(fā)量高了能扛得住嗎?前端監(jiān)控用mysql數(shù)據(jù)庫來存數(shù)據(jù)庫,不怕卡死嗎?等一些關(guān)于webfunny前端監(jiān)控系統(tǒng)的各種問題。

搭建前端監(jiān)控系統(tǒng)(七)之用戶細(xì)查篇:用戶細(xì)查具體要分析哪些數(shù)據(jù),更容易幫助我們定位前端問題呢說完用戶基本信息和頁面平均加載時(shí)間,下面就要來說接口耗時(shí)正態(tài)分布。接口耗時(shí)同樣能夠反饋出用戶當(dāng)時(shí)的網(wǎng)絡(luò)狀態(tài),同時(shí)他也能反饋出服務(wù)端接口的狀態(tài)。比如,頁面平均耗時(shí)表現(xiàn)良好,接口耗時(shí)表現(xiàn)差,則能反映出,當(dāng)時(shí)的后端服務(wù)狀態(tài)不是很好。還有完整的用戶行為記錄,以上是用戶行為中的基本信息,接下來要說的是用戶的完整行為鏈路,通過將頁面訪問、接口請(qǐng)求、代碼報(bào)錯(cuò)、自定義行為等,按照時(shí)間先后順序串聯(lián)起來,可以達(dá)到復(fù)現(xiàn)用戶錯(cuò)誤的目的。其中,接口請(qǐng)求記錄,除了會(huì)記錄接口耗時(shí),還需要記錄接口的返回值,這樣能夠更加明確的定位數(shù)據(jù)問題。以上說到的關(guān)于「用戶細(xì)查」的詳細(xì)功能和信息展示,前端程序員可以可以通過webfunny前端監(jiān)控系統(tǒng)進(jìn)行demo實(shí)操查看。在搭建前端系統(tǒng)利用各種手段來豐富「用戶細(xì)查」,將用戶的行為記錄下來,復(fù)現(xiàn)用戶當(dāng)時(shí)的問題便不再是那么困難的事情。這對(duì)開發(fā)者來說,無疑是提高了解決問題的效率。webfunny前端監(jiān)控致力于解決前端監(jiān)控的問題,提高前端的性能。webfunny前端監(jiān)控系統(tǒng)的功能:性能分析過程中也同步對(duì)接口的性能進(jìn)行分析,如:耗時(shí)、成功率等。

整體大致可以分四個(gè)階段:信息采集、存儲(chǔ)、分析、監(jiān)控。采集階段:收集異常日志,先在本地做一定的處理,采取一定的方案上報(bào)到服務(wù)器。存儲(chǔ)階段:后端接收前端上報(bào)的異常日志,經(jīng)過一定處理,按照一定的存儲(chǔ)方案存儲(chǔ)。分析階段:分為機(jī)器自動(dòng)分析和人工分析。機(jī)器自動(dòng)分析,通過預(yù)設(shè)的條件和算法,對(duì)存儲(chǔ)的日志信息進(jìn)行統(tǒng)計(jì)和篩選,發(fā)現(xiàn)問題,觸發(fā)報(bào)警。人工分析,通過提供一個(gè)可視化的數(shù)據(jù)面板,讓系統(tǒng)用戶可以看到具體的日志數(shù)據(jù),根據(jù)信息,發(fā)現(xiàn)異常問題根源。報(bào)警階段:分為告警和預(yù)警。告警按照一定的級(jí)別自動(dòng)報(bào)警,通過設(shè)定的渠道,按照一定的觸發(fā)規(guī)則進(jìn)行。預(yù)警則在異常發(fā)生前,提前預(yù)判,給出警告。性能監(jiān)控:使用ResourceTimingAPI和PerformanceTimingAPI,可以計(jì)算許多重要的指標(biāo),比如頁面性能統(tǒng)計(jì)的起始點(diǎn)時(shí)間、首屏?xí)r間等。異常監(jiān)控:前端捕獲異常分為全局捕獲和局部捕獲。局部捕獲作為補(bǔ)充,對(duì)某些特殊情況進(jìn)行捕獲,但分散,不利于管理。所以,我會(huì)選擇全局捕獲的方式,即通過全局的接口,將捕獲代碼集中寫在一個(gè)地方。具體在實(shí)現(xiàn)項(xiàng)目中,我應(yīng)該會(huì)采用badjs-report,它重寫了進(jìn)行上報(bào)異常,無需編寫任何捕獲錯(cuò)誤的代碼。前端監(jiān)控看似簡(jiǎn)單,但想要監(jiān)控真正發(fā)揮價(jià)值,還需要從各個(gè)方面進(jìn)行不斷的優(yōu)化和打磨。常見的前端監(jiān)控和css文件加載錯(cuò)誤監(jiān)控平臺(tái)

webfunny前端一體化埋點(diǎn)系統(tǒng) ,純私有化部??孔V的前端監(jiān)控和js錯(cuò)誤監(jiān)控系統(tǒng)

前端錯(cuò)誤監(jiān)控軟件是一種工具,可幫助企業(yè)監(jiān)控其前端系統(tǒng)的性能和正常運(yùn)行時(shí)間,如web服務(wù)器和其他在線存在的基本元素。這些工具幫助企業(yè)掌握可能影響客戶體驗(yàn)或網(wǎng)站性能的問題,使他們能夠快速有效地識(shí)別和解決問題,以免造成任何重大中斷。前端錯(cuò)誤監(jiān)控軟件的一些關(guān)鍵功能包括實(shí)時(shí)分析、自動(dòng)警報(bào)系統(tǒng)、詳細(xì)報(bào)告功能以及對(duì)各種前端平臺(tái)的支持,如web服務(wù)器、cdn、數(shù)據(jù)庫等。此外,前端錯(cuò)誤監(jiān)控軟件通常是可定制的,允許企業(yè)定制他們的解決方案,以滿足他們的特定需求和工作流程。靠譜的前端監(jiān)控和js錯(cuò)誤監(jiān)控系統(tǒng)

上海觀縱科技有限公司是我國(guó)webfunny前端監(jiān)控,webfunny前端埋點(diǎn),全鏈路應(yīng)用性能監(jiān)控,Argus-IT運(yùn)維監(jiān)控專業(yè)化較早的有限責(zé)任公司之一,公司始建于2022-11-14,在全國(guó)各個(gè)地區(qū)建立了良好的商貿(mào)渠道和技術(shù)協(xié)作關(guān)系。觀縱科技致力于構(gòu)建傳媒、廣電自主創(chuàng)新的競(jìng)爭(zhēng)力,將憑借高精尖的系列產(chǎn)品與解決方案,加速推進(jìn)全國(guó)傳媒、廣電產(chǎn)品競(jìng)爭(zhēng)力的發(fā)展。