查看Java进程启动的详细参数

问题解决

分析和定位一个Java线上系统问题,我们需要查看JVM启动时的一些参数设置,例如:垃圾回收算法、堆大小等等。这些参数可能在启动脚本中明确指明,也可能采用默认值。
在系统运行过程中其他人也许动态调整了系统参数。

通过jps命令找对对应的pid进程号

[root@swk-207 ~]# ps -ef |grep java
5678 /xxx/server/skynet/lib/skynet-cloud-xloader-2.1.0.1007.jar --skynet.action.jagent.file=/xxx/server/skynet/lib/jagent --skynet.action.boot.file=xk-process-1.1.1-SNAPSHOT-with-dependencies.jar --server.port=34969

通过PS命令获取

[root@swk-207 ~]# ps eww 5678
  PID TTY      STAT   TIME COMMAND
 5678 ?        Sl   112:12 java -Dloader.path=/xxx/server/skynet/plugin/xk-proc/plugins -Djava.tmp.dir=/xxx/server/skynet/plugin/xk-proc/tmp -Djava.io.tmpdir=/xxx/server/skynet/plugin/xk-proc/tmp -Dfile.encoding=UTF-8 -Dxxx.dir.log=/xxx/server/skynet/plugin/xk-proc/logs -Dskynet.jagent.config.location.uri=http://10.5.3.207:6230/skynet/config/xk-proc@xk-proc?actionId=xk-proc@xk-proc -jar /xxx/server/skynet/lib/skynet-cloud-xloader-2.1.0.1007.jar --skynet.action.jagent.file=/xxx/server/skynet/lib/jagent --skynet.action.boot.file=xk-process-1.1.1-SNAPSHOT-with-dependencies.jar --server.port=45471 PATH=/usr/java/jdk1.8.0_112/bin:/usr/java/jdk1.8.0_112/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin HISTCONTROL=ignoredups HISTSIZE=1000 JAVA_HOME=/usr/java/jdk1.8.0_112 XFILESEARCHPATH=/usr/dt/app-defaults/%L/Dt LANG=en_US.UTF-8 XDG_SESSION_ID=2878 SELINUX_LEVEL_REQUESTED= JRE_HOME=/usr/java/jdk1.8.0_112/jre SELINUX_ROLE_REQUESTED= MAIL=/var/spool/mail/root LOGNAME=root PWD=/xxx/server/skynet/bin _=/usr/bin/nohup SHELL=/bin/bash LESSOPEN=||/usr/bin/lesspipe.sh %s SELINUX_USE_CURRENT_RANGE= SSH_CLIENT=10.5.3.207 33002 22 USER=root CLASSPATH=.:/usr/java/jdk1.8.0_112/lib/dt.jar:/usr/java/jdk1.8.0_112/lib/tools.jar SSH_CONNECTION=10.5.3.207 33002 10.5.3.207 22 HOSTNAME=swk-207 NLSPATH=/usr/dt/lib/nls/msg/%L/%N.cat XDG_RUNTIME_DIR=/run/user/0 HOME=/root SHLVL=2

通过JCMD命令获取

[root@swk-207 ~]# jcmd 5678 VM.flags 
5678:
-XX:CICompilerCount=12 -XX:InitialHeapSize=1054867456 -XX:MaxHeapSize=16846422016 -XX:MaxNewSize=5615124480 -XX:MinHeapDeltaBytes=524288 -XX:NewSize=351272960 -XX:OldSize=703594496 -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseFastUnorderedTimeStamps -XX:+UseParallelGC 

通过JPS命令获取

[root@swk-207 ~]# jps   -lmvV |grep 5678
5678 /xxx/server/skynet/lib/skynet-cloud-xloader-2.1.0.1007.jar --skynet.action.jagent.file=/xxx/server/skynet/lib/jagent --skynet.action.boot.file=xk-process-1.1.1-SNAPSHOT-with-dependencies.jar --server.port=45471 -Dloader.path=/xxx/server/skynet/plugin/xk-proc/plugins -Djava.tmp.dir=/xxx/server/skynet/plugin/xk-proc/tmp -Djava.io.tmpdir=/xxx/server/skynet/plugin/xk-proc/tmp -Dfile.encoding=UTF-8 -Dxxx.dir.log=/xxx/server/skynet/plugin/xk-proc/logs -Dskynet.jagent.config.location.uri=http://10.5.3.207:6230/skynet/config/xk-proc@xk-proc?actionId=xk-proc@xk-proc

使用jinfo pid 查看:

jinfo 5678

有一行VM Flages:表示启动参数

VM Flags:
-Dproc_main -****
posted @ 2023-05-04 11:17  邴越  阅读(645)  评论(0编辑  收藏  举报