arthas之jvm相關命令

文章目錄

  • 1. dashboard
  • 2. thread線程相關
  • 3. jvm
    • THREAD相關
    • 文件描述符相關
  • 4. sysprop
  • 5. 小結
  • 6. sysenv
  • 7. vmoption
  • 8. getstatic
  • 9. ognl
  • 10. 小結

1. dashboard

  • 作用:顯示當前系統的實時數據面板,按q或ctrl+c退出

在這里插入圖片描述

在這里插入圖片描述

數據說明

  • ID: Java級別的線程ID,注意這個ID不能跟jstack中的nativeID一一對應
  • NAME: 線程名
  • GROUP: 線程組名
  • PRIORITY: 線程優先級, 1~10之間的數字,越大表示優先級越高
  • STATE: 線程的狀態
  • CPU%: 線程消耗的cpu占比,采樣100ms,將所有線程在這100ms內的cpu使用量求和,再算出每個線程的cpu使用占比。
  • TIME: 線程運行總時間,數據格式為分:秒
  • INTERRUPTED: 線程當前的中斷位狀態
  • DAEMON: 是否是daemon線程

在這里插入圖片描述

2. thread線程相關

  • 作用:查看當前 JVM 的線程堆棧信息
  • 參數說明
參數名稱參數說明
數字線程id
[n:]指定最忙的前N個線程并打印堆棧
[b]找出當前阻塞其他線程的線程
[i <value>]指定cpu占比統計的采樣間隔,單位為毫秒
  • 舉例:展示當前最忙的前3個線程并打印堆棧
thread -n 3

如:Tomcat線程中前三個最忙的。可以看到第一個線程cpu占用到100%
在這里插入圖片描述

在這里插入圖片描述

  • 當沒有參數時,顯示所有線程的信息
thread

在這里插入圖片描述

  • 顯示1號線程的運行堆棧
thread 1

在這里插入圖片描述

  • 找出當前阻塞其他線程的線程,有時候我們發現應用卡住了, 通常是由于某個線程拿住了某個鎖, 并且其他線程都在等待這把鎖造成的。 為了排查這類問題, arthas提供了thread -b, 一鍵找出那個罪魁禍首。
thread -b

在這里插入圖片描述

  • 指定采樣時間間隔,每過1000毫秒采樣,顯示最占時間的3個線程
thread -i 1000 -n 3

在這里插入圖片描述

  • 查看處于等待狀態的線程
thread --state WAITING

在這里插入圖片描述

3. jvm

  • 作用:查看當前 JVM 的信息

在這里插入圖片描述

THREAD相關

  • COUNT: JVM當前活躍的線程數
  • DAEMON-COUNT: JVM當前活躍的守護線程數
  • PEAK-COUNT: 從JVM啟動開始曾經活著的最大線程數
  • STARTED-COUNT: 從JVM啟動開始總共啟動過的線程次數
  • DEADLOCK-COUNT: JVM當前死鎖的線程數

文件描述符相關

  • MAX-FILE-DESCRIPTOR-COUNT:JVM進程最大可以打開的文件描述符數
  • OPEN-FILE-DESCRIPTOR-COUNT:JVM當前打開的文件描述符數

4. sysprop

  • 作用:查看和修改JVM的系統屬性
  • 查看所有屬性
sysprop
[arthas@896915]$ syspropKEY             VALUE                                                          
--------------------------------------------------------------------------------awt.toolkit     sun.awt.X11.XToolkit                                           file.encoding.  sun.io                                                         pkg                                                                            java.specifica  1.8                                                            tion.version                                                                   sun.cpu.isalis                                                                 t                                                                              sun.jnu.encodi  UTF-8                                                          ng                                                                             java.class.pat  math-game.jar                                                  h                                                                              java.vm.vendor  Oracle Corporation                                             sun.arch.data.  64                                                             model                                                                          java.vendor.ur  http://java.oracle.com/                                        l                                                                              user.timezone   Asia/Shanghai                                                  os.name         Linux                                                          java.vm.specif  1.8                                                            ication.versio                                                                 n                                                                              user.country    CN                                                             sun.java.launc  SUN_STANDARD                                                   her                                                                            sun.boot.libra  /www/server/java/jdk1.8.0_371/jre/lib/amd64                    ry.path                                                                        sun.java.comma  math-game.jar                                                  nd                                                                             sun.cpu.endian  little                                                         user.home       /root                                                          user.language   zh                                                             java.specifica  Oracle Corporation                                             tion.vendor                                                                    java.home       /www/server/java/jdk1.8.0_371/jre                              file.separator  /                                                              line.separator                                                                 java.vm.specif  Oracle Corporation                                             ication.vendor                                                                 java.specifica  Java Platform API Specification                                tion.name                                                                      java.awt.graph  sun.awt.X11GraphicsEnvironment                                 icsenv                                                                         sun.boot.class  /www/server/java/jdk1.8.0_371/jre/lib/resources.jar:/www/serve .path           r/java/jdk1.8.0_371/jre/lib/rt.jar:/www/server/java/jdk1.8.0_3 71/jre/lib/jsse.jar:/www/server/java/jdk1.8.0_371/jre/lib/jce. jar:/www/server/java/jdk1.8.0_371/jre/lib/charsets.jar:/www/se rver/java/jdk1.8.0_371/jre/lib/jfr.jar:/www/server/java/jdk1.8 .0_371/jre/classes                                             sun.management  HotSpot 64-Bit Tiered Compilers                                .compiler                                                                      java.runtime.v  1.8.0_371-b11                                                  ersion                                                                         user.name       root                                                           path.separator  :                                                              os.version      5.10.134-16.3.al8.x86_64                                       java.endorsed.  /www/server/java/jdk1.8.0_371/jre/lib/endorsed                 dirs                                                                           java.runtime.n  Java(TM) SE Runtime Environment                                ame                                                                            file.encoding   UTF-8                                                          java.vm.name    Java HotSpot(TM) 64-Bit Server VM                              java.vendor.ur  http://bugreport.sun.com/bugreport/                            l.bug                                                                          java.io.tmpdir  /tmp                                                           java.version    1.8.0_371                                                      user.dir        /root                                                          os.arch         amd64                                                          java.vm.specif  Java Virtual Machine Specification                             ication.name                                                                   java.awt.print  sun.print.PSPrinterJob                                         erjob                                                                          sun.os.patch.l  unknown                                                        evel                                                                           java.library.p  /usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib   ath                                                                            java.vm.info    mixed mode                                                     java.vendor     Oracle Corporation                                             java.vm.versio  25.371-b11                                                     n                                                                              java.specifica  4                                                              tion.maintenan                                                                 ce.version                                                                     java.ext.dirs   /www/server/java/jdk1.8.0_371/jre/lib/ext:/usr/java/packages/l ib/ext                                                         sun.io.unicode  UnicodeLittle                                                  .encoding                                                                      java.class.ver  52.0                                                           sion
  • 查看單個屬性,支持通過tab補全
sysprop java.version

在這里插入圖片描述

  • 修改單個屬性
sysprop user.country
user.country=USsysprop user.country CN
Successfully changed the system property.
user.country=CN

在這里插入圖片描述

5. 小結

jvm相關命令說明
dashboard顯示線程,內存,GC,系統環境等信息
thread顯示線程信息
jvm與JVM相關的信息
sysprop顯示系統屬性信息,也可以修改某個屬性

6. sysenv

  • 作用:查看當前JVM的環境屬性(System Environment Variables)
  • 查看所有環境變量
sysenv
[arthas@896915]$ sysenvKEY             VALUE                                                          
--------------------------------------------------------------------------------BASH_FUNC_whic  () {  ( alias;                                                 h%%              eval ${which_declare} ) | /usr/bin/which --tty-only --read-al ias --read-functions --show-tilde --show-dot $@                }                                                              CLASSPATH       .:/www/server/java/jdk1.8.0_371/lib/tools.jar                  DBUS_SESSION_B  unix:path=/run/user/0/bus                                      US_ADDRESS                                                                     GOPATH          /root/goprojects                                               GOROOT          /opt/go                                                        HISTCONTROL     ignoredups                                                     HISTSIZE        1000                                                           HOME            /root                                                          HOSTNAME        iZwz9a93gvuoloyla40zjyZ                                        JAVA_HOME       /www/server/java/jdk1.8.0_371                                  LANG            zh_CN.UTF-8                                                    LESSOPEN        ||/usr/bin/lesspipe.sh %s                                      LOGNAME         root                                                           LS_COLORS       rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40; 33;01:cd=40;33;01:or=40;31;01:mi=01;05;37;41:su=37;41:sg=30;43 :ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tg z=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4= 01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=0 1;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:* .lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzs t=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=0 1;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01; 31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31 :*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*. swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.m jpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*. pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.ti f=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mn g=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v =01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v= 01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01 ;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;3 5:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*. xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.og x=01;35:*.aac=01;36:*.au=01;36:*.flac=01;36:*.m4a=01;36:*.mid= 01;36:*.midi=01;36:*.mka=01;36:*.mp3=01;36:*.mpc=01;36:*.ogg=0 1;36:*.ra=01;36:*.wav=01;36:*.oga=01;36:*.opus=01;36:*.spx=01; 36:*.xspf=01;36:                                               MAIL            /var/spool/mail/root                                           PATH            /www/server/java/jdk1.8.0_371/bin:/opt/go/bin:/usr/local/sbin: /usr/local/bin:/usr/sbin:/usr/bin:/root/bin                    PWD             /root                                                          SHELL           /bin/bash                                                      SHLVL           1                                                              SSH_CLIENT      120.231.214.28 23833 22                                        SSH_CONNECTION  120.231.214.28 23833 10.20.229.0 22                            SSH_TTY         /dev/pts/0                                                     S_COLORS        auto                                                           TERM            xterm                                                          USER            root                                                           XDG_RUNTIME_DI  /run/user/0                                                    R                                                                              XDG_SESSION_ID  178                                                            _               /www/server/java/jdk1.8.0_371/bin/java                         which_declare   declare -f
  • 查看單個環境變量
sysenv USER
[arthas@896915]$ sysenv USERKEY             VALUE                                                          
--------------------------------------------------------------------------------USER            root                                                           

7. vmoption

  • 作用:查看,更新VM診斷相關的參數

  • 查看所有的選項

vmoption

在這里插入圖片描述

  • 查看指定的選項
vmoption PrintGCDetails

在這里插入圖片描述

  • 更新指定的選項
vmoption PrintGCDetails true

在這里插入圖片描述

8. getstatic

  • 作用:通過getstatic命令可以方便的查看類的靜態屬性
  • 語法
getstatic 類名 屬性名
  • 舉例:
顯示demo.MathGame類中靜態屬性random
getstatic demo.MathGame random

在這里插入圖片描述

9. ognl

  • 作用:執行ognl表達式,這是從3.0.5版本新增的功能
  • OGNL語法
https://commons.apache.org/dormant/commons-ognl/language-guide.html

在這里插入圖片描述

  • 參數說明
參數名稱參數說明
express執行的表達式
[c:]執行表達式的 ClassLoader 的 hashcode,默認值是SystemClassLoader
[x]結果對象的展開層次,默認值1
  • 舉例
調用靜態函數
ognl '@java.lang.System@out.println("hello")'獲取靜態類的靜態字段
ognl '@demo.MathGame@random'執行多行表達式,賦值給臨時變量,返回一個List
ognl '#value1=@System@getProperty("java.home"), #value2=@System@getProperty("java.runtime.name"), {#value1, #value2}'

在這里插入圖片描述

10. 小結

jvm相關命令說明
sysenv查看JVM環境變量的值
vmoption查看JVM中選項,可以修改
getstatic獲取靜態成員變量
ognl執行一個ognl表達式

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/75237.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/75237.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/75237.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

小米平板 4 Plus 玩機日志

在一次偶然中&#xff0c;我從一個角落中找到了這臺小米平板 4 Plus&#xff08;是的&#xff0c;現在正在用這個平板寫這篇文章&#xff09;。在找到她的時候&#xff0c;她已經奄奄一息了&#xff0c;即使按動那脆弱的電源鍵也沒有任何響應。 在給她補充能源后&#xff0c;她…

MSYS2學習筆記

前言 本文內容是MSys2 Documentation的學習筆記可以使用MSYS2編譯QGis 學習筆記 什么是MSYS2&#xff1f; MSYS2&#xff08;Minimal System 2&#xff09;是一個為Windows平臺打造的軟件開發環境和包管理系統&#xff0c;它結合了Cygwin的POSIX兼容層、Arch Linux的pacman…

gnvm切換node版本號

1. gnvm下載官網 GNVM - Node.js version manager on Windows by Go 2. 安裝 2.1 不存在 Node.js 環境 下載并解壓縮 gnvm.exe 保存到任意文件夾&#xff0c;并將此文件夾加入到環境變量 Path。 2.2 存在 Node.js 環境 下載并解壓縮 gnvm.exe 保存到 Node.js 所在的文件夾。 2.…

目標檢測 AP 計算 實例 python

以下是使用 Python 實現目標檢測中 ?Average Precision (AP)? 計算的完整實例&#xff0c;包含代碼和注釋。這里以 ?Pascal VOC 標準? 為例&#xff08;IoU閾值0.5&#xff09;。 步驟1&#xff1a;準備數據 假設&#xff1a; gt_boxes: 真實標注框列表&#xff0c;格式為 …

AWS用Glue讀取S3文件上傳數據到Redshift,再導出到Quicksight完整版,含VPC配置

1. 項目背景 AWS的官方文檔&#xff0c;關于Glue和Vpc配置部分已經比較舊了&#xff0c;按照官方文檔配置的流程始終跑不通&#xff0c;花了一番時間和波折后&#xff0c;才終于完整的跑通了。 在數據分析和商業智能&#xff08;BI&#xff09;領域&#xff0c;我們常需要將存…

SpringBoot詳細教程(持續更新中...)

SpringBoot 一、概述 Springboot有哪些特點呢&#xff1f;或者說它跟Spring比有哪些優點呢&#xff1f; 1、起步依賴 通俗的說&#xff0c;就是一個依賴包含了很多個依賴&#xff1b;好處是引入所需的依賴更加簡便&#xff0c;而且有效避免了依賴之間的版本沖突問題&#xf…

亞馬遜玩具品類技術驅動型選品策略:從趨勢洞察到合規基建

一、全球玩具電商技術演進趨勢 &#xff08;技術化重構原市場背景&#xff09; 數據可視化分析&#xff1a;通過亞馬遜SP-API抓取2023年玩具品類GMV分布熱力圖 監管技術升級&#xff1a; 美國CPSC啟用AI質檢系統&#xff08;缺陷識別準確率92.7%&#xff09; 歐盟EPR合規接口…

spring boot 整合redis

1.在pom文件中添加spring-boot-starter-data-redis依賴啟動器 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId> </dependency> 2.編寫三個實體類 RedisHash("p…

python 語法篇(一)

目錄 1 正則匹配注意點11.1 正則匹配字符串寫法1.2 創建re函數&#xff08;1&#xff09;re.search()--搜索第一個匹配項&#xff08;2&#xff09;re.match() - 從字符串開頭匹配&#xff08;3&#xff09;re.findall() - 返回所有匹配項的列表&#xff08;4&#xff09;re.fi…

深度學習Note.4(機器學習實踐)

線性回歸 零. 1.paddle庫的一些API paddle.rand(shape,dtype None, name None) *隨機生成符合均勻分布的Tensor paddle.nromal(mean 0.0, std 1.0, shape None, name None) *隨機生成符合正態分布的Tensor *輸入正態分布均值&#xff0c;標準差&#xff0c; 生成結果的…

UE5學習筆記 FPS游戲制作29 更換武器時更換武器的圖標

文章目錄 制作物體圖標UI添加獲取武器圖標的方法使用事件分發器&#xff0c;通知UI要換槍定義事件分發器調用事件分發器注冊事件分發器 制作物體圖標UI 在Fpp-UI上添加一個圖片&#xff0c;改名為五weaponIcon&#xff0c;勾選SizeToContent,錨點放在右下角&#xff0c;對齊改…

RCE(自增、取反、異或)

自增: 也就是說&#xff0c;a > b&#xff0c;b > c... 所以&#xff0c;我們只要能拿到一個變量&#xff0c;其值為a&#xff0c;通過自增操作即可獲得a-z中所有字符。 無字母數字構造&#xff1a; 所有敏感字符串&#xff08;ASSERT、_POST&#xff09;通過自增動態生…

從架構角度談談云原生架構

1、云原生架構起源 隨著云服務商的成熟&#xff0c;客戶面臨著將服務直接使用云平臺的服務部署在云平臺上&#xff0c;或者采用本地和云上混合部署的模式來對外提供服務&#xff0c;從解決方案的角度來說&#xff0c;采用云原生架構的優點有&#xff1a; 可以利用云服務的管理…

Zcanpro搭配USBCANFD-200U在新能源汽車研發測試中的應用指南(周立功/致遠電子)

——國產工具鏈的崛起與智能汽車測試新范式 引言&#xff1a;新能源汽車測試的國產化突圍 隨著新能源汽車智能化、網聯化程度的提升&#xff0c;研發測試面臨三大核心挑戰&#xff1a;多協議融合&#xff08;CAN FD/LIN/以太網&#xff09;、高實時性數據交互需求、復雜工況下…

【Verilog】實驗十 帶倒計時交通燈控制電路設計

目錄 一、實驗目的 二、實驗環境 三、實驗任務 四、實驗原理與實驗步驟 1. 實驗原理 2. 實驗步驟 五、實驗思考 代碼 TOP.v trafic2_2.v shumaguan.v clk_div.v 一、實驗目的 1. 掌握同步有限狀態機的設計方法。 2. 采用狀態機的設計方法&#xff0c;設計實現帶倒…

Linux : System V 共享內存

目錄 一 前言 二 共享內存概念 三 共享內存創建 四 查看共享內存 五 共享內存的刪除 六 共享內存的關聯 七 共享內存去關聯 八 共享內存的使用&#xff08;通信&#xff09; 九 共享內存的特點 一 前言 共享內存區是最快的IPC形式&#xff08;進程間通信&#xff1…

Spring Cloud 2023.x安全升級:OAuth2.1與JWT動態輪換實戰

引言&#xff1a;當安全遇上云原生&#xff0c;零停機密鑰輪換成為剛需 在微服務架構中&#xff0c;OAuth2.1與JWT已成為身份驗證的黃金標準&#xff0c;但傳統方案存在兩大痛點&#xff1a; 密鑰輪換風險&#xff1a;手動替換JWT密鑰需重啟服務&#xff0c;導致短暫鑒權中斷&…

創建私人阿里云docker鏡像倉庫

一.登錄阿里云 https://cr.console.aliyun.com/cn-hangzhou/instances 二.創建個人實例 【實例列表】 》【創建個人實例】 》【設置Registry登錄密碼】 三.創建命名空間 步驟&#xff1a;【個人實例】》【命名空間】》【創建命名空間】 注:一個賬號最多可以創建3個命名空…

oracle基礎知識視圖的定義和應用

1.1 視圖的定義 視圖(View)是數據庫中非常重要的內容&#xff0c;在實際開發中必須學會視圖的編寫。 用于產生視圖的表叫做該視圖的基表。一個視圖也可以從另一個視圖中產生。視圖是可以嵌套的。 視圖的定義存在數據庫中&#xff0c;與此定義相關的數據并沒有再存一份于數據庫中…

邊緣計算:工業自動化的智能新引擎

在工業4.0的浪潮中&#xff0c;工業自動化正經歷著前所未有的變革。隨著物聯網&#xff08;IoT&#xff09;技術的普及&#xff0c;越來越多的工業設備被連接到網絡中&#xff0c;產生了海量的數據。然而&#xff0c;傳統的云計算架構在處理這些實時性要求極高的工業數據時&…