支援多種小程式!阿里雲ARMS推出小程式監控

weixin_33766168發表於2019-02-19

2018年是小程式蓬勃發展的一年,各大公司如騰訊、阿里、百度、頭條等都陸續推出了自己的小程式,小程式已成為一個未來必然的趨勢、移動網際網路的新風口。據資料統計,目前已上線的微信小程式已超過100萬,支付寶小程式、釘釘E應用、百度智慧小程式、頭條小程式等也在不斷髮力。由於小程式具有:無需下載、觸手可及、用完即走、無需解除安裝的特性,所以使用者體驗對於小程式來說非常重要,一旦出現小程式卡頓,緩慢和錯誤,需要及時發現並修復,否則使用者流失的概率會非常大。

小程式與H5的不同

小程式和H5都屬於移動端場景下的技術選擇方案,那麼這裡介紹一下小程式與H5的不同。

1. 執行環境的不同

  • 傳統的H5的執行環境是瀏覽器,包括webview,其中瀏覽器提供window、document等BOM物件;

  • 小程式的邏輯層和渲染層是分開的,邏輯層執行在JSCore中,並沒有一個完整的瀏覽器物件,所以缺少相關的DOM API和BOM API。

2. 開發成本的不同

  • H5的開發,涉及到開發工具、前端框架、模組管理工具、任務管理工具、UI庫的選擇、介面呼叫工具及瀏覽器相容性等;

  • 小程式的開發,指定環境的小程式會提供開發者工具、API及規範的開發標準。由於小程式是跑在指定的環境下的,同時API是指定環境下提供的,所以不用考慮瀏覽器的相容性。

在H5開發中,前端常用的HTML/CSS在不同的小程式中都有指定的檔案標準。例如:

  • 在微信小程式中使用WXML/WXSS;

  • 在支付寶小程式、釘釘E應用中使用AXML/ACSS;

  • 在百度智慧小程式中使用SWAN/CSS;

開發規範在指定的官方文件中都會有明確的使用介紹,使用方法與原來H5的開發大同小異,所以上手開發相對容易。

3. 使用體驗的不同

  • H5頁面需要在瀏覽器中渲染,在複雜的業務邏輯或者豐富的頁面互動時會有卡頓情況;

  • 小程式除首次使用略慢,頁面切換及跳轉等非常順滑,接近Native。

通過以上幾點小程式和H5的不同的介紹,我們可以發現原來針對H5頁面的監控無法直接監控小程式;同時由於小程式封閉性較強,不同的小程式在標準上也略有不同,如微信小程式、支付寶小程式及釘釘E應用等等小程式在使用標準及開放的API方面也會有一些差異,所以針對小程式的監控與針對Web應用的監控會有所不同。

小程式監控的現狀

現在針對小程式監控的大概分為以下幾類:

1. 小程式的資料統計分析,助力小程式運營

  • 相關產品: 微信小程式助手、阿拉丁小程式統計平臺等;

  • 特點:大部分是針對微信小程式提供相應的資料統計分析能力,從多維度分析小程式相關使用者資料,適用於小程式運營,但缺乏對於使用者體驗,小程式效能的監控。

2. 小程式錯誤監控

  • 相關產品: FunDebug等;

  • 特點:監控小程式使使用者出現的錯誤,幫助開發者發現並解決小程式錯誤,但缺乏對於小程式全域性效能的監控,對於緩慢請求,緩慢頁面沒法監測。

3. 小程式效能監控

  • 相關產品: FrontJS、聽雲小程式監控等;

  • 特點:主要提供效能相關資料,包括JS錯誤、網路請求響應情況等。但是隻支援微信小程式,而且沒有辦法把小程式的效能與後臺應用的效能關聯起來,沒法形成端到端的監控。

通過上面對現有的小程式監控產品分析,存在以下問題:

  1. 無法支援所有的小程式監控,主要支援微信小程式

  2. 支援多類小程式監控的產品,提供的小程式相關資料較少,主要集中在錯誤監控

  3. 沒有後臺應用服務的效能監控,無法從小程式上的效能問題追溯到後臺應用程式碼和資料庫,無法形成端到端的監控

基於以上情況,阿里雲ARMS前端監控重磅推出小程式監控,旨在幫助端到端的快速定位小程式問題,提升小程式的使用者體驗。

提供的能力

阿里雲ARMS前端監控此次重點推出的小程式監控有以下特點:

1. 覆蓋各類符合標準規範的小程式

首先解釋一下這裡所說的\u0026quot;標準規範的小程式\u0026quot;,即包含App和Page兩層:

  • App用來描述整體程式,包含: onError事件;

  • Page用來描述各個頁面,包含: onShow、onHide、onUnload事件。

小程式的執行環境依賴於對應的客戶端,各類小程式的DSL設計看起來很像,但細節上的差別還是比較多,並且已有了分化的趨勢。在這種情況下,阿里雲ARMS前端監控為了更好的支援小程式的監控訴求,提供以下小程式監控的場景:

  1. 微信小程式

  2. 支付寶小程式

  3. 釘釘E應用

  4. 其他類別小程式

由於小程式發展迅速,現在無法針對各類小程式都提供對應的監控SDK,所以不屬於微信小程式、支付寶小程式和釘釘E應用的小程式可選擇其他類別小程式的場景接入進行監控,但要滿足上面說的\u0026quot;標準規範的小程式\u0026quot;前提,同時支援npm包。

2. 完善的效能監控指標

  1. 基礎業務指標,幫助瞭解小程式應用的使用情況

    • 應用總PV/UV
    • 頁面維度的PV/UV
  2. 小程式各維度指標

    • 手機型號
    • 作業系統版本
    • 微信/支付寶等相應的APP版本
    • 網路等
  3. JS錯誤分析

    • JS錯誤率、錯誤聚類、JS錯誤堆疊及錯誤定位等
  4. API請求追蹤

  • API請求成功率、API請求耗時及API請求的鏈路追蹤
  • 自定義事件統計
  • 支援業務上自定義事件sum/avg統計

3. 可通過配置選擇上報方式

由於業務方使用監控的訴求不同,我們不僅支援優雅的靜默資料上報,也支援使用開放的統計能力進行自定義上報。具體可檢視官網的前端監控接入概述中的小程式場景相關文件:

https://help.aliyun.com/document_detail/106086.html

總結

小程式作為各大網際網路公司重磅加持的方向,未來小程式的應用數量會越來越多,那麼對於使用者體驗方面的關注與提升訴求也會不斷增加,阿里雲ARMS前端監控提供的小程式監控可幫助客戶實時監控發現質量問題,為企業的小程式的穩定執行提供堅實的保障。

附錄:

更多內容,請關注前端之巔。

\"\"

會議推薦

2019年6月,GMTC全球大前端技術大會2019即將到來。小程式、Flutter、移動AI、工程化、效能優化…大前端的下一站在哪裡?點選下圖瞭解更多詳情。

\"\"

相關文章