【jvm】- jvm监控工具及垃圾回收日志分析工具

俗话说,工欲善其事必先利其器,对于jvm调优,如果没有几款强大的工具,无异于是盲人摸象了.

监控工具的话,Jdk本身其实自带很多可以监控的工具,而且功能强大,用这些基本就够了.

一款叫Jconsole,一款叫JVisualvm. 两款均放在你jdk的安装目录下的bin文件夹里.

以我电脑为例,它们存放在:C:\Program Files\Java\jdk1.8.0_172\bin

【jvm】- jvm监控工具及垃圾回收日志分析工具_第1张图片

两者的话我更喜欢后者,jvisualvm,前者更为轻量,功能上的话后者更强大,可以两个都去试试.

【jvm】- jvm监控工具及垃圾回收日志分析工具_第2张图片

如果需要连接监控你远程服务器上的java项目的话,可以在java启动时指定参数:

其中端口号你可以随意指定,然后jdk安装目录根据你自己服务器的安装目录作修改,修改后启动项目

java -Djava.rmi.server.hostname=192.168.174.128 -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false  -Dcom.sun.management.jmxremote.access.file=/usr/local/java/jdk1.8.0_172/jre/lib/management/jmxremote.access -Dcom.sun.management.jmxremote.password.file=/usr/local/java/jdk1.8.0_172/jre/lib/management/jmxremote.password -jar server-0.0.1-SNAPSHOT.jar

双击远程->添加

【jvm】- jvm监控工具及垃圾回收日志分析工具_第3张图片    →    【jvm】- jvm监控工具及垃圾回收日志分析工具_第4张图片

【jvm】- jvm监控工具及垃圾回收日志分析工具_第5张图片  →   【jvm】- jvm监控工具及垃圾回收日志分析工具_第6张图片

 

我启动参数里选择的是不需要输入账号密码及ssl证书连接,所以这里直接输入IP+端口即可连接,生成环境下可以去配置,具体自行百度.

连接后就可以查看你想看的信息了,还可以在工具栏添加更多插件,可以说是很厉害了,你想要的都有!

 

下面重点介绍两款可以分析GC垃圾回收日志的工具:

工具1:http://gceasy.io/

一款在线分析工具,极度好用,百度,苹果等公司都在用,不多说了...

优化建议都会告诉你,全可视化数据,非常直观牛逼...

推荐指数五颗星,看图:

【jvm】- jvm监控工具及垃圾回收日志分析工具_第7张图片

第二款工具叫:gcviewer,是一款开源的java编写的工具,开源在本地直接打开,比较方便快捷,但功能和逼格上都没有前者强大,推荐指数四颗星. 

下载地址:https://github.com/chewiebug/gcviewer/wiki

【jvm】- jvm监控工具及垃圾回收日志分析工具_第8张图片

值得注意的是,不管是使用工具1还是工具2,都需要按其格式要求导出GC日志,否则无法识别,我直接给出一条万金油,两个工具都可以识别的日志输出命令:


nohup java -jar -Xloggc:/root/outp/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps  outp.jar &

#具体的存放目录/root/outp你可以随意指定,你自己找得到就行,gc.log命名也可以随便取,后缀.log不要变

关于工具我就先说到这里,当然如果你不喜欢用工具,觉得用命令比较方便或者逼格满满,那你可以继续用命令去人肉观察,常用的命令有:

jps      jstat    jmap   jstack   jhat等,感兴趣的话自行百度学习...

你可能感兴趣的:(【jvm】)