監控大廳是 anyRTC 為企業和開發者提供的全周期通話質量監測、回溯和分析的解決方案,致力于幫助企業和開發者及時發現問題、定位原因,并最終解決問題,提升用戶體驗,該產品讓企業和開發者能夠全面了解到自己終端用戶使用體驗的大資料分析產品,我們希望通過監控大廳,為企業和開發者提供安全、省心的實時音視頻互動體驗,
做一個監控大廳面對的挑戰
要做到這種質量工具有很多技術挑戰,我們總結后有如下幾點:
第一是資料的收集
我們的通話分布在全球各個地方,運行時的指標需要從各地用戶的設備上去收集,我們的傳輸網路覆寫了全球各個國家和地區,我們也需要從這些節點去收集終端用戶的網路狀態資訊,目前我們基本上全球用戶的通話狀態資料都能夠很好地收集上來,也就是說,除了做到本身的實時傳輸作業之外,必須還有一套全球的可靠的資料收集網路,
第二是資料整合
我們收集的這些資料比較分散,包含 SDK 在客戶終端的使用,通話的網路傳輸質量資訊,還有發送端與接收端的通信質量、設備狀態等資訊,我們要實作問題的分析診斷,就需要將這些資料放在相同的“頁面”去分析,要將資料關聯起來,所以最大的一個挑戰就是如何將這么龐大的資料整合起來,
第三就是資料規模
我們現在每天要處理非常龐大的資料資訊,這些資料是對平臺的一個挑戰,不僅要把每天的資料存盤下來,還要實時接收下來,并進行及時處理,因為很多用戶都是需要在發現問題時就進行調查,
第四是實時資料檢索
除了運行指標,還有很多通話資訊、用戶設備型號等資訊,我們需要讓開發者能通過這些資訊能夠快速檢索,來檢測出現問題的是哪一通通話,從而解決用戶的質量問題,
音視頻質量分析流程

質量分析的路徑分為協調客服解決和自主解決,兩者的解決方式的路徑不同,但是調查程序是一致的,都是經過監控大廳去調查全鏈路的音視頻質量資料進行分析得出,
協調客服解決: 把有問題的頻道 ID,以及用戶 ID 給到客戶,客戶根據后臺的 監控大廳 去調取有問題用戶的全鏈路資料進行分析給出結論,
自主解決: 登錄anyRTC 控制臺,點擊 監控大廳,根據時間、頻道 ID 或用戶 ID 獲取通話串列,從某一具體通話作為入口,查看頻道內各用戶的發布和訂閱情況、設備情況、音畫質量情況、用戶事件等資訊,通過以上資訊基本可以判斷用戶通話體驗如何、發生了什么問題,什么原因導致,
查詢入口

根據接收端視角,找到對應的發生故障的兩個用戶

發送端跟接收端的兩個用戶的全鏈路資料問題分析
質量資料包括
- 音視頻發送/接收碼率
- 設備性能,包括系統 CPU 使用率,記憶體使用率
- 本地采集音量和遠端播放音量
- 音視頻發送/接收幀率
- 視頻發送/接收解析度
- 視頻上行和下行端對端的丟包率
- 音視頻卡頓分鐘數
- 用戶行為事件,比如網路切換、切換解析度、開關音視頻模塊等
在用戶問題追蹤上,通過分析上面的資料點可以涵蓋 98% 的問題事項,我們監控大廳也是基于上述的全鏈路資料點進行追蹤資料,只需要觀看幾個指標即可得出用戶的問題所在,
當少數的客戶出現質量問題的時候,可通過 分析網路情況 和 查看設備狀態 兩個方面進行分析:
網路丟包
由網路引起的音視頻質量一般查看丟包率和卡頓率即可,一般丟包率 < 5% 視為通信良好,>5% 則為不佳,> 10% 或者次序性丟包則為當前網路存在較嚴重的阻塞,
碼率
正常情況下,視頻和音頻的碼率是上下波動范圍 ±10% 以內的曲線,若出現碼率突降,或是 >30% 以上的波動情況,則表示當前網路出現阻塞或抖動,

幀率
正常情況下,視頻幀率通常 ≥15 幀并且保持穩定, 當幀率出現大于 5 幀的上下波動,或者幀率掉落到 10 幀以下且持續不回升,通常是當前網路出現阻塞或抖動, 用戶從主觀上會感覺到卡頓,

CPU 占用率
CPU 占用率會顯示出系統總體的 CPU 占用率及 App 的 CPU 占用率,正常情況下系統總體的 CPU 占用率 <50%,越低越好,當系統總體的 CPU 占用率 >85% 時,容易出現程式無回應或回應慢的情況,此時會以紅線展示,

音量大小
- 音頻采集音量是發送端從麥克風拿到資料的音量大小,采集音量大小有數值波動說明麥克風在正常采集聲音,即設備作業正常,
- 音頻播放音量是接收端解碼渲染資料后送揚聲器的音量大小,播放音量大小有數值波動說明 SDK 已經送聲音到揚聲器,即 SDK 作業正常,
解析度
解析度作為輔助資訊,如果發送端解析度不穩定,可能會存在一些播放器兼容問題如畫面卡頓、花屏等,
用戶行為事件
用戶行為事件以柱狀圖形式展現,分為正常事件、一般事件和嚴重事件,通常情況下是用來輔助定位軟體問題和分析 bug,通過分析用戶使用的操作步驟,復現相應的場景,

常見問題
在實時通信場景下會有各種事件的發生,我們經過了整理和篩查后發現,一般有這么幾類:
-
設備問題,如型號老舊、系統兼容性差、故障,
-
網路環境問題,如終端用戶帶寬因過低,
-
集成問題,如錯誤的 API 呼叫、API 呼叫順序問題等,
-
終端用戶誤操作問題,如用戶關閉音視頻模塊等,
-
anyRTC 服務問題,如 SDK 或 實時傳輸網路 的 bug 或其它問題
監控大廳給了業務一個基本的判定問題的依據,極大提升了問題解決的作業效率;開發者運維人員結合監控大廳分析結果我們可以主動診斷用戶設備和網路情況,給予用戶改進建議,提升產品服務質量,
監控大廳的意義就在于為應用開發的程式員們提供了一個測量儀,可以隨時準確掌握實時通信中的每一個細節,讓整個產品體驗更有保障,目前,我們已經推出了這個工具,并希望以后能把更多質量資料和更智能化的質量分析服務充分提供給開發者們,
P.S. 開發者在anyRTC (anyrtc.io)登錄賬號后,可以免費使用監控大廳這個工具,歡迎各位 RTC 技術開發者、技術愛好者在 anyRTC 公眾號多多提意見和建議,我們會為方便大家使用而不斷改進,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/286713.html
標籤:其他
