在Web開發(fā)過程中,Web端數(shù)據(jù)采集主要通過三種方式實現(xiàn):服務(wù)器日志、URL解析及JS回傳。
1.服務(wù)器日志:指Web服務(wù)器軟件,例如Httpd、Nginx、Tomcat等自帶的日志,例如Nginx的日志等;2.URL解析:指訪問服務(wù)器時,將URL信息及攜帶的參數(shù)進行解析后,上傳服務(wù)器,例如在進行數(shù)據(jù)搜索官網(wǎng)地址時,我們可以獲得本次用戶搜索的內(nèi)容search為“iphone”;
3.JS回傳:指在Web頁面上添加的各類統(tǒng)計插件,通過在頁面嵌入自定義的Javascript代碼來獲取用戶的訪問行為(比如鼠標懸停的位置,點擊的事件等),然后通過Ajax請求到后臺記錄日志。 前端埋點大致分為:代碼埋點、可視化埋點、無痕埋點三種,webfunny前端埋點主要是代碼埋點方案。前端埋點數(shù)據(jù)采集平臺報價
為什么需要埋點和前端監(jiān)控?當我們在分析復(fù)盤一個產(chǎn)品是否成功的時候,產(chǎn)品、技術(shù)、業(yè)務(wù)運營方都會有自己對應(yīng)的分析層面,那不同的角色考慮的方向是不同的。
站在產(chǎn)品的視角,經(jīng)常會問如下幾個問題:1.產(chǎn)品有沒有用戶使用;2.用戶用得怎么樣;3.系統(tǒng)會不會經(jīng)常出現(xiàn)異常;4.如何更好地滿足用戶需求服務(wù)用戶;
當站在技術(shù)視角時,經(jīng)常會問如下幾個問題:1.系統(tǒng)出現(xiàn)異常的頻率如何;2.異常出現(xiàn)后如何快速進行定位追蹤;3.如何分析解決問題;
而當站在老板的視角時,問題可能又會變?yōu)椋?.我的存量用戶多少,未來還有多少潛力;2.多少用戶在系統(tǒng)內(nèi)進行了消費。
當在回答了上述問題之后,埋點和監(jiān)控兩者的作用便躍然紙上。因為要回答以上問題,只有通過對系統(tǒng)進行數(shù)據(jù)分析的方式才能弄清楚。其實無論是前端埋點還是前端監(jiān)控,二者并不是分開存在,而是相互依存的關(guān)系。 前端埋點頁面埋點方案如何搭建前端監(jiān)控和前端埋點sdk。
埋點本身現(xiàn)在已經(jīng)有太多的集成解決方案,如webfunny、神策、GIO等平臺,但是在實踐的過程中仍然還是會碰都很多問題,給前端埋點同學分享下:埋點實踐過程中碰到的坑點。
①前后端埋點不一致的問題前端請求服務(wù)端的數(shù)據(jù)大多是存在binlog里面的,數(shù)據(jù)日志同步解析的過程里面可能會存在丟包的可能性,數(shù)倉的穩(wěn)定性也會影響數(shù)據(jù)質(zhì)量;后端服務(wù)信息存儲的數(shù)據(jù)是存在mysql,表字段結(jié)構(gòu)化,分多表存儲,需要靠主鍵進行關(guān)聯(lián),有大量的ETL過程。兩者之間可能因為數(shù)據(jù)清洗、處理、實時技術(shù)等原因,造成數(shù)據(jù)差異化;
②自埋點和第三方應(yīng)用統(tǒng)計口徑的問題自埋點一般都會定義一個id作為區(qū)分用戶的標志,但是第三方是缺少用戶屬性信息的判斷,一般會以設(shè)備號uuid/imse,或者IP地址段、mac地址段作為區(qū)分標志,從而造成統(tǒng)計數(shù)據(jù)上的差異化,對于留存分析、轉(zhuǎn)化分析、流失分析需要用到明細數(shù)據(jù)的場景,可兼容性不是很友好;
有不少開發(fā)人員認為埋點不分前端和后端的,也不分客戶端,只要有需求要對某段代碼進行分析或者性能上的要求就會有埋點。
埋點就是插入一段跟現(xiàn)在業(yè)務(wù)邏輯毫無相干的代碼進行某些數(shù)據(jù)收集,通過對于這些數(shù)據(jù)進行分析,我們可以得到很多有用的信息。前端埋點在性能要求很高的網(wǎng)站大量普及,比如說淘寶,京東等等日入訪問可達百萬甚至千萬級別的網(wǎng)站,對于這些網(wǎng)站進行埋點是非常有必要的。
通常來說,埋點階段是在頁面onLoad階段即一旦頁面加載完所有內(nèi)容,就會執(zhí)行這段數(shù)據(jù)。也可以根據(jù)不同的業(yè)務(wù)邏輯進行代碼處理。 前端埋點活躍用戶分析。
前端埋點和后端埋點的區(qū)別?
在實際過程中,有些埋點是不用特意區(qū)分前后端的,用戶的一個埋點事件在前端埋點或后端埋點都可以實現(xiàn),但是需要注意的是,在實際埋點上報、數(shù)據(jù)收集等過程中會有數(shù)據(jù)丟失的情況,從這個角度來看的話,其實后端埋點要比前端埋點更有優(yōu)勢,前端埋點會因為一些網(wǎng)絡(luò)問題、適配問題等等容易出現(xiàn)上報異常造成數(shù)據(jù)丟失且丟失后排查困難,因為前端相關(guān)的是沒有記錄相關(guān)操作的,只負責上報,上報成功與否沒有記錄。
而如果是后端埋點,無論是自己的數(shù)據(jù)系統(tǒng)還是第三方數(shù)據(jù)系統(tǒng)都是可以通過自己系統(tǒng)本身相關(guān)的數(shù)據(jù)庫查詢或記錄日志等操作進行埋點數(shù)據(jù)的校驗排查,所以針對一些比較重要的埋點,還是建議以后端埋點為主,必要時通過記錄日志或記入數(shù)據(jù)庫等方式對相關(guān)數(shù)據(jù)進行二次記錄以便進行數(shù)據(jù)核實。 可視化埋點即以業(yè)務(wù)代碼為輸入,通過可視化系統(tǒng)配置埋點,以耦合的形式輸出業(yè)務(wù)代碼和埋點代碼。如何實現(xiàn)前端埋點和前端監(jiān)控平臺
大數(shù)據(jù)時代數(shù)據(jù)的重要性不言而喻,而其中關(guān)鍵重要的就是用戶信息的采集。前端埋點數(shù)據(jù)采集平臺報價
代碼埋點方案是通過使用第三方sdk埋點,如:百度統(tǒng)計、webfunny、Analytics、觀縱科技等都提供了這一方案。使用相對簡單,在APP或者界面初始化的時候,初始化第三方數(shù)據(jù)分析服務(wù)商的SDK,然后在某個事件發(fā)生時就調(diào)用SDK里面相應(yīng)的數(shù)據(jù)發(fā)送接口發(fā)送數(shù)據(jù)。
例如,我們想統(tǒng)計APP里面某個按鈕的點擊次數(shù),則在APP的某個按鈕被點擊時,可以在這個按鈕對應(yīng)的OnClick函數(shù)里面調(diào)用SDK提供的數(shù)據(jù)發(fā)送接口來發(fā)送數(shù)據(jù)。除此針對特定需求也可以統(tǒng)一封裝數(shù)據(jù)上報通用sdk,各頁面各業(yè)務(wù)模塊按需調(diào)用,同時埋點的形式也是多種多樣的。 前端埋點數(shù)據(jù)采集平臺報價
上海觀縱科技有限公司致力于傳媒、廣電,以科技創(chuàng)新實現(xiàn)高質(zhì)量管理的追求。觀縱科技作為傳媒、廣電的企業(yè)之一,為客戶提供良好的webfunny前端監(jiān)控,webfunny前端埋點,全鏈路應(yīng)用性能監(jiān)控,Argus-IT運維監(jiān)控。觀縱科技致力于把技術(shù)上的創(chuàng)新展現(xiàn)成對用戶產(chǎn)品上的貼心,為用戶帶來良好體驗。觀縱科技創(chuàng)始人姜應(yīng)偉,始終關(guān)注客戶,創(chuàng)新科技,竭誠為客戶提供良好的服務(wù)。