日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > HTML >内容正文

HTML

前端监控和前端埋点方案设计--摘抄

發(fā)布時(shí)間:2025/4/16 HTML 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 前端监控和前端埋点方案设计--摘抄 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

?

一、為什么需要前端監(jiān)控

前端監(jiān)控的目的是:

?

獲取用戶行為以及跟蹤產(chǎn)品在用戶端的使用情況,并以監(jiān)控?cái)?shù)據(jù)為基礎(chǔ),指明產(chǎn)品優(yōu)化的方向

?

前端監(jiān)控可以分為三類:數(shù)據(jù)監(jiān)控、性能監(jiān)控和異常監(jiān)控。下面我們來(lái)一一的了解。

(1)數(shù)據(jù)監(jiān)控

數(shù)據(jù)監(jiān)控,顧名思義就是監(jiān)聽用戶的行為。常見的數(shù)據(jù)監(jiān)控包括:

  • PV/UV:PV(page view),即頁(yè)面瀏覽量或點(diǎn)擊量。UV:指訪問(wèn)某個(gè)站點(diǎn)或點(diǎn)擊某條新聞的不同IP地址的人數(shù)

  • 用戶在每一個(gè)頁(yè)面的停留時(shí)間

  • 用戶通過(guò)什么入口來(lái)訪問(wèn)該網(wǎng)頁(yè)

  • 用戶在相應(yīng)的頁(yè)面中觸發(fā)的行為

統(tǒng)計(jì)這些數(shù)據(jù)是有意義的,比如我們知道了用戶來(lái)源的渠道,可以促進(jìn)產(chǎn)品的推廣,知道用戶在每一個(gè)頁(yè)面停留的時(shí)間,可以針對(duì)停留較長(zhǎng)的頁(yè)面,增加廣告推送等等。

(2)性能監(jiān)控

性能監(jiān)控指的是監(jiān)聽前端的性能,主要包括監(jiān)聽網(wǎng)頁(yè)或者說(shuō)產(chǎn)品在用戶端的體驗(yàn)。常見的性能監(jiān)控?cái)?shù)據(jù)包括:

  • 不同用戶,不同機(jī)型和不同系統(tǒng)下的首屏加載時(shí)間

  • 白屏?xí)r間

  • http等請(qǐng)求的響應(yīng)時(shí)間

  • 靜態(tài)資源整體下載時(shí)間

  • 頁(yè)面渲染時(shí)間

  • 頁(yè)面交互動(dòng)畫完成時(shí)間

這些性能監(jiān)控的結(jié)果,可以展示前端性能的好壞,根據(jù)性能監(jiān)測(cè)的結(jié)果可以進(jìn)一步的去優(yōu)化前端性能,比如兼容低版本瀏覽器的動(dòng)畫效果,加快首屏加載等等。

(3)異常監(jiān)控

此外,產(chǎn)品的前端代碼在執(zhí)行過(guò)程中也會(huì)發(fā)生異常,因此需要引入異常監(jiān)控。及時(shí)的上報(bào)異常情況,可以避免線上故障的發(fā)上。雖然大部分異常可以通過(guò)try catch的方式捕獲,但是比如內(nèi)存泄漏以及其他偶現(xiàn)的異常難以捕獲。常見的需要監(jiān)控的異常包括:

  • Javascript的異常監(jiān)控

  • 樣式丟失的異常監(jiān)控

二、常用前端埋點(diǎn)方案總結(jié)

在上一節(jié)中介紹了前端監(jiān)控的作用,那么如何實(shí)現(xiàn)前端監(jiān)控呢,實(shí)現(xiàn)前端監(jiān)控的步驟為:前端埋點(diǎn)和上報(bào)、數(shù)據(jù)處理和數(shù)據(jù)分析。首要的步驟就是前端埋點(diǎn)和上報(bào),也就是數(shù)據(jù)的收集階段。數(shù)據(jù)收集的豐富性和準(zhǔn)確性會(huì)影響對(duì)產(chǎn)品線上效果的判別結(jié)果。

目前常見的前端埋點(diǎn)方法分為三種:代碼埋點(diǎn)、可視化埋點(diǎn)和無(wú)痕埋點(diǎn)。下面一一介紹每一種埋點(diǎn)的方法。

(1) 代碼埋點(diǎn)

代碼埋點(diǎn),就是以嵌入代碼的形式進(jìn)行埋點(diǎn),比如需要監(jiān)控用戶的點(diǎn)擊事件,會(huì)選擇在用戶點(diǎn)擊時(shí),插入一段代碼,保存這個(gè)監(jiān)聽行為或者直接將監(jiān)聽行為以某一種數(shù)據(jù)格式直接傳遞給server端。此外比如需要統(tǒng)計(jì)產(chǎn)品的PV和UV的時(shí)候,需要在網(wǎng)頁(yè)的初始化時(shí),發(fā)送用戶的訪問(wèn)信息等。

代碼埋點(diǎn)的優(yōu)點(diǎn):

  • 可以在任意時(shí)刻,精確的發(fā)送或保存所需要的數(shù)據(jù)信息。

缺點(diǎn):

  • 工作量較大,每一個(gè)組件的埋點(diǎn)都需要添加相應(yīng)的代碼

(2)可視化埋點(diǎn)

通過(guò)可視化交互的手段,代替代碼埋點(diǎn)。將業(yè)務(wù)代碼和埋點(diǎn)代碼分離,提供一個(gè)可視化交互的頁(yè)面,輸入為業(yè)務(wù)代碼,通過(guò)這個(gè)可視化系統(tǒng),可以在業(yè)務(wù)代碼中自定義的增加埋點(diǎn)事件等等,最后輸出的代碼耦合了業(yè)務(wù)代碼和埋點(diǎn)代碼。

可視化埋點(diǎn)聽起來(lái)比較高大上,實(shí)際上跟代碼埋點(diǎn)還是區(qū)別不大。也就是用一個(gè)系統(tǒng)來(lái)實(shí)現(xiàn)手動(dòng)插入代碼埋點(diǎn)的過(guò)程。

缺點(diǎn):

  • 可視化埋點(diǎn)可以埋點(diǎn)的控件有限,不能手動(dòng)定制。

(3)無(wú)埋點(diǎn)

無(wú)埋點(diǎn)并不是說(shuō)不需要埋點(diǎn),而是全部埋點(diǎn),前端的任意一個(gè)事件都被綁定一個(gè)標(biāo)識(shí),所有的事件都別記錄下來(lái)。通過(guò)定期上傳記錄文件,配合文件解析,解析出來(lái)我們想要的數(shù)據(jù),并生成可視化報(bào)告供專業(yè)人員分析因此實(shí)現(xiàn)“無(wú)埋點(diǎn)”統(tǒng)計(jì)。

從語(yǔ)言層面實(shí)現(xiàn)無(wú)埋點(diǎn)也很簡(jiǎn)單,比如從頁(yè)面的js代碼中,找出dom上被綁定的事件,然后進(jìn)行全埋點(diǎn)。

無(wú)埋點(diǎn)的優(yōu)點(diǎn):

  • 由于采集的是全量數(shù)據(jù),所以產(chǎn)品迭代過(guò)程中是不需要關(guān)注埋點(diǎn)邏輯的,也不會(huì)出現(xiàn)漏埋、誤埋等現(xiàn)象

缺點(diǎn):

  • 無(wú)埋點(diǎn)采集全量數(shù)據(jù),給數(shù)據(jù)傳輸和服務(wù)器增加壓力

  • 無(wú)法靈活的定制各個(gè)事件所需要上傳的數(shù)據(jù)

三、前端埋點(diǎn)方案選型和前端上報(bào)方案設(shè)計(jì)

第一章中介紹了前端所需要監(jiān)聽的信息,在第二章中介紹了前端埋點(diǎn)的常見方式,本文來(lái)根據(jù)需求,來(lái)定制我們的埋點(diǎn)和上報(bào)方案。

(1)監(jiān)控?cái)?shù)據(jù)

首先我們需要明確一個(gè)產(chǎn)品或者網(wǎng)頁(yè),普遍需要監(jiān)控和上報(bào)的數(shù)據(jù)。監(jiān)控的分為三個(gè)階段:用戶進(jìn)入網(wǎng)頁(yè)首頁(yè)、用戶在網(wǎng)頁(yè)內(nèi)部交互和交互中報(bào)錯(cuò)。每一個(gè)階段需要監(jiān)控和上報(bào)的數(shù)據(jù)如下圖所示:

(2)埋點(diǎn)方案

在實(shí)際項(xiàng)目中考慮到上報(bào)數(shù)據(jù)的靈活定制,以及減少數(shù)據(jù)傳輸和服務(wù)器的壓力,在所需埋點(diǎn)處不多的情況下,常用的方式是代碼埋點(diǎn)。

以用戶進(jìn)入首頁(yè)為例,我們?cè)谑醉?yè)渲染完成后會(huì)發(fā)送事件類型和類型相關(guān)的數(shù)據(jù)給server端,告知首頁(yè)的監(jiān)控信息。

(3)上報(bào)周期和上報(bào)數(shù)據(jù)類型

如果埋點(diǎn)的事件不是很多,上報(bào)可以時(shí)時(shí)進(jìn)行,比如監(jiān)控用戶的交互事件,可以在用戶觸發(fā)事件后,立刻上報(bào)用戶所觸發(fā)的事件類型。如果埋點(diǎn)的事件較多,或者說(shuō)網(wǎng)頁(yè)內(nèi)部交互頻繁,可以通過(guò)本地存儲(chǔ)的方式先緩存上報(bào)信息,然后定期上報(bào)。

接著來(lái)確定需要埋點(diǎn)上報(bào)的數(shù)據(jù),上報(bào)的信息包括用戶個(gè)人信息以及用戶行為,主要數(shù)據(jù)可以分為:

  • who: appid(系統(tǒng)或者應(yīng)用的id),userAgent(用戶的系統(tǒng)、網(wǎng)絡(luò)等信息)

  • when: timestamp(上報(bào)的時(shí)間戳)

  • from where: currentUrl(用戶當(dāng)前url),fromUrl(從哪一個(gè)頁(yè)面跳轉(zhuǎn)到當(dāng)前頁(yè)面),type(上報(bào)的事件類型),element(觸發(fā)上報(bào)事件的元素)

  • what: 上報(bào)的自定義擴(kuò)展數(shù)據(jù)data:{},擴(kuò)展數(shù)據(jù)中可以按需求定制,比如包含uid等信息

上報(bào)數(shù)據(jù)的對(duì)象為:

{ ? ----------------上報(bào)接口本身提供--------------------currentUrl, ?fromUrl,timestamp,userAgent:{os,netWord,}----------------業(yè)務(wù)代碼配置和自定義上報(bào)數(shù)據(jù)------------ ? ?type,appid,element,data:{uid,uname} }復(fù)制代碼

(4)埋點(diǎn)和上報(bào)舉例

我們以上報(bào)首屏加載事件為例,DOM提供了document的DOMContentLoaded事件來(lái)監(jiān)聽dom掛載,提供了window的load事件來(lái)監(jiān)聽頁(yè)面所有資源加載渲染完畢。

<script type="text/javascript">var start=Date.now();document.addEventListener('DOMContentLoaded', function() { ? ? fetch('some api',{ ? ? ? ? type:'dom complete', ? ? ? ? data:{ ? ? ? ? ? domCompletedTime:Date.now()-start ? ? ? ? } ? ? }) ?}); ?window.addEventListener('load', function() { ? ? fetch('some api',{ ? ? ? ? type:'load complete', ? ? ? ? data:{ ? ? ? ? ? LoadCompletedTime:Date.now()-start ? ? ? ? } ? ? }) ?}); </script>復(fù)制代碼

(5)前端埋點(diǎn)系統(tǒng)的前后端通信加密

在上報(bào)數(shù)據(jù)的前后端通信中,需要和server端協(xié)商加密機(jī)制,利用 OpenSSL庫(kù)來(lái)實(shí)現(xiàn)的加密,OpenSSL已經(jīng)是一個(gè)廣泛被采用的加密算法。前端可以采用node的crypto模塊。

首先來(lái)看hash算法,crypto.createHash() 來(lái)創(chuàng)建一個(gè)Hash實(shí)例,可利用的hash算法如下:

  • md5

  • sha1

  • sha256

  • sha512

  • ripemd160

以sha256算法加密為例:

const str="123445";//需要加密的字段 const hash=crypto.createHash('sha256');//指定加密算法 hash.update(str); //通過(guò)算法加密相應(yīng)的字段 const result=hash.digest('hex');//轉(zhuǎn)化成十六進(jìn)制復(fù)制代碼

四、前端監(jiān)控結(jié)果可視化展示系統(tǒng)的設(shè)計(jì)

當(dāng)后端得到前端上報(bào)的信息之后,經(jīng)過(guò)數(shù)據(jù)分析和處理,需要前端可視化的展示數(shù)據(jù)分析后的結(jié)果。

可以在開源中后臺(tái)系統(tǒng)ant-design-pro的基礎(chǔ)上進(jìn)行二次開發(fā),首先要明確展示信息。展示的信息包括單個(gè)用戶和整體應(yīng)用。

對(duì)于單個(gè)用戶來(lái)說(shuō)需要展示的監(jiān)控信息為:

  • 單個(gè)用戶,在交互過(guò)程中觸發(fā)各個(gè)埋點(diǎn)事件的次數(shù)

  • 單個(gè)用戶,在某個(gè)時(shí)間周期內(nèi),訪問(wèn)本網(wǎng)頁(yè)的入口來(lái)源

  • 單個(gè)用戶,在每一個(gè)子頁(yè)面的停留時(shí)間

對(duì)于全體用戶需要展示的信息為:

  • 某一個(gè)時(shí)間段內(nèi)網(wǎng)頁(yè)的PV和UV

  • 全體用戶訪問(wèn)網(wǎng)頁(yè)的設(shè)備和操作系統(tǒng)分析

  • 某一個(gè)時(shí)間段內(nèi)訪問(wèn)本網(wǎng)頁(yè)的入口來(lái)源分析

  • 全體用戶在訪問(wèn)本網(wǎng)頁(yè)時(shí),在交互過(guò)程中觸發(fā)各個(gè)埋點(diǎn)事件的總次數(shù)

  • 全體用戶在訪問(wèn)本網(wǎng)頁(yè)時(shí),網(wǎng)頁(yè)上報(bào)異常的集合

刪選功能集合:

  • 時(shí)間篩選:提供今日(00點(diǎn)到當(dāng)前時(shí)間)、本周、本月和全年

  • 用戶刪選:提供根據(jù)用戶id刪選出用戶行為的統(tǒng)計(jì)信息

  • 設(shè)備刪選:刪選不同系統(tǒng)的整體展示信息

轉(zhuǎn)載于:https://www.cnblogs.com/liuhao-web/p/9609884.html

總結(jié)

以上是生活随笔為你收集整理的前端监控和前端埋点方案设计--摘抄的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 麻豆传媒网页 | 一级特黄免费视频 | 特黄特色特刺激免费播放 | 国产精品无码免费播放 | 九九热免费视频 | 国产三级第一页 | 国产初高中真实精品视频 | 日本特黄视频 | 日韩av在线一区 | 欧美a级在线 | 亚洲啪啪网址 | 日本一级一片免费视频 | 色人阁视频 | 色小姐av | 久久久久亚洲av成人片 | 成人女同在线观看 | av高清在线观看 | 日本一本视频 | 小柔好湿好紧太爽了国产网址 | 久久女同互慰一区二区三区 | 在线综合网 | 艳母日本动漫在线观看 | 欧美日韩一区二区视频观看 | 日韩不卡高清 | 一级二级在线观看 | 中国少妇无码专区 | 少妇激情一区二区三区视频 | 最近最经典中文mv字幕 | 亚洲大尺度av | 九色蝌蚪9l视频蝌蚪9l视频 | 一本一道无码中文字幕精品热 | 美女国产精品 | 伊人春色网| 中文字幕淫 | 人妻少妇无码精品视频区 | 四季av一区二区凹凸精品 | 韩国无码av片在线观看网站 | 久久福利精品 | 男人看的网站 | 国产真人无码作爱视频免费 | 草草影院在线播放 | 狠狠躁18三区二区一区传媒剧情 | 人人草超碰 | 久久精品国产亚洲av嫖农村妇女 | 欧美成人精品一区二区免费看片 | 午夜伦伦电影理论片费看 | 国产欧美一区二区三区精品酒店 | 黄网在线播放 | 国产午夜在线播放 | 一区二区三区四区精品视频 | 日日夜夜伊人 | 免费av网址在线观看 | 久久九九国产视频 | 国产免费黄色网址 | 色哟哟入口 | 免费在线成人 | 视频在线a | 91网站在线免费观看 | jizz韩国| 台湾佬中文在线 | 国产精品久久久久久三级 | 影音先锋欧美在线 | 吸咬奶头狂揉60分钟视频 | 四虎成人永久免费视频 | 久久丫精品国产亚洲av不卡 | 91爱视频 | 在线观看久草 | 成人av入口 | 91漂亮少妇露脸在线播放 | 少妇视频在线播放 | 日韩avav| 色妞色视频一区二区三区四区 | 亚洲欧美另类综合 | 三级黄色免费网站 | 妓院一钑片免看黄大片 | 久久久久久香蕉 | www麻豆视频| 黄色日韩视频 | 日韩精品在线视频 | 日本不卡二区 | 91美女视频在线观看 | 一区二区三区黄 | ass日本| 国产免费av片在线观看 | 亚洲av毛片成人精品 | 色国产视频 | 日韩激情久久 | 国产精品18久久久久久久久 | 国产天堂资源 | 疯狂少妇 | 97人妻精品一区二区三区软件 | 精品国产成人av在线免 | 亚洲精选久久久 | 欧美大片视频在线观看 | 免费看大片a | 国产精品女同一区二区 | 另类综合在线 | 精品一区二区视频 | 懂色av一区二区三区四区五区 |