如何借用第三方APM工具, 爲移動應用保駕護航

​做者:友盟+U-APM 項目組算法

移動應用的穩定性、性能與體驗十分重要,直接影響着用戶對產品自己的體驗。根據友盟+《2021年Q1移動應用性能體驗報告》顯示,目前移動應用總體崩潰率爲 0.29%,其中 Android 端崩潰率爲0.32%, iOS 端崩潰率爲0.10%。當某款應用iOS的崩潰率超過0.8%、Android崩潰率超過0.4%時,活躍用戶將呈現明顯的降低態勢。segmentfault

頁面加載速度也會對客戶滿意度帶來影響。頁面響應時長每增長一秒,用戶滿意度就將下降16%,而若是頁面響應時長超過3秒,部分用戶甚至會直接退出。微信

基於上述數據,對目前市面上的App而言,其崩潰率需低於0.10%,方能達到優秀標準。
架構

不一樣的行業基於產品形態、技術架構不一樣,其應用崩潰率也存在差別。以遊戲行業爲例,其行業性質特殊,加之遊戲產品自己也較爲複雜,因此崩潰率遠遠高於其餘行業。而新聞、影音、閱讀等應用則相對崩潰率較低。此外,不一樣日活量級的App,應用崩潰率也良莠不齊。日均活躍用戶數量超500萬的經常使用App,崩潰率大多低於0.1%;而日均活躍用戶數量較低的C端App,基於各方面的緣由,穩定性表現則相對較差,某些App崩潰率甚至高達3%、4%。工具

但不論所處行業是否相同,產品用戶體量是否一致,保證產品穩定性都應以業務效果、業務數據爲落腳點。想要有穩定的性能體驗,就要將其加入到產品的研發階段、測試階段、灰度階段以及全量階段,並從中找到業務與應用性能穩定性的平衡點。性能

知之非艱,行之唯艱。選取合理的平衡點並不是易事,在此過程當中,項目團隊既要保業務,又要保時間,對團隊來講,這是極大的挑戰。測試

移動應用的共性問題人工智能

要解決問題,首先要知道問題所在。當前移動應用面臨着許多共性問題,例如Android市場的碎片化,以及崩潰問題的定位困難,相似的共性問題雖然具體,卻難以輕易解決。url

以友盟+ U-APM曾經服務過的客戶爲例,其App被用戶反饋頁面加載緩慢,但這並不屬於崩潰,緣由也難以定位。除此以外,由內存泄漏等緣由形成的崩潰問題,測試階段並不能全面覆蓋和發現,這對上線後的實時採集和問題復現有着極高要求,其中涉及多個技術難點,亟需高效便捷的應對解決。spa

首先是採集方面。通常來講,上線後的應用須要具有多種基礎核心採集能力,以採集Android系統中Java層的崩潰與Native層崩潰,以及iOS系統中的Objective-C層或Swift層崩潰。除此以外,還需具有捕獲ANR、自定義異常、卡頓等的能力。

要想全面捕獲與採集種類繁多的問題並不容易,相似設備重啓環境下的異常類型崩潰與設備兼容性所產生的崩潰問題,就難以被常規方式所採集。同時,對於用戶使用Android APP 過程當中出現的提示應用無響應的ANR問題,傳統讀取系統trace日誌的方式,並不能將其全面捕獲。

其次是聚類方面。要將不一樣類別錯誤、不一樣版本、新舊問題聚合到一塊兒,中間還存在着重重困難。

另外,在崩潰等問題修復中存在這樣的問題:應用崩潰每每會重複性出現。老版本解決了的問題,卻又在新版本出現,在反覆修復重複問題後,發現過往崩潰異常緣由與最終解法可沉澱繼承比例,竟高達70%、80%。

上述狀況的產生,主要源於團隊內部的人員流動所致使的信息交換效率太低。某些研發人員面對問題時,極可能會覺得該問題已被本身或他人解決,卻不知,問題依然存在。

在採集與聚類以外,還有測試方面的問題。

目前,大部分研發測試團隊存在有產品快速適配特定設備的需求的同時,還會常常收到來自客戶即時的App崩潰反饋,二者每每都須要調用真機參與測試。在移動應用端,真機測試是許多測試人員使用最多的場景。但傳統真機測試流程相對繁瑣,效率所以較低。

針對上述多種問題,友盟+整合了產研實踐過程當中應用性能問題的採集、監控、發現、流轉、定位,以及測試環節,將其沉澱輸出爲「U-APM應用性能監控平臺」,以解決產研團隊在整個開發週期與線上運營階段所面臨的諸多痛點。

U-APM:保障移動應用穩定性的強力工具

U-APM 做爲免費的一站式應用性能監控平臺,集App穩定性監控、性能監控和雲真機測試平臺爲一體,很大程度上能解決移動應用的共性問題。

以採集爲例,U-APM可以捕獲包括產品信息、設備層與環境層的運行狀態等信息,從而快速地分析出致使App崩潰的主要緣由。針對ANR,U-APM經過監控整個系統信號,抓取事件並生成相應的日誌信息以後,再吐還給信號,從而顯著提升了系統ANR的捕獲率,以快速定位錯誤根源。

而針對問題聚類和智能診斷,U-APM則是參考了阿里集團內部的聚合算法和過往經驗,將所發現問題的沉澱緣由、曾經的解法等相關信息匯聚爲方案交由研發人員的思路,將錯誤摘要相同的錯誤日誌所聚合並展現其詳細信息,以幫助產研團隊快速定位問題、解決問題。

另外,面向測試環節,U-APM雲真機在提供ADB調試、WEB遠程調試、掃碼、抓包等常規測試功能以外,更是提供了海量 Android 、iOS 真機,以知足測試人員發版前測試、復現問題等真機測試需求。與此同時,真機若是在線上發生崩潰問題,U-APM會自動採集崩潰信息,提供詳盡的崩潰報告協助開發、測試人員篩查,從而幫助他們找到測試階段產生的崩潰緣由,節約大量購機成本的同時,還顯著提高了效率,真正實現監控測試全流程深度打通。

基於保證業務的出發點,從始至終都應圍繞談論效率,這種對效率的執着,也反映在了U-APM的內部流起色制上面。內部流轉基本分爲兩層:

第一層是從問題識別到監控流程的通知到位。除釘釘外,U-APM還支持郵箱、企業微信、飛書等多種觸達方式。

第二層則是以集成內部項目軟件或API的方式,將具體的崩潰問題直接流轉給相應的技術同窗進行排查

值得一提的是,U-APM同時對阿里內部和外部開放,自U-APM平臺落地以來,阿里內部的諸多產品都在使用。基於U-APM出色的產品力,其支持的App總體崩潰率水準都可低於0.10%這一優秀標準,在研發效能上也有提高3倍(300%)效果。

自去年U-APM對全部開發者免費開放後,爲開發者帶來10%-40%的效率提高。目前,U-APM已對外服務超2萬款應用,以及應用背後的上萬家客戶。

埃利德·尤德考斯基(Eliezer Yudkowsky)曾說過:「任何能帶來優於人類智能的東西,(其形式可能爲人工智能,人腦-計算機交互界面,基於神經科學的人類智能提高),都會在改變世界的競賽中佔據領先地位。再沒有什麼能與此相提並論。」而在數智化日新月異的當下,U-APM更像是新時代的智能警察,爲優質的用戶體驗保駕護航。

點擊體驗:友盟+U-APM:https://www.umeng.com/apm?&ut...

相關文章
相關標籤/搜索