中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

UAVStack中JVM監控分析工具怎么用

發布時間:2022-01-14 14:38:07 來源:億速云 閱讀:162 作者:小新 欄目:網絡管理

這篇文章主要為大家展示了“UAVStack中JVM監控分析工具怎么用”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“UAVStack中JVM監控分析工具怎么用”這篇文章吧。

引言

作為AllInOne的智能化服務技術棧,UAVStack提供了非常全面的監控數據采樣功能,同時支持數據監控與預警。近期,我們整合了原有的數據采集展示功能,新增JVM分析功能,推出了更易用的JVM監控分析工具。

熟悉JDK的開發者都知道,JDK本身提供了一套JVM分析工具,包括jinfo、jmap、jstack等。用戶可以通過命令行輕松獲取JVM內存堆棧信息、內存對象分配以及JVM啟動基本參數信息。但這些工具需要在命令行環境中執行,且生產環境下則需要通過堡壘機轉發。

開源社區一些不錯的JVM分析工具也可以提供獲取JVM基本信息、追蹤堆棧、獲取內存信息等功能,但同樣需要命令行CLI的支持。

UAVStack推出的JVM監控分析工具提供基于頁面的展現方式,以圖形化的方式展示采集到的監控數據;同時提供JVM基本參數獲取、內存dump、線程分析、內存分配采樣和熱點方法分析等功能。

一、架構

JVM監控分析工具基于UAVStack既有架構,整體分為前端、后臺及中間件增強框架(MOF)。其中:

  • 前端負責展示數據、向后臺發送用戶執行指令;

  • 后臺負責下發指令、響應用戶查詢、處理采集到的數據;

  • 中間件增強框架(MOF)負責接收后臺下發的指令、執行指令并返回數據或將數據寫入文件,然后通過UAV提供的文件歸集功能上送數據。

整體架構流程如下圖所示:

UAVStack中JVM監控分析工具怎么用

二、關鍵技術

2.1 JMX

JMX提供相關接口,獲取基礎的JVM監控數據,如內存堆大小、GC情況等,是JVM監控數據的基礎。

2.2 中間件增強框架(MOF)

作為分析工具整條鏈路的基礎,MOF依附于用戶應用,主要提供以下基礎支持:

  • 基礎數據采集:MOF植入應用中,JMX定期獲取并上報相關JVM的基本信息數據,為展示和預警提供數據基礎。

  • 請求捕獲、指令執行:JVM監控分析工具的大多數功能都需要下發指令至應用所在的服務器。MOF負責把下發指令的請求攔截下來,執行并返回對應的結果。

2.3 Java Attach API

Java Attach API是由Sun提供的一套非標準API,可以將用戶連接到運行中的虛擬機進程上,進行agent的掛載等操作。

在JVM監控分析工具中,Java Attach API主要用于Attach到虛擬機進程,進行如下操作:

  • 獲取JMX Connection:從外部獲取JVMConnection,得到MXBean,抓取運行數據。(CPU采樣分析)

  • 獲取VirtualMachine對象:調用接口,得到堆內存分布信息。(內存采樣分析)

三、功能展示

3.1 基本監控

選擇應用實例后即可進入基本監控頁面。

該頁面主要展示CPU使用率、線程情況、內存占用和GC情況。用戶可以根據需求調整時間范圍,查看不同時段的監控數據。

UAVStack中JVM監控分析工具怎么用

3.2 JVM摘要

JVM摘要頁面顯示當前虛擬機的基本參數信息,包括基本信息、JVM參數和系統屬性。其中:

  • 基本信息包括pid、主機信息、啟動參數以及JVM的啟動時間等最基本、最重要的信息;

  • JVM參數包括所有JVM啟動參數,用戶可查看指定的堆大小、垃圾回收器信息等;

  • 系統屬性包括寫入System.Properties中的所有配置信息以及Javaagent的配置屬性。

UAVStack中JVM監控分析工具怎么用

3.3 線程分析

線程分析通過執行jstack獲取線程基本信息,并對輸出結果進行分析,得到線程狀態數量、有無死鎖等信息。

UAVStack中JVM監控分析工具怎么用

3.4 內存Dump

內存Dump通過執行jmap獲取指定JVM的堆棧dump文件。

用戶可以便捷地在前端一鍵生成dump,不需要再登錄堡壘機。點擊“刷新”可以查看近期dump內存的操作記錄。

UAVStack中JVM監控分析工具怎么用

3.5 CPU分析

CPU分析是基于線程棧的采樣分析,主要提供兩個功能:線程執行時間以及方法熱點采樣。 

  • 線程執行時間是指線程在采樣期間的活動時間。查詢結果按照線程活動總時間排序,同時提供線程名稱和線程執行時間信息,用戶可據此判斷應用的執行情況。

UAVStack中JVM監控分析工具怎么用

  • 方法熱點采樣統計所有方法的執行時間,提供方法的類名和方法名信息。其中,方法的自用執行時間不包括方法調用其他方法的執行時間。查詢結果按照方法的自用執行時間降序排序,用戶可以查看當前應用內部耗時較長的執行方法,判斷應用是否異常、是否需要優化。

UAVStack中JVM監控分析工具怎么用

3.6 內存分析

內存分析是基于線程以及堆的統計采樣分析,主要提供兩個功能:每個線程的內存分配和堆內分配細節。

  • 線程內存分配提供每個線程的內存分配大小和線程名稱等信息,按照內存分配大小降序排列。用戶可查看當前占用內存較大的線程。

UAVStack中JVM監控分析工具怎么用

  • 堆內分配提供了各個類在堆內的分配實例數以及所占用的堆內存,按照堆內存大小降序排列。用戶可把該功能當作簡易的dump及分析工具,快速分析內存分配情況,發現內存分配問題。

UAVStack中JVM監控分析工具怎么用

以上是“UAVStack中JVM監控分析工具怎么用”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

萨迦县| 呼和浩特市| 吕梁市| 泽普县| 安顺市| 耒阳市| 奉化市| 金沙县| 那曲县| 五台县| 郑州市| 台东县| 南平市| 连州市| 曲松县| 仁布县| 泽库县| 祁连县| 垣曲县| 深州市| 闵行区| 资溪县| 莆田市| 连江县| 忻州市| 南涧| 永德县| 筠连县| 四川省| 宝丰县| 进贤县| 酒泉市| 兴化市| 灵台县| 砀山县| 永宁县| 卢湾区| 油尖旺区| 安丘市| 辽源市| 常州市|