<sup id="mc5c3"><tfoot id="mc5c3"></tfoot></sup>
<blockquote id="mc5c3"></blockquote>
    1. <style id="mc5c3"><kbd id="mc5c3"><progress id="mc5c3"></progress></kbd></style>
      <style id="mc5c3"></style>
      国产精品成人久久电影,久久久亚洲欧洲日产国码aⅴ,亚洲色拍拍噜噜噜最新网站,极品尤物被啪到呻吟喷水,狠狠色噜噜狠狠狠狠777米奇,国产91麻豆精品成人区,又黄又爽又色的免费网站,国产99在线 | 免费

      通過友盟+ U-APM 移動應用性能管理工具實現(xiàn)對移動端APP的性能監(jiān)控

      背景

      對于信息系統(tǒng)服務,一般我們的重點監(jiān)控對象都是核心的后端服務,通常會采用一些主流的APM(Application Performance Management)框架進行監(jiān)控、告警、分析。那么對于移動端的APP、小程序的運行時狀態(tài)如何進行實時監(jiān)控與分析呢?經(jīng)過這次CSDN官方的推薦,友盟+提供的APM服務可以實現(xiàn)我們的這一目標,下面我們就嘗試集成體驗下友盟+提供的這款APM服務。

      由于我們的 APP 是基于華為的鴻蒙操作系統(tǒng)進行開發(fā),而注冊友盟后,發(fā)現(xiàn)當前對于移動端APP,友盟官方提供了 Android 與 iOS 移動端操作系統(tǒng)的集成與接入,尚未提供對華為鴻蒙操作系統(tǒng)的支持(不過后來看到在上報的異常處可按照 只看鴻蒙設備 進行篩選:指發(fā)生錯誤/異常的設備為HarmonyOS,但尚未支持HarmonyOS系統(tǒng)級別錯誤)。

      體驗流程

      本著體驗下友盟+提供的APM服務的目的,這里使用一個基于 Android 的 Hello World 示例:

      首先按照官方文檔完成移動端 APP 與友盟 SDK 的集成;

      然后在示例中拋出一些異常( OOM 等);

      最后在友盟的移動端應用監(jiān)控首頁可以看到我們應用上報的異常信息。

      使用IDEA創(chuàng)建Android項目

      當然,集成之前需要先搭建一個極簡的 Android 的 Hello World 應用。

      由于我之前并沒有Android的移動端開發(fā)經(jīng)驗,當然也沒有對應的開發(fā)環(huán)境,那么這里直接使用IDEA創(chuàng)建一個Android應用。

      安裝AndroidSDK

      在IDEA中創(chuàng)建一個Android項目,先安裝Android的SDK,我這里使用默認位置直接安裝。

      創(chuàng)建一個空的Activity

      創(chuàng)建一個虛擬設備

      虛擬設備安裝完成

      集成友盟+APM的SDK

      友盟+的APM的SDK集成過程也是相當絲滑,參考官方文檔推薦的 maven 線上接入 SDK,只需三步:1.創(chuàng)建應用;2.添加SDK依賴;3.初始化信息上報。

      1. 創(chuàng)建應用

      2. 添加SDK依賴

      3. 初始化信息上報

      涉及到的配置與代碼如下:

      dependencies {

      implementation fileTree(dir: 'libs', include: ['*.jar'])

      implementation 'androidx.appcompat:appcompat:1.0.2'

      implementation 'androidx.constraintlayout:constraintlayout:1.1.3'

      testImplementation 'junit:junit:4.12'

      androidTestImplementation 'androidx.test:runner:1.1.1'

      androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1'


      // 友盟基礎組件庫(所有友盟業(yè)務SDK都依賴基礎組件庫)

      implementation "com.umeng.umsdk:common:9.4.2" // 版本號(必選))

      implementation "com.umeng.umsdk:asms:1.4.1" // asms包依賴(必選)

      implementation "com.umeng.umsdk:apm:1.4.2" // U-APM產(chǎn)品包依賴(必選)

      }


      // umeng

      buildscript {

      repositories {

      google()

      jcenter()

      maven { url 'https://repo1.maven.org/maven2/' }

      }

      dependencies {

      classpath 'com.android.tools.build:gradle:3.4.0'

      // NOTE: Do not place your application dependencies here; they belong

      // in the individual module build.gradle files

      }

      }

      allprojects {

      repositories {

      google()

      jcenter()

      maven { url 'https://repo1.maven.org/maven2/' }

      }

      }

      // 通用初始化

      public class MainActivity extends AppCompatActivity {


      @Override

      protected void onCreate(Bundle savedInstanceState) {

      // umeng

      UMConfigure.setLogEnabled(true);

      UMConfigure.init(this, "613b2a85314602341a0df802", "csdn", UMConfigure.DEVICE_TYPE_PHONE, "");

      super.onCreate(savedInstanceState);

      setContentView(R.layout.activity_main);

      }

      }

      最終配置

      啟動后報錯:無法聯(lián)網(wǎng)

      由于項目啟動后,友盟+的SDK會進行信息上報,這時需要聯(lián)網(wǎng),而默認創(chuàng)建項目后沒有聯(lián)網(wǎng)權限,因此會出現(xiàn)一個報錯信息。

      為APP配置聯(lián)網(wǎng)權限

      集成成功效果

      模擬各類異常

      為了體驗友盟+APM服務基本的監(jiān)控功能,我們這里模擬一些異常,然后看這些異常信息是否可以上報至APM平臺。

      普通的運行時異常:ArithmeticException/NullPointerException

      棧溢出異常:StackOverflowError

      內(nèi)存溢出異常:. OutOfMemoryError

      除0異常:ArithmeticException

      // 發(fā)送異常按鈕的點擊事件:模擬除零異常

      public void exception(View view) {

      try {

      int value = 8 / 0;

      } catch (Exception e) {

      UMCrash.generateCustomLog(e, "5001");

      }

      }

      棧溢出異常:StackOverflowError

      // 發(fā)送SoF異常按鈕的點擊事件:模擬棧溢出異常

      public void exceptionStackOverFlow(View view) {

      try {

      exceptionStackOverFlow(view);

      } catch (Exception e) {

      UMCrash.generateCustomLog(e, "5002");

      }

      }

      內(nèi)存溢出異常:. OutOfMemoryError

      // 發(fā)送OOM異常按鈕的點擊事件:模擬內(nèi)存溢出異常,當然OOM還有其他類型,這里以堆溢出為例進行演示

      public void exceptionOutOfMemory(View view) {

      try {

      Listlist = new ArrayList<>();

      while (true) {

      list.add(new byte[1024 * 1024]);

      }

      } catch (Exception e) {

      UMCrash.generateCustomLog(e, "5003");

      }

      }

      異常自動上報

      除0異常上報:ArithmeticException

      棧溢出異常上報:StackOverflowError

      內(nèi)存溢出異常上報:OutOfMemoryError

      異常告警

      支持郵箱、釘釘、企業(yè)微信、飛書以及Webhook方式推送。

      統(tǒng)計分析

      可對不同類型的異常進行多維度的統(tǒng)計與分析,大家可以繼續(xù)探索挖掘。

      總結

      通過以上流程,我們測試了移動端APP異常數(shù)據(jù)上報與統(tǒng)計功能,這個其實有點類似我們物聯(lián)網(wǎng)設備數(shù)據(jù)采集、傳輸與分析的流程,而且整個集成的流程也比較順暢,簡單幾步就給我們的APP做了做了一個服務遠程監(jiān)控端。

      后面我們APP上線后,友盟+這款APM服務將是我們線上移動端應用監(jiān)控的一把利器。另外,期待友盟+官方可以提供鴻蒙操作系統(tǒng)的接入,以便直接支持Huawei DevEco Studio中的基于HarmonyOS 虛擬設備,同時方便開發(fā)與調(diào)試。

      關于作者

      牛曉青,碩士,畢業(yè)于寧波大學,電子與通信工程專業(yè),研究方向為腦電信號處理及模式識別。

      曾參與腦電信號模式識別研究,教學軟件、分布式互聯(lián)網(wǎng)項目以及大型物聯(lián)網(wǎng)平臺的設計開發(fā)等工作。

      有4年團隊管理經(jīng)驗,曾從0到1搭建技術團隊,從最初的1人到現(xiàn)在的25人。負責的項目已落地多個城市。

      負責20+人團隊管理、日常工作任務分配、工作進度跟蹤、工作成果匯報、團隊內(nèi)部分享。

      精進管理,取得PMP項目管理專業(yè)人士資格認證。

      負責公司業(yè)務平臺架構設計,方案編寫,資金申報,研發(fā)部團隊建設,項目驗收培訓、對外宣講等工作。持續(xù)輸出,獲得CSDN博客專家認證。




      分享到:

      相關推薦

      評論 搶沙發(fā)

      評論前必須登錄!

       

      精彩評論

      主站蜘蛛池模板: 色国产视频| 26uuu丁香婷婷五月| 欧美国产日韩在线v观看综合| 97视频精品全国免费观看| 国产精品午夜av福利| 国产精品扒开腿做爽爽爽a片唱戏 日产精品久久久久久久蜜臀 | 国产精品中文字幕一区| 欧美丰满熟妇bbbbbb| 中文字幕av高清片| 亚洲AV永久中文无码精品综合| 日韩国产精品自在自线| 中文字幕日韩一区二区不卡| 少妇办公室好紧好爽再浪一点| 亚洲色大成网站www久久九九| 乳妻视频一区| 熟妇人妻无码中文字幕老熟妇| 午夜通通国产精品福利| 日韩欧美亚洲| av色导航| 国产成人久久综合一区| 另类图片亚洲人妻中文无码| 久章草在线毛片视频播放| 四虎影视库国产精品一区| 美国三级无码不卡中文字幕在线观看| 久热这里只有精品蜜臀av | 欧美自拍视频| 少妇被多人c夜夜爽爽av| 国内精品久久久久影院网站| 电影内射视频免费观看| 久久亚洲精精品中文字幕| 日本久久精品一区二区三区| 3p在线看| 亚洲国产欧美在线人成AAAA| 日屄视频网站| 精品在线观看视频二区| 毛片内射久久久一区| 水蜜桃视频在线观看免费18| 成人无码α片在线观看不卡| AV喷水高潮喷水在线观看COM| 亚洲成人福利网站| 中文字幕人妻系列人妻?无码|