成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

網(wǎng)易云音樂(lè)全鏈路埋點(diǎn)管理平臺(tái)建設(shè)

大數(shù)據(jù)
我們圍繞這套埋點(diǎn)方案研發(fā)了配套的埋點(diǎn)管理系統(tǒng),以承載及埋點(diǎn)規(guī)則數(shù)據(jù)管理、埋點(diǎn)設(shè)計(jì)、埋點(diǎn)研發(fā)、埋點(diǎn)測(cè)試、埋點(diǎn)上線等功能,本文主要介紹該平臺(tái)功能及建設(shè)思路。

一、背景

在文章云音樂(lè)曙光埋點(diǎn):還原數(shù)據(jù)理想國(guó)中,我們介紹了曙光埋點(diǎn)項(xiàng)目方案,該方案基于多端一致埋點(diǎn)對(duì)象樹(shù)建設(shè)管理,實(shí)現(xiàn)了統(tǒng)一自動(dòng)化埋點(diǎn)和鏈路追蹤,方案高度還原了大前端埋點(diǎn)的理想狀態(tài)、具備較強(qiáng)通用性和擴(kuò)展性。我們圍繞這套埋點(diǎn)方案研發(fā)了配套的埋點(diǎn)管理系統(tǒng),以承載及埋點(diǎn)規(guī)則數(shù)據(jù)管理、埋點(diǎn)設(shè)計(jì)、埋點(diǎn)研發(fā)、埋點(diǎn)測(cè)試、埋點(diǎn)上線等功能,本文主要介紹該平臺(tái)功能及建設(shè)思路。

二、平臺(tái)現(xiàn)狀介紹

經(jīng)過(guò)前幾期建設(shè),我們已經(jīng)實(shí)現(xiàn)了一個(gè)適配研發(fā)流程的、按版本來(lái)管理的埋點(diǎn)數(shù)據(jù)管理平臺(tái),其核心功能為:

  • 1、承載埋點(diǎn)研發(fā)生命周期
  • 2、承載埋點(diǎn)的元數(shù)據(jù)管理

我們的研發(fā)生命周期如下:

圖片

平臺(tái)在埋點(diǎn)元數(shù)據(jù)管理設(shè)計(jì)如下,參考和學(xué)習(xí)了版本管理工具的功能,并且充分考慮了客戶(hù)端的研發(fā)流程特點(diǎn)

圖片

  • 1、客戶(hù)端每個(gè)大版本需求研發(fā)時(shí),BI對(duì)埋點(diǎn)需求進(jìn)行分類(lèi),建立需求組。可以理解為基于Master CheckOut出了多個(gè)分支。
  • 2、BI在各需求組內(nèi),按埋點(diǎn)需求設(shè)計(jì)埋點(diǎn)。設(shè)計(jì)完成后,平臺(tái)會(huì)計(jì)算出埋點(diǎn)的變更列表,如新增對(duì)象、新增血緣關(guān)系、修改參數(shù)、刪除對(duì)象、刪除血緣關(guān)系。
  • 3、上述變更由BI指派到任務(wù),交由開(kāi)發(fā)處理
  • 4、經(jīng)過(guò)一個(gè)版本迭代開(kāi)發(fā)后,若任務(wù)開(kāi)發(fā)測(cè)試完成處于可上線狀態(tài),會(huì)被打上版本的TAG,并且發(fā)布上線,在Master產(chǎn)生一個(gè)新版本;未完成的任務(wù),則可在后續(xù)版本迭代開(kāi)發(fā)完畢后再上線。

相比版本控制工具,適配研發(fā)流程的版本控制具有以下特點(diǎn):

  • 1、支持部分變更上線:需求內(nèi)的變更可以自由篩選出來(lái)部分上線,可以類(lèi)比為分支內(nèi)提交數(shù)個(gè)文件,可以篩選出幾個(gè)文件單獨(dú)合入Master
  • 2、需要走研發(fā)流程才可上線:每個(gè)埋點(diǎn)變更都擁有獨(dú)立的研發(fā)流程控制和校驗(yàn)。這些流程(設(shè)計(jì)完成->開(kāi)發(fā)->測(cè)試通過(guò))需要走完后,才準(zhǔn)許合入Master。
  • 3、模型更加復(fù)雜:不是簡(jiǎn)單的文本,而是復(fù)雜的層級(jí)對(duì)象結(jié)構(gòu)。

三、我們遇到的問(wèn)題和痛點(diǎn)

在上述研發(fā)流程模式的落地過(guò)程中,我們發(fā)現(xiàn)了以下問(wèn)題和痛點(diǎn):

  • 1、落地質(zhì)量問(wèn)題

漏埋:因?yàn)樯婕拜^多埋點(diǎn)事件、埋點(diǎn)參數(shù)的組合,在某些組合下,埋點(diǎn)沒(méi)有上報(bào)。

錯(cuò)埋:埋點(diǎn)參數(shù)缺失或格式不正確。

歸因錯(cuò)誤:埋點(diǎn)里的歸因字段設(shè)置錯(cuò)誤、不合理。

  • 2、落地效率問(wèn)題
  • 大量重復(fù)埋點(diǎn)代碼編寫(xiě):如果涉及大量對(duì)象埋點(diǎn),埋點(diǎn)工作勢(shì)必成為大量重復(fù)勞動(dòng),影響研發(fā)效率。

  • 埋點(diǎn)進(jìn)行增量變更時(shí),無(wú)法知道改動(dòng)了什么:平臺(tái)只展示了某個(gè)埋點(diǎn)全量信息,并未展示其增量改動(dòng)(沒(méi)有類(lèi)似版本管理工具的Compare視圖)。

  • 3、功能痛點(diǎn)

  • 有一些埋點(diǎn)長(zhǎng)期停留在研發(fā)階段未上線(類(lèi)比于寫(xiě)代碼時(shí)開(kāi)發(fā)分支落后Master多次提交,沒(méi)有去Pull Master獲取最新的主線代碼改動(dòng)),導(dǎo)致這些埋點(diǎn)很可能是過(guò)時(shí)的,如果不進(jìn)行卡點(diǎn)直接上線,就會(huì)導(dǎo)致問(wèn)題

  • 埋點(diǎn)數(shù)據(jù)是按APP+端兩個(gè)維度隔離的,但實(shí)際運(yùn)用時(shí)存在內(nèi)嵌情況,如APP端可內(nèi)嵌WEB端H5頁(yè)面的功能,這種情況下,需要把原本隔離的數(shù)據(jù)進(jìn)行整合,如把部分WEB埋點(diǎn)樹(shù)掛載在APP端樹(shù)上。

針對(duì)以上問(wèn)題痛點(diǎn),平臺(tái)在近半年內(nèi)進(jìn)行了針對(duì)性的解決。

四、埋點(diǎn)質(zhì)量建設(shè)

解決該問(wèn)題的思路為先解決源頭防止增量質(zhì)量問(wèn)題產(chǎn)生,再解決存量質(zhì)量問(wèn)題。

1、建設(shè)實(shí)時(shí)埋點(diǎn)校驗(yàn)功能,從源頭解決埋點(diǎn)質(zhì)量問(wèn)題

客戶(hù)端埋點(diǎn)開(kāi)發(fā)完成后,需要進(jìn)行"實(shí)時(shí)校驗(yàn)",從而對(duì)被指派的埋點(diǎn)任務(wù)進(jìn)行測(cè)試覆蓋,其步驟如下:

  • 客戶(hù)端連接到實(shí)時(shí)校驗(yàn)平臺(tái),平臺(tái)根據(jù)該任務(wù)需求,生成埋點(diǎn)校驗(yàn)樹(shù)
  • 客戶(hù)端上報(bào)日志,平臺(tái)根據(jù)埋點(diǎn)校驗(yàn)樹(shù)進(jìn)行校驗(yàn)
  • 平臺(tái)根據(jù)測(cè)試情況,決定測(cè)試是否通過(guò)

需求范圍內(nèi)有埋錯(cuò):不通過(guò),且可以查看日志看到具體為何不通過(guò),如下圖所示

圖片

需求范圍內(nèi)有漏埋:默認(rèn)不通過(guò),但事實(shí)推進(jìn)落地中,存在部分分支客戶(hù)端難以復(fù)現(xiàn)覆蓋的情況,因此我們也支持了勾選某些分支無(wú)需測(cè)試的功能,如下圖所示

圖片

  • 若測(cè)試為不通過(guò),則將卡點(diǎn)阻塞流程,后續(xù)無(wú)法正常上線

經(jīng)過(guò)實(shí)時(shí)埋點(diǎn)校驗(yàn)功能的上線后,我們封堵住了大部分埋點(diǎn)錯(cuò)誤源頭,達(dá)到了較好效果。

2、建設(shè)線上埋點(diǎn)稽查功能,發(fā)現(xiàn)存量埋點(diǎn)問(wèn)題并推進(jìn)解決

稽查功能定位為企業(yè)日志的統(tǒng)計(jì)分析,解決以下問(wèn)題:

  • 1、分析日志是否按規(guī)則正確輸出,檢測(cè)出少參數(shù)、參數(shù)取值錯(cuò)誤、歸因錯(cuò)誤等問(wèn)題,并對(duì)這類(lèi)問(wèn)題進(jìn)行歸類(lèi),并可進(jìn)一步鉆取,直至能夠看到原始日志的樣本。
  • 2、自定義靈活業(yè)務(wù)統(tǒng)計(jì)監(jiān)控、報(bào)表、報(bào)警。通過(guò)監(jiān)控、報(bào)表中數(shù)值變化報(bào)警來(lái)發(fā)現(xiàn)、輔助定位端上發(fā)版后一些bug。如:某些點(diǎn)位日志變少、PV/UV比例變化等。

為實(shí)現(xiàn)上述功能,需要對(duì)日志進(jìn)行采樣分析計(jì)算(可以理解為打上各種標(biāo)簽),并且將計(jì)算結(jié)果存儲(chǔ)在能夠支持篩選、統(tǒng)計(jì)查詢(xún)功能的數(shù)據(jù)庫(kù)中,為典型的OLAP場(chǎng)景,我們選型時(shí),采用了ClickHouse來(lái)完成這塊功能,其主要考量點(diǎn)如下圖所示

圖片

經(jīng)過(guò)稽查功能上線和推進(jìn),我們的線上埋點(diǎn)錯(cuò)誤數(shù)已經(jīng)下降了95%,并且還在逐漸降低中,達(dá)到了較好的效果。

五、埋點(diǎn)效率建設(shè)

  • 使用模版引擎自動(dòng)生成代碼 上文提到,埋點(diǎn)時(shí)涉及大量重復(fù)埋點(diǎn)代碼編寫(xiě),我們針對(duì)該問(wèn)題使用模版引擎語(yǔ)言自動(dòng)生成埋點(diǎn)代碼,且支持適配了安卓、iPhone、Web、RN等多套客戶(hù)端,把代碼提前生成好,能自動(dòng)填寫(xiě)的部分全部自動(dòng)填寫(xiě),客戶(hù)端復(fù)制代碼后只需要把代碼模版里剩余部分補(bǔ)全即可,如下圖所示

圖片

  • 展示埋點(diǎn)DIFF,讓開(kāi)發(fā)更容易理解埋點(diǎn)改動(dòng)點(diǎn)

我們開(kāi)發(fā)了埋點(diǎn)DIFF功能,相比與版本管理軟件中的代碼文本對(duì)比,埋點(diǎn)元數(shù)據(jù)是一種更加復(fù)雜的數(shù)據(jù)結(jié)構(gòu),因此在服務(wù)端計(jì)算DIFF和前端界面展示DIFF上相對(duì)來(lái)說(shuō)較復(fù)雜一些。如下圖所示,我們通過(guò)在原有界面上通過(guò)背景色來(lái)區(qū)分變更操作是新增、修改、還是刪除。

圖片

六、研發(fā)中埋點(diǎn)自動(dòng)Rebase到最新Master

前文提到,有一些埋點(diǎn)長(zhǎng)期停留在研發(fā)階段未上線,目前沒(méi)有pull master的功能,導(dǎo)致:

  • 1、這些未上線埋點(diǎn)元數(shù)據(jù)很可能是過(guò)時(shí)的,如果直接上線會(huì)導(dǎo)致業(yè)務(wù)問(wèn)題。
  • 2、無(wú)法使用到最新Master下的新增對(duì)象,或者還在使用已刪除對(duì)象

因此我們對(duì)在需求池內(nèi)未上線的研發(fā)階段對(duì)象,每次上線后,都自動(dòng)pull master處理。如下圖所示為一個(gè)未上線需求從安卓8.8.11 Rebase到 安卓8.8.12的過(guò)程,rebase后可能存在部分變更需要?jiǎng)h除或重新研發(fā)。

圖片

rebase算法的核心在于計(jì)算出Master和本研發(fā)分支對(duì)比同一個(gè)基線的原子改動(dòng)列表,并嘗試依次合并,并將合并后的變更應(yīng)用到基線上。其流程圖如下:

圖片

其中變更合并時(shí)的邏輯如下:

圖片

人工沖突解決時(shí),我們采用了上文“展示埋點(diǎn)DIFF”的功能,讓埋點(diǎn)設(shè)計(jì)人員同時(shí)看到兩方改動(dòng),并在界面中錄入最終合并結(jié)果。

七、埋點(diǎn)跨空間打通

云音樂(lè)業(yè)務(wù)存在多個(gè)業(yè)務(wù)線,他們的“埋點(diǎn)空間”是相互獨(dú)立的。但云音樂(lè)存在內(nèi)嵌業(yè)務(wù)的情況,如云音樂(lè)APP下可內(nèi)嵌LOOK直播APP、以及WEB端的H5頁(yè)面等,即使云音樂(lè)APP不發(fā)版,內(nèi)嵌的業(yè)務(wù)的埋點(diǎn)也可能會(huì)發(fā)生變化。因此需要把內(nèi)嵌業(yè)務(wù)對(duì)應(yīng)的的埋點(diǎn)樹(shù)“橋接”到當(dāng)前APP埋點(diǎn)中。針對(duì)這種訴求,我們研發(fā)了“橋梁”模式,如下圖所示:

圖片

  • 橋梁為一類(lèi)特殊對(duì)象,用于銜接父子空間,如圖示為銜接云音樂(lè)APP和WEB H5兩個(gè)獨(dú)立的埋點(diǎn)空間,其中云音樂(lè)APP是父空間,WEB為子空間
  • 橋梁在父空間定義
  • 子空間對(duì)象可設(shè)置掛載在父空間橋梁下
  • 父空間展示埋點(diǎn)樹(shù)時(shí),只關(guān)心到橋梁為止
  • 子空間展示埋點(diǎn)樹(shù)時(shí),會(huì)把橋梁以上所掛載的父空間樹(shù)也展示出來(lái)
  • 內(nèi)嵌開(kāi)發(fā)完畢后,需要使用父空間APP驗(yàn)證子空間的帶橋梁埋點(diǎn)是否正確,其SPM為帶父空間的完整路徑

此外由于埋點(diǎn)按版本管理,因此埋點(diǎn)樹(shù)若變化,必須要在平臺(tái)內(nèi)產(chǎn)生新版本,因此:

  • 子空間發(fā)布,父空間不需要發(fā)布新版本,因?yàn)樽涌臻g埋點(diǎn)樹(shù)對(duì)父空間不可見(jiàn)
  • 父空間發(fā)布,若涉及橋梁更改,則會(huì)改變子空間埋點(diǎn)樹(shù),此時(shí)需要在子空間同步發(fā)布一個(gè)新版本

八、未來(lái)規(guī)劃

在埋點(diǎn)領(lǐng)域中,除了純客戶(hù)端埋點(diǎn),還有服務(wù)端埋點(diǎn),以及雙端共同完成的混合埋點(diǎn),常見(jiàn)的混合埋點(diǎn)包括:

  • 服務(wù)端下發(fā)的字段,客戶(hù)端需要打到客戶(hù)端埋點(diǎn)里
  • 客戶(hù)端上報(bào)的字段,服務(wù)端需要打到服務(wù)端埋點(diǎn)里

此類(lèi)需求廣泛存在,但未在本平臺(tái)上進(jìn)行管控,其流程、效率、效果是不可控、不可監(jiān)控的,后續(xù)平臺(tái)將把服務(wù)端埋點(diǎn)及服務(wù)端+客戶(hù)端混合埋點(diǎn)也平臺(tái)產(chǎn)品化并進(jìn)行管控。

圖片

此外,網(wǎng)易云音樂(lè)全鏈路埋點(diǎn)管理平臺(tái)前后端、客戶(hù)端SDK等組件都將在近期貢獻(xiàn)到開(kāi)源社區(qū),為業(yè)界帶來(lái)更大價(jià)值。

責(zé)任編輯:龐桂玉 來(lái)源: 網(wǎng)易有數(shù)
相關(guān)推薦

2023-02-08 19:32:27

大數(shù)據(jù)

2022-01-04 17:08:02

全鏈路觀測(cè)平臺(tái)

2023-07-07 07:27:14

全鏈路虎牙APM

2024-03-13 08:56:17

全鏈路壓力測(cè)試

2022-12-12 08:00:00

人工智能網(wǎng)易云音樂(lè)算法平臺(tái)研發(fā)

2023-11-21 07:14:43

埋點(diǎn)大數(shù)據(jù)

2013-03-04 10:57:01

網(wǎng)易云音樂(lè)

2023-12-13 18:46:50

FlutterAOP業(yè)務(wù)層

2023-06-12 07:44:21

大數(shù)據(jù)數(shù)據(jù)治理

2023-01-30 22:34:44

Node.js前端

2024-01-05 00:29:36

全鏈路灰度發(fā)布云原生

2024-09-06 12:24:19

2017-03-24 17:55:47

互聯(lián)網(wǎng)

2023-09-13 07:19:46

數(shù)據(jù)開(kāi)發(fā)平臺(tái)治理平臺(tái)

2014-10-10 16:04:01

網(wǎng)易云音樂(lè)Mac版

2017-03-24 18:38:40

互聯(lián)網(wǎng)

2013-05-13 11:12:22

云音樂(lè)云應(yīng)用

2023-11-13 10:41:44

Spring微服務(wù)

2023-10-16 23:43:52

云原生可觀測(cè)性
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 日韩免费av | 精品视频在线观看 | 中文字幕一级毛片视频 | 99视频在线免费观看 | 亚洲色图插插插 | 成人高清视频在线观看 | 国产精品久久久久一区二区三区 | 拍戏被cao翻了h承欢 | 亚洲精品亚洲人成人网 | 成人在线小视频 | 国产精品视频二区三区 | 日韩福利 | 中文亚洲视频 | 亚洲情侣视频 | 久久精品亚洲精品国产欧美 | 99re热精品视频国产免费 | 成人在线国产 | 午夜影院在线观看版 | 国产精品999 | 国产精品一区二区三区在线 | 亚洲一区二区视频 | 国产精品一区二区久久精品爱微奶 | 久久久久久国模大尺度人体 | 在线 丝袜 欧美 日韩 制服 | 久久一二 | 免费毛片网 | 国产日产欧产精品精品推荐蛮挑 | 成人精品鲁一区一区二区 | 久久综合久久久 | 国产精品中文在线 | 97热在线| www.日韩 | 中文字幕二区 | 国产精品伦一区二区三级视频 | 色999日韩| 午夜小电影 | 国产精品一区在线 | 男女羞羞在线观看 | 国产精品久久久久久久久久久新郎 | 免费观看一区二区三区毛片 | 久久机热 |