jvm jstat_使用jstat报告自定义JVM指标集

jvm jstat

我一直缺少在JStat中配置自定义标头的可能性 。 当然,有很多预定义的数据集,但是如果我们可以创建自己的数据集,那就更好了。 正如您可能已经设计的那样,我正在写这篇文章,因为这样的功能当然是可用的:)不幸的是我没有在任何文档中找到它,所以现在我将尝试填补这一空白。

我们要做的第一件事是为自定义描述符提供可能的JStat选项。 该描述符只是一个文本文件,其中包含我们称为“ jstat规范语言”的内容。 为了使该自定义文件可用于JStat,我们应将其放在以下路径中:

$HOME/.jvmstat/jstat_options

如果要查看捆绑的选项,请参考OpenJDK存储库中的文件 。

规范语言与json文件非常相似,并且包含选项元素组。 每个选项都应被威胁为一组列,这些列可以在单个jstat执行中显示。 仅举一些预定义的选项:gcnew,gccauseprintcompilation。

每个选项元素都包含几个段。 我认为列的含义很明显:)而且,在此描述符中最重要的只是规范。

每列必须至少包含两个节点: headerdata标头用于描述列,并且可以使用特殊的字符^对齐,我将其称为“抓地力”。 Grip表示它将标题粘贴在列的特定侧面,因此:

  • ^名称将向左对齐,
  • ^名称^将居中,
  • 名称^将在右侧对齐。

下一个重要节点是数据列。 它使用PerfCounter度量标准,并且能够进行一些基本的算术运算-例如加,减,除,乘以及使用括号将运算分组。 您还可以分组如果您想查看通过此机制可用的所有指标,则可以调用

$jcmd <PID> PerfCounter.print

并查看输出值。

样本最小文件内容可以像这样:

option customgc {column {header "Tenuring"data sun.gc.policy.tenuringThreshold}
}

当我们使用以下命令调用它时:

$jstat -customgc <PID> 1s 3

我们将看到类似以下内容:

Tenuring
6
4
5

我们还可以使用这些操作来显示例如联合年轻一代的用法:

option customgc {column {header "YoungC"data sun.gc.generation.0.space.0.used + sun.gc.generation.0.space.1.used + sun.gc.generation.0.space.2.used}
}

另外还有四列用于设置我们的列的布局。

  1. 首先是路线设置。 通过将align元素设置为上述值之一,可以选择是否要将数据对齐到左,中或右。
  2. 对于数字量度,我们可以通过在格式节点中输入字符串来指定用作DecimalFormat输入的字符串。
  3. 我们还可以通过添加具有特定长度的width元素来指​​定列的大小。
  4. 最后但并非最不重要的是缩放功能。 因为大多数指标仅包含来自JVM的原始输出,所以我们需要对其进行一些转换,以使其对人眼有用。 这可以通过将scale属性设置为以下值之一(令牌列)来完成。
    代币 因子 描述
    生的 1个 没有缩放
    百分 1/100 转换成百分比
    ķ 1024 公斤
    中号 1024 * 1024
    G 1024 * 1024 * 1024 千兆
    ñ 10 ^ -9 纳米
    ü 10 ^ -6
    10 ^ -3
    我们 10 ^ -6 微秒
    多发性硬化症 10 ^ -3 毫秒
    s 1个
    1/60 分钟
    H 1/3600 小时

现在,让我们看一看优美的示例,该示例将展示我们如何使用其他属性:

option customgc {column {header "YoungC^"data sun.gc.generation.0.space.0.used + sun.gc.generation.0.space.1.used + sun.gc.generation.0.space.2.usedalign rightscale Mwidth 7format "0.0"}column {header "OldC^"data sun.gc.generation.1.space.0.usedalign rightscale Mwidth 7format "0.0"}
}

产生:

YoungC    OldC67.7   161.037.8   165.492.2   182.8

主题结束:)祝你好运!

翻译自: https://www.javacodegeeks.com/2015/03/using-jstat-to-report-custom-jvm-metric-sets.html

jvm jstat

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

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

相关文章

知识分享:值得学习的C语言经典开源项目

点击上方蓝字关注我&#xff0c;了解节气咨询听上去有些荒谬&#xff0c;C语言的产生竟然源于一个失败的项目。1969年&#xff0c;通用电气、麻省理工学院和贝尔实验室联合创立了一个庞大的项目——Multics工程。该项目的目的是创建一个操作系统&#xff0c;但显然遇到了麻烦&a…

计算机主机中网卡的作用,计算机硬件组成及作用

计算机硬件组成及作用今天百分网小编介绍一下电脑各组件&#xff0c;加深一下理解&#xff0c;让还不太懂的人可以对自己的电脑有一个整体的了解&#xff0c;希望对你有所帮助!一、电源电源是电脑最重要的部件&#xff0c;相当于人体的心脏&#xff0c;向所有的零部件输送血液&…

oracle idm_批准Oracle IDM中的特定Web服务

oracle idm关于Web服务端点的快速发布&#xff0c;OIM和SOA在与批准有关的场景中使用了Web服务端点- 基本内容&#xff0c;但对于初学者可能有用 。 Oracle IDM与SOA套件集成并利用其提供与批准相关的功能&#xff08;说实话&#xff0c;SOA非常丰富&#xff0c;并且也被用作W…

C语言编程笔记:关于 for循环 的那些不为人知的秘密

点击上方蓝字关注我&#xff0c;了解更多咨询好吧&#xff0c;也许你认为我在写一篇如何使用for循环的文章&#xff0c;&#xff0c;&#xff0c;&#xff0c;首先&#xff0c;我想说无论是学习C语言还是学习java的同学都能从此文中获益&#xff0c;还有&#xff0c;你确定你会…

chrome for mac html5,javascript – Mac上的Chrome浏览器问题

我一直在寻找很长一段时间,因为画布元素上的旋转矩形的绘制,擦除和重绘在Mac上的谷歌浏览器中不起作用.我需要这个,因为我想在画布上渲染悬停叠加层.我创建了一个代表我的代码的小提琴&#xff1a;linkHTML&#xff1a;使用Javascript&#xff1a;var canvas null;var ctx;var …

weld焊接_玩Weld-Probe –一站式查看CDI的所有方面

weld焊接当我坐在DevConf.CZ的会议室时&#xff0c; Weld 3.0.0.Alpha4已发布 。 大约在Jozef Hartinger&#xff08; jozefhartinger &#xff09;旁边或多或少 &#xff0c;后者在共享休息前几分钟告诉我有关此最新版本的新功能的信息。 有一个特别的功能真正引起了我的注意&…

C语言:一种通用的程序设计语言

点击上方蓝字关注我&#xff0c;了解更多咨询语言是一种通用的程序设计语言。它同UNIX系统之间具有非常密切的关系。C语言是在UNIX系统上开发的&#xff0c;且无论是UNIX系统本身还是其上运行的大部分程序&#xff0c;都是C语言编写的。但是C语言并不受限于任何一种操作系统或机…

可禁用计算机服务,win10哪些服务可以禁用 服务哪些可以禁止启动

win10服务哪些可以禁止启动&#xff1f;方法一&#xff1a;命令方法首先使用 Windows R 组合快捷键打开“运行”窗口&#xff0c;之后键入 services.msc 按下回车键&#xff0c;即可打开“服务”。方法二&#xff1a;快捷方式法在Win10桌面的“此电脑”图标上点击鼠标右键&…

drill apache_如何使用Apache Drill分析高度动态的数据集

drill apache当今的数据是动态的&#xff0c;并由应用程序驱动。 由诸如Web /社交/移动/ IOT等行业趋势驱动的新业务应用时代的增长正在生成具有新数据类型和新数据模型的数据集。 这些应用程序是迭代的&#xff0c;并且关联的数据模型通常是半结构化的&#xff0c;无模式的且不…

如何用最短的时间学会C语言,并掌握C语言的精髓所在?

点击上方蓝字关注我&#xff0c;了解更多咨询及C语言&#xff0c;我想凡是学过它的朋友都有这样一种感觉&#xff0c;那就是“让我欢喜让我忧。”欢喜的是&#xff0c;C语言功能非常强大、应用广泛&#xff0c;一旦掌握了后&#xff0c;你就可以理直气壮地对他人说“我是电脑高…

山西能源计算机专业,山西能源学院计算机科学与技术专业2016年在四川理科高考录取最低分数线...

类似问题答案四川大学计算机科学与技术专业2016年在山西理科高考录取最低分数线学校 地 区 专业 年份 批次 类型 分数 四川大学 山西 计算机科学与技术 2016 一批 理科 610 学校 地 区 专业 年份 批次 类型 分数 四川大学 山西 计算机科学与技术 2016 一批 理科 610 四川大学 山…

apache fop_Apache FOP与Eclipse和OSGi的集成

apache fopApache FOP是由XSL格式化对象&#xff08; XSL-FO &#xff09;驱动的开源打印处理器。 例如&#xff0c;将数据对象转换为PDF可能非常有用。 但是&#xff0c;事实证明&#xff0c;将其集成到PDE中并最终以OSGi Service的形式启动和运行有点麻烦。 因此&#xff0c…

2022年最值得学习的 5 种编程语言,你有在学习吗?

点击上方蓝字关注我&#xff0c;了解更多咨询作为一个初学者电脑程序员&#xff0c;很多人都会想知道当下主流的编程语言有哪些&#xff0c;哪些行业和公司都在用它们&#xff0c;因为这些信息可以帮助你了解想要学习的内容&#xff0c;使你更接近最终想用代码完成的事情。今天…

计算机组装名词术语解释,计算机名词解释及简答题总结

计算机名词解释及简答题总结信息技术&#xff1a;指的是用来扩展人们信息器官功能&#xff0c;协助人们更有效地进行信息处理的一类技术1.信息处理&#xff1a;信息的收集、加工、存储、传递、施用相关的行为和活动2.信息产业&#xff1a;是指生产制作信息设备&#xff0c;以及…

wildfly mysql_MySQL作为Kubernetes服务,可从WildFly Pod访问

wildfly mysqlKubernetes上使用Vagrant的Java EE 7和WildFly&#xff08;技术提示&#xff03;71&#xff09;介绍了如何在使用Kubernetes和Docker托管的WildFly上运行琐碎的Java EE 7应用程序。 Java EE 7应用程序是在世界范围内交付的动手实验室 。 它使用与WildFly捆绑在一起…

想学C语言?这些你一定要知道

点击上方蓝字关注我&#xff0c;了解更多咨询首先&#xff0c;你想运行自己的C语言程序&#xff0c;就必须要有一个IDE&#xff08;集成式开发工具&#xff09;。不然想运行程序很难。这里有两个方法可以运行你的C语言程序&#xff0c;一个是在菜鸟网站上云运行C语言程序&#…

mongodb实验报告_Dropwizard,MongoDB和Gradle实验

mongodb实验报告介绍 我使用Dropwizard&#xff0c;MongoDB和Gradle创建了一个小项目。 它实际上是作为一个实验性的Guava缓存开始的&#xff0c;作为将计数器发送到MongoDB&#xff08;或任何其他DB&#xff09;的缓冲区。 我也想尝试MondleDB插件的Gradle。 接下来&#xff0…

历城职专学前计算机专业,历城职专学前教育专业2020学年第一学期技能运动会拉开帷幕...

原标题&#xff1a;历城职专学前教育专业2020学年第一学期技能运动会拉开帷幕技能运动会学前教育专业技能运动会1月13日&#xff0c;历城职专学前教育专业2020学年第一学期技能运动会拉开帷幕&#xff0c;技能运动会是历城职专对每一位职专学子专业技能考核的一项重要检测&…

guava集合操作类的使用_使用Guava进行测试集合的实现

guava集合操作类的使用我目前正在为LibFX添加一项新功能&#xff0c;为此我创建了一些类似于Java Collections Framework的自定义集合。 我一直在寻找可以与之对抗的测试&#xff0c;并很高兴发现Google的Guava包含了我所需要的&#xff1a;一个庞大的测试套件&#xff0c;可以…

如何正确认识C语言在当今编程领域的地位

点击上方蓝字关注我&#xff0c;了解更多咨询一、什么是语言&#xff0c;什么是C语言&#xff0c;有什么区别与联系&#xff1f;一提到语言这个词&#xff0c;人们自然想到的是像英语、汉语等这样的自然语言&#xff0c;因为它是人和人相互交流信息不可缺少的工具。大家听到我们…