【JVM】日志分析工具--gcviewer的使用

文章目录

  • gcviewer是什么?
  • gcviewer的使用
  • 最后

gcviewer是什么?

GCViewer是一个小工具,可以可视化Sun / Oracle、IBM、HP和BEA Java虚拟机生成的详细GC输出。它是在GNU LGPL下发布的自由软件。—官网翻译

gcviewer的使用

文章使用的配置

工具 环境或版本
idea 2021
系统 ios(mac)
jdk 1.8

官网:https://github.com/chewiebug/GCViewer

下载:https://github.com/chewiebug/GCViewer.git

【JVM】日志分析工具--gcviewer的使用_第1张图片

注意:最新的1.3x最低版本仅支持jdk1.8

在这里插入图片描述

打成jar包或者用idea直接package

mvn clean install

或者如下操作
【JVM】日志分析工具--gcviewer的使用_第2张图片
【JVM】日志分析工具--gcviewer的使用_第3张图片

我这里用idea生成的目录在target中gcviewer-1.37-SNAPSHOT.jar

双击打开后是这样:

【JVM】日志分析工具--gcviewer的使用_第4张图片

然后打开上次(File->open File)文章说的日志文件(可以参考:jvm-问题分析及优化利器-gceasy的使用)

【JVM】日志分析工具--gcviewer的使用_第5张图片

结果展示如下,有些同学可能要问,有没有中文版,不好意思貌似没有发现,有发现麻烦留言发我一份

【JVM】日志分析工具--gcviewer的使用_第6张图片

summary(概要)

【JVM】日志分析工具--gcviewer的使用_第7张图片

下面列一些关键的说明

项目名称 中文解释 作用
Total heap(usage/alloc.max) 堆总大小 这里展示占用堆的总大小及使用占比
Max heap after full GC fullgc后占堆总大小
Freed memory 释放内存
Freed Mem/min 每分钟释放大小
Total time 总耗时 单位秒
Accumulated Pauses:GC 暂停总时长
Throughput 吞吐量 这个是一个核心的指标,如果吞吐量太低,需要及时排查原因。如果达到90%以上就要考虑优化了~

Memory(内存信息)|
【JVM】日志分析工具--gcviewer的使用_第8张图片

项目名称 中文解释 作用
Tenured heap(usage、alloc.max) 老年代堆大小和占比 可以展示占比情况,是不是太多导致fullGC
Young heap(usage、alloc.max) 年轻代堆大小和占比
Perm heap(usage、alloc.max) 元空间大小和占比
Max heap after full gc gc后最大堆大小和占比
Avg heap after full gc gc后平均堆大小
avg after gc 平均gc后的情况(指yong minxd old)
avg freed full gc full gc后平均释放的大小
都差不多

Pause(暂停信息)

【JVM】日志分析工具--gcviewer的使用_第9张图片
【JVM】日志分析工具--gcviewer的使用_第10张图片

jvm配置信息
【JVM】日志分析工具--gcviewer的使用_第11张图片

图表需要参照 这个view中的信息,其中包含full gc等相关信息,这个在本地开发的时候可以时不时拉出来看下是不是有问题,性能或者一些关键的参数都可以在图标上面一目了然;(给力)

【JVM】日志分析工具--gcviewer的使用_第12张图片

当然gcviewer还可以生成报告,具体同学需要的可以查看下官网说明或参考网站~

最后

问了一圈周边的同事或朋友,发现用gcviewer还是比较少,现在年轻一代的同学都是在生产直接用arthas或大盘,本地开发一般就是用自带visualvm或者直接用上节说的easyGC直接上传查看。

你可能感兴趣的:(JVM,jvm,java,开发语言)