国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 課堂 > 小程序 > 正文

監(jiān)控微信小程序中的慢HTTP請求過程詳解

2020-03-21 15:52:44
字體:
供稿:網(wǎng)友

Fundebug 的微信小程序監(jiān)控插件在 0.5.0 版本已經(jīng)支持監(jiān)控 HTTP 請求錯誤,在小程序中通過wx.request發(fā)起 HTTP 請求,如果請求失敗,會被捕獲并上報。時隔一年,微信小程序插件已經(jīng)更新到 1.3.1, 而且提供了一個非常有用的功能,支持監(jiān)控 HTTP 慢請求。對于輕量級的性能分析,可以說已經(jīng)夠用。

本文我們以一個天氣微信小程序為例(由bodekjan開發(fā)),來演示如何監(jiān)控慢請求。bmap-wx.js中的weather()函數(shù)調(diào)用百度地圖小程序 api 提供的接口來獲取天氣預(yù)報信息。

監(jiān)控,微信小程序,HTTP請求

接入監(jiān)控

由于使用百度的 api,我們無法確認該接口的穩(wěn)定性,可能有時候會特別慢,導(dǎo)致天氣信息顯示不出來。于是,我們使用 Fundebug 來監(jiān)控請求過慢的情況。接下來,我們來演示如何監(jiān)控慢請求。注冊賬戶后,記得要在創(chuàng)建項目是選擇“微信小程序”這一項目類型。

監(jiān)控,微信小程序,HTTP請求

根據(jù)指示完成接入流程:

監(jiān)控,微信小程序,HTTP請求

在app.js頂部加入下面的代碼(記得將 apikey 替換成你自己的):

var fundebug = require("./utils/fundebug.1.3.1.min.js");fundebug.init({  apikey: "YOUR-API-KEY",  monitorMethodCall: true,  monitorMethodArguments: true,  monitorHttpData: true,  setSystemInfo: true,  setUserInfo: true,  setLocation: true,  httpTimeout: 200});

雖然init()函數(shù)只要設(shè)置apikey即可使用,但是為了最大程度發(fā)揮監(jiān)控的威力,我們不妨多設(shè)置一些監(jiān)控選項。

微信小程序插件有很多的可配置項,由于涉及到數(shù)據(jù),默認處于關(guān)閉狀態(tài)。我們可以監(jiān)控函數(shù)調(diào)用(monitorMethodCall),以及函數(shù)調(diào)用的參數(shù)(monitorMethodArguments),監(jiān)控 HTTP 請求的 Body 中的數(shù)據(jù)(monitorHttpData),獲取系統(tǒng)信息(setSystemInfo)、用戶信息(setUserInfo)、地理位置(setLocation)。

監(jiān)控慢請求

最后,最重要的一步,配置httpTimeout來監(jiān)控超過特定時長的請求,httpTimeout 類型為 Number,單位為毫秒(ms)。演示起見,我們將時間設(shè)置為 200 毫秒。

在微信開發(fā)者工具內(nèi)運行代碼,F(xiàn)undebug 立馬收到報錯。小程序發(fā)往https://api.map.baidu.com/telematics/v3/weather接口的請求時長為 571ms,超過預(yù)設(shè)時間 200ms。

監(jiān)控,微信小程序,HTTP請求

錯誤詳情

該請求返回代碼 200,表明能夠正常獲取數(shù)據(jù)。點擊該條錯誤,查看錯誤詳情:

監(jiān)控,微信小程序,HTTP請求

通過上方的統(tǒng)計數(shù)據(jù),我們可以知道獲取天氣信息的接口出現(xiàn)緩慢情況的趨勢,影響的用戶數(shù)量,累計發(fā)生的次數(shù)。我們可以以此來評估是否需要優(yōu)化該接口,甚至替換成其它第三方接口來解決這個問題。

附加信息

因為配置了 monitorHttpData,所以我們可以查看到請求 body 中的詳細數(shù)據(jù)。當(dāng)請求失敗的時候,有時候需要結(jié)合參數(shù)來分析失敗的原因。

監(jiān)控,微信小程序,HTTP請求

另外,用戶行為數(shù)據(jù)記錄了小程序運行的詳細狀況,特別是函數(shù)的調(diào)用序列,對于理解出錯前程序的執(zhí)行邏輯很有幫助:

監(jiān)控,微信小程序,HTTP請求

關(guān)于Fundebug

Fundebug專注于JavaScript、微信小程序、微信小游戲、支付寶小程序、React Native、Node.js和Java線上應(yīng)用實時BUG監(jiān)控。 自從2016年雙十一正式上線,F(xiàn)undebug累計處理了10億+錯誤事件,付費客戶有陽光保險、核桃編程、荔枝FM、掌門1對1、微脈、青團社等眾多品牌企業(yè)。歡迎大家免費試用!

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 正镶白旗| 民丰县| 高安市| 华蓥市| 宁明县| 土默特右旗| 瑞安市| 二手房| 淮滨县| 枣强县| 项城市| 张家界市| 海晏县| 江源县| 富顺县| 绥德县| 漠河县| 广饶县| 嘉兴市| 海原县| 聂拉木县| 岗巴县| 新乡市| 阿拉善盟| 莎车县| 阿拉善盟| 临高县| 九台市| 聂荣县| 陈巴尔虎旗| 伊宁县| 五峰| 肥西县| 南宁市| 沾化县| 余江县| 柳江县| 马鞍山市| 亳州市| 莫力| 邵阳县|