為Java應用安裝探針后,ARMS即可開始監控Java應用,您可以在實例監控頁面了解應用的基礎監控、實例GC和JVM內存等信息。
前提條件
ARMS應用監控面向已開通新版計費的用戶提供全新的監控詳情頁面,新版計費詳情,請參見產品計費(新版)。
對于未開通新版計費的用戶,如需查看新版監控詳情頁面,可在應用列表頁面單擊切換新版。
已為應用安裝探針,具體操作,請參見應用監控接入概述。
查看實例監控
登錄ARMS控制臺,在左側導航欄選擇 。
在應用列表頁面頂部選擇目標地域,然后單擊目標應用名稱。
說明語言列的圖標含義如下:
:接入應用監控的Java應用。
:接入應用監控的Golang應用。
:接入應用監控的Python應用。
-:接入可觀測鏈路 OpenTelemetry 版的應用。
在上方導航欄單擊實例監控。
頁面說明
實例監控頁面會根據應用接入的信息自動適配展示大盤,并針對ECS環境和容器環境做區別展示。
在容器場景下,如果已經接入可觀測監控 Prometheus 版,則優先以可觀測監控 Prometheus 版數據作為容器信息的展示。容器環境接入可觀測監控 Prometheus 版的操作,請參見容器可觀測。
容器環境如果未接入可觀測監控 Prometheus 版,需要確保應用監控探針版本在4.1.0或以上,對應數據展示容器的基礎信息。應用監控探針說明,請參見探針(Java Agent)版本說明。
ECS環境
在快捷篩選區域(圖示①),您可以按主機地址對圖表、實例列表進行篩選。
在趨勢圖區域(圖示②),您可以查看實例的基礎監控、實例GC和JVM內存的時序曲線。
基礎監控:應用在指定時間范圍內CPU、內存和磁盤使用率趨勢圖。通過圖標名稱右側的下拉框可以切換展示各使用率的平均值和最大值。
實例GC:應用在指定時間范圍內Full GC和Young GC的趨勢圖。通過圖表名稱右側的下拉框可以切換展示GC的次數和平均耗時。
JVM內存:應用在指定時間范圍內堆內存已使用和最大值趨勢圖。通過圖標名稱右側的下拉框可以切換展示非堆內存已使用和最大值趨勢圖。
說明ARMS應用監控采集的數據來自JMX,其中非堆內存所包含的內存區域比Java進程中實際的非堆內存區域少,因此可能會出現監控中堆內存+非堆內存總和與通過
top
命令看到的RES大小存在一定差值,相關細節請參見JVM監控內存詳情說明。
單擊圖標,可以在彈出的對話框中查看該指標在某個時間段的統計情況或對比不同日期在同一時間段的統計情況,通過選擇圖標可以切換柱狀圖、趨勢圖進行展示。
在實例列表區域(圖示③),您可以查看實例IP、CPU利用率、內存利用率、磁盤利用率、負載、Full GC次數、Young GC次數、堆內存使用量、非堆內存使用量、RED三指標(請求數、錯誤數、平均耗時)等信息。
在實例列表,您可以執行以下操作:
容器環境(Prometheus版)
在快捷篩選區域(圖示①),您可以按集群和主機地址對圖表、實例列表進行篩選。
在趨勢圖區域(圖示②),您可以查看實例的基礎監控、實例GC和JVM內存的時序曲線。
基礎監控:應用在指定時間范圍內CPU用量和內存用量趨勢圖。
實例GC:應用在指定時間范圍內Full GC和Young GC的趨勢圖。通過圖表名稱右側的下拉框可以切換展示GC的次數和平均耗時。
JVM內存:應用在指定時間范圍內堆內存已使用和最大值趨勢圖。通過圖標名稱右側的下拉框可以切換展示非堆內存已使用和最大值趨勢圖。
說明ARMS應用監控采集的數據來自JMX,其中非堆內存所包含的內存區域比Java進程中實際的非堆內存區域少,因此可能會出現監控中堆內存+非堆內存總和與通過
top
命令看到的RES大小存在一定差值,相關細節請參見JVM監控內存詳情說明。
單擊圖標,可以在彈出的對話框中查看該指標在某個時間段的統計情況或對比不同日期在同一時間段的統計情況,通過選擇圖標可以切換柱狀圖、趨勢圖進行展示。
在實例列表區域(圖示③),您可以查看實例IP、CPU用量、CPU請求、CPU限制、CPU利用率(未設置CPU限制時,此項展示為-)、內存用量、內存請求、內存限制、內存利用率(未設置內存限制時,此項展示為-)、磁盤用量、磁盤限制、磁盤利用率(未設置磁盤限制時,此項展示為-)、負載、Full GC 次數、Young GC 次數、堆內存使用量、非堆內存使用量、RED三指標(請求數、錯誤數、平均耗時)等。
在實例列表,您可以執行以下操作:
容器環境(ARMS自采集版)
在快捷篩選區域(圖示①),您可以按主機地址對圖表、實例列表進行篩選。
在趨勢圖區域(圖示②),您可以查看實例的基礎監控、實例GC和JVM內存的時序曲線。
基礎監控:應用在指定時間范圍內CPU用量和內存用量趨勢圖。
實例GC:應用在指定時間范圍內Full GC和Young GC的趨勢圖。通過圖表名稱右側的下拉框可以切換展示GC的次數和平均耗時。
JVM內存:應用在指定時間范圍內堆內存已使用和最大值趨勢圖。通過圖標名稱右側的下拉框可以切換展示非堆內存已使用和最大值趨勢圖。
說明ARMS應用監控采集的數據來自JMX,其中非堆內存所包含的內存區域比Java進程中實際的非堆內存區域少,因此可能會出現監控中堆內存+非堆內存總和與通過
top
命令看到的RES大小存在一定差值,相關細節請參見JVM監控內存詳情說明。
單擊圖標,可以在彈出的對話框中查看該指標在某個時間段的統計情況或對比不同日期在同一時間段的統計情況,通過選擇圖標可以切換柱狀圖、趨勢圖進行展示。
在實例列表區域(圖示③),您可以查看實例IP、CPU用量、內存用量、負載、Full GC 次數、Young GC 次數、堆內存使用量、非堆內存使用量、RED三指標(請求數、錯誤數、平均耗時)等。
在實例列表,您可以執行以下操作:
實例詳情
概覽
概覽頁簽可以查看目標接口的請求數、錯誤數、平均耗時和慢調用信息。
JVM監控
JVM監控頁簽可以查看對應實例的GC、內存、線程、文件等信息。
池化監控
池化監控頁簽可以查看應用所使用的線程池或連接池的各項指標,包括核心線程數量、當前線程數量、最大線程數量、活躍線程數量、任務隊列容量。
線程池支持的框架
4.1.x及以上探針版本
支持框架:
java.util.ThreadPoolExecutor:一般用于Tomcat8~9.1、Dubbo、HSF、Vertx以及用戶自定義線程池。
org.apache.tomcat.util.threads.ThreadPoolExecutor:一般用于Tomcat9.1+。
org.eclipse.jetty.util.thread.QueuedThreadPool:一般用于Jetty。
org.xnio.XnioWorker:一般用于Undertow。
采集的指標如下:
指標名 | 支持框架 | 指標描述 |
arms_thread_pool_core_pool_size |
| 核心線程數,一般是靜態配置,不會改變。 |
arms_thread_pool_max_pool_size |
| 最大空閑連接數,一般是靜態配置,不會改變。 |
arms_thread_pool_active_thread_count |
| 活躍線程數,即當前正在執行任務的線程。 |
arms_thread_pool_current_thread_count |
| 當前線程數,包含活躍線程數和當前正在等待任務的線程數。 |
arms_thread_pool_max_thread_count |
| 線程池歷史最大線程數。 |
arms_thread_pool_scheduled_task_count |
| 線程池調度任務數。 |
arms_thread_pool_completed_task_count |
| 線程池執行完成任務數。 |
arms_thread_pool_rejected_task_count |
| 線程池拒絕任務數。 |
arms_thread_pool_queue_size |
| 線程池任務隊列大小。 |
4.1.x以下探針版本
線程池監控支持Tomcat、HSF、Dubbo、Vert.x和Undertow框架,其中,3.1.x及以下版本探針支持Undertow1.x~Undertow2.0.x版本線程池監控,3.2.x及以上版本探針支持Undertow所有版本線程池監控。
采集的指標如下:
指標名稱 | 指標 |
線程池核心線程數 | arms_threadpool_core_size |
線程池最大線程數 | arms_threadpool_max_size |
線程池活躍線程數 | arms_threadpool_active_size |
線程池隊列大小 | arms_threadpool_queue_size |
線程池當前大小 | arms_threadpool_current_size |
線程池監控支持SchedulerX框架,采集的指標如下:
指標名稱 | 指標 |
線程池活躍線程數 | arms_threadpool_active_size |
連接池支持的框架
4.1.x及以上探針版本
支持框架:DBCP(>2.0)、Vibur DBCP(>11.0)、c3p0(>0.9.2)、Druid、HikariCP(>3.0)、Jedis(>3.0)、Lettuce(>5.0)、Redisson(>3.0)。
采集的指標如下:
指標名 | 支持框架 | 指標描述 |
arms_connection_pool_connection_count | DBCP、c3p0、Vibur DBCP、Druid、Hikaricp、Jedis、Lettuce、Redisson | 連接數,可通過State區分Active和Idle連接數。 |
arms_connection_pool_connection_min_idle_count | DBCP、Jedis、Druid、HikariCP、Lettuce | 最小空閑連接數,一般是靜態配置,不會改變。 |
arms_connection_pool_connection_max_idle_count | DBCP、Jedis、Druid、Lettuce、 | 最大空閑連接數,一般是靜態配置,不會改變。 |
arms_connection_pool_connection_max_count | DBCP、Druid、Vibur DBCP、HikariCP | 最大連接數,一般是靜態配置,不會改變。 |
arms_connection_pool_pending_request_count | c3p0、HikariCP、Jedis | 阻塞的連接請求數。 |
4.1.x以下探針版本
連接池監控支持okHttp2、okHttp3框架,采集的指標如下:
指標名稱 | 指標 |
連接池活躍連接數 | arms_threadpool_active_size |
連接池當前連接數 | arms_threadpool_current_size |
連接池監控支持Apache HTTPClient框架,采集的指標如下:
指標名稱 | 指標 |
連接池當前連接數 | arms_threadpool_current_size |
連接池最大連接數 | arms_threadpool_max_size |
連接池等待隊列數 | arms_threadpool_queue_size |
連接池監控支持Druid框架,采集的指標如下:
指標名稱 | 指標 |
連接池活躍連接數 | arms_threadpool_active_size |
連接池最大連接數 | arms_threadpool_max_size |
連接池監控支持Hikaricp框架,采集的指標如下:
指標名稱 | 指標 |
連接池活躍連接數 | arms_threadpool_active_size |
連接池最大連接數 | arms_threadpool_max_size |
主機監控
主機監控頁簽可以查看CPU、內存、Disk(磁盤)、Load(負載)、網絡流量和網絡數據包的各項指標。
容器監控
容器環境(Prometheus版)
接入可觀測監控 Prometheus 版的操作請參見Prometheus實例 for 容器服務。
容器監控頁簽可以查看容器視角的CPU、內存、Disk(磁盤)、Load(負載)、網絡流量和網絡數據包的各項指標。
容器環境(ARMS自采集版)
未接入可觀測監控 Prometheus 版的情況下,需要確保ARMS探針版本在4.1.0或以上。探針版本說明請參見探針(Java Agent)版本說明。
容器監控頁簽可以查看容器視角的CPU、內存、網絡流量的時序曲線。
調用鏈分析
調用鏈分析功能基于已存儲的全量鏈路明細數據,通過自由組合篩選條件與聚合維度進行實時分析,可以滿足不同場景的自定義診斷需求。更多信息,請參見調用鏈分析。
相關文檔
應用監控詳細的指標信息,請參見應用監控指標說明。