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

news2024/11/26 19:34:07

文章目录

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

gcviewer是什么?

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

gcviewer的使用

文章使用的配置

工具环境或版本
idea2021
系统ios(mac)
jdk1.8

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

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

在这里插入图片描述

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

在这里插入图片描述

打成jar包或者用idea直接package

mvn clean install

或者如下操作
在这里插入图片描述
在这里插入图片描述

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

双击打开后是这样:

在这里插入图片描述

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

在这里插入图片描述

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

在这里插入图片描述

summary(概要)

在这里插入图片描述

下面列一些关键的说明

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

Memory(内存信息)|
在这里插入图片描述

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

Pause(暂停信息)

在这里插入图片描述
在这里插入图片描述

jvm配置信息
在这里插入图片描述

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

在这里插入图片描述

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

最后

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/649663.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Dubbo面试题

Dubbo 基础知识为什么要用 Dubbo?Dubbo 是什么?Dubbo 的使用场景有哪些?Dubbo 核心功能有哪些? 架构设计Dubbo 服务器注册与发现的流程?Dubbo 的整体架构设计有哪些分层?Dubbo Monitor 实现原理? 分布式框…

一键部署通义千问预体验丨阿里云云原生 5 月动态

云原生月度动态 云原生是企业数字创新的最短路径。 《阿里云云原生每月动态》,从趋势热点、产品新功能、服务客户、开源与开发者动态等方面,为企业提供数字化的路径与指南。 本栏目每月更新。 01 趋势热点 🥇 Apache RocketMQ 入选可信开…

如何创建 GitHub 配置文件自述文件

背景 最近再搞GitHub Actions的东西。突然看到了 github推出的这项服务。就搞了一下。主要目的:装扮自己的GitHub主页。俗称装逼(小声) 步骤 创建一个与 GitHub 用户名同名(包括大小写)的新仓库。比如我的就是 创建…

Docker学习(一)

第1章 docker简介 1.1 什么是docker Docker 最初是 dotCloud 公司创始人 Solomon Hykes 在法国期间发起的一个公司内部项目,它是基于 dotCloud 公司多年云服务技术的一次革新,并于 2013 年 3 月以 Apache 2.0 授权协议开源,主要项目代码在 …

ethers.js常用的操作方法

安装:npm install --save5.7.2 ethers --ethers比web3来说使用方式相对简洁很多,主要就操作三个大对象 1. Provider,(提供者)是一个用于连接以太坊网络的抽象类,提供了只读形式来访问区块链网络和获取链上…

8年测试老鸟总结,性能测试案例经验,高级测试之道...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 性能基准测试&…

测试员最令程序员讨厌的十种行为,你中了几条?

在做软件测试这些年,总会有程序员给我吐槽某某测试员令其发指的一些事。这里我总结了一些,看你有没有中呢? 1、爱较真,只要逮着问题,哪怕是技术文档中的错别字也要提到bug管理工具中,更让程序员绝望的是&a…

测试员与程序员那些烂在心里的共同秘密

1、生产环境出现了一个较严重的bug,赶在用户没发现的情况下,测试员与程序员悄悄地改了,并跳过了N个步骤做了次发布。 2、程序员告诉测试员,新来的技术leader每天做得最多的事就是copy他们的代码,一份不够还再来一份&a…

VR全景智慧园区,沉浸式数字化体验,720度全视角展示

导语: 随着科技的迅猛发展,虚拟现实(Virtual Reality,简称VR)全景技术已经成为了人们趋之若鹜的新兴领域。 而城市园区作为现代社会的重要组成部分,也正在积极寻求创新的方式来吸引更多的人流和投资。 一&…

【QQ界面展示-设置文本框的leftView属性 Objective-C语言】

一、这个搞定以后,接下来,就实现另外一个效果, 1.注意,我们上午把这个文本框,是不是本来说文本框,直接放这儿就OK了吧,但是,我们上午为了能让这个文本框兼容iOS6,是不是把这个文本框的边框,设为None,然后呢,边框设为nil边框,是不是设了一个背景图啊, 但我们做完…

Ansys Zemax | 如何在OpticStudio中建模和设计真实波片

本文介绍了如何在 OpticStudio 中建模和设计真实的单色和消色差波片。它将演示如何使用双折射材料,通过构建评价函数来计算相位延迟,并使用 Universal Plot 将相位延迟与波片厚度的关系可视化。(联系我们获取文章附件) 双折射材料…

搜索树的逻辑以及代码实现-重点删除结点的逻辑

目录 搜索二叉树概念 代码 二叉搜索树的插入 二叉搜索树的查找 二叉搜索树的删除(非常重要) a、b、c情况:删除14 d情况 打印结点中序遍历 整体代码:(有R开头的就是递归写法,逻辑一样) 搜…

合宙Air724UG Cat.1模块硬件设计指南--UART接口

UART接口 简介 串行接口简称串口,同时串口又分为同步收发串口与异步收发串口两种方式,而CAT1模块支持的串口为异步收发方式,简称UART口。串口作为设备的外部接口,是调试开发的一种重要的开发手段。 特性 UART1串口 包括数据线TXD…

ubuntu (Linux mint) 安装mysql 5.7

1 从官网下载deb格式安装包 网址: https://downloads.mysql.com/archives/community/ 2 解压安装包 执行命令: tar -xvf mysql-server_5.7.41-1ubuntu18.04_amd64.deb-bundle.tar 如下图所示: 你会发现多了很多.deb文件。 3 批量安装 .d…

当C/C++遇上高性能计算|会C/C++编程的看过来,这类岗位是真香

C/C编程语言作为经典而强大的编程语言,一直在计算机科学领域占据着重要的地位。而当C/C遇上高性能计算,这个组合将带给你无尽的机遇和挑战,成为一名高性能计算工程师,你会发现这类岗位是真香。从此告别爹不疼、娘不爱的尴尬境地。…

【RH850/U2A】:Task激活过程

Task激活过程 Autostart非AutostartTASK(Default_Init_Task)EcuM_StartupTwo(void)SchM_Init(void)BswM_Init(xx)Rte_Start(void)Task激活过程,分自动运行(AutoStart)和非自动运行。 Autostart 在DavinciCfg中的配置如下: Autostart意味作在执行StartOS()后就开始运行了。…

使用Python进行小波变化

上图展示了使用Python小波变换的一个使用案例,数据和代码来自https://github.com/ct6502/wavelets。在使用运行代码的时候发现了源代码的报错分别在Line115和Line136,是将Y轴变为对数轴,需要将“plt3.set_yscale(‘log’,base2, subsNone)”改…

pycharm HfArgumentParser ArgumentParser 参数设置 以及Debug

HfArgumentParser可以将类对象中的实例属性转换成转换为解析参数。必须注意的是,这里的类对象必须是通过dataclass()创建的类对象。并且通过HfArgumentParser创建的解析参数,都是可选参数。 from transformers import HfArgumentParser from dataclasse…

Pytest教程__fixture(9)

什么是fixture fixture是pytest特有的功能,使用装饰器 pytest.fixture 标记的函数在其他函数中能被当作参数传入并被调用。 fixture有明确的名字,在其他函数,模块,类或整个工程调用它时会被激活。 fixture是基于模块来执行的&a…

【计算机视觉 | 分割】SAM 升级版:HQ-SAM 的源代码测试(含测试用例)

文章目录 一、第一段代码二、第二段代码三、第三段代码3.1 函数13.2 函数23.3 函数33.4 函数43.5 函数5 四、第四段代码五、第五段代码5.1 测试用例15.2 测试用例25.3 测试用例35.4 测试用例45.5 测试用例55.6 测试用例65.7 测试用例75.8 测试用例8 下面是一个测试用例&#xf…