linux jstat 报错没有此命令,jstat版本不兼容问题

一 问题描述

我使用jstat命令来监控Java应用,前端时间调试Logstash的时候,Logstash单独指定JDK1.8,但是服务器上其他Java应用还是使用的JDK1.7,监控脚本jstat_status.py指定的jstat还是1.7版本

Logstash的监控信息没有收集到,Zabbix server端有报错信息

12257:20160611:144426.851 error reason for "xxxxxxxx:java.discovery_status[logstash_shipper,all]" changed: Received value [Warning: Unresolved Symbol: sun.gc.generation.2.space.0.capacity substituted NaNWarning: Unresolved Symbol: sun.gc.generation.2.space.0.used substituted NaNWarning: Unresolved Symbol: sun.gc.generation.2.minCapacity substituted NaNWarning: Unresolved Symbol: sun.gc.generation.2.maxCapacity substituted NaNWarning: Unresolved Symbol: sun.gc.generation.2.capacity substituted NaNWarning: Unresolved Symbol: sun.gc.generation.2.space.0.capacity substituted NaNWarning: Unresolved Symbol: sun.gc.generation.2.space.0.capacity substituted NaNWarning: Unresolved Symbol: sun.gc.generation.2.space.0.used substituted NaNWarning: Unresolved Symbol: sun.gc.generation.2.space.0.capacity substituted NaNTraceback (most recent call last):  File "/opt/app/zabbix/sbin/jstat_status.py", line 181, in    jproc.compute_jstats()                              File "/opt/app/zabbix/sbin/jstat_status.py", line 115, in compute_jstats    self.zdict['Perm_used'] = format(float(self.pdict['PU']) * 1024,'0.2f')ValueError: invalid literal for float(): ?] is not suitable for value type [Numeric (unsigned)] and data type [Decimal]

二 问题解决

单独使用jstat查看

$ sudo /opt/app/jdk1.8/bin/jstat  -gcutil 1634

S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT     GCT

68.67   0.00  35.78   5.98  92.24  89.23      4    0.584     2    0.188    0.772

]$ sudo jstat -gcutil 1634

Warning: Unresolved Symbol: sun.gc.generation.2.space.0.capacity substituted NaN

Warning: Unresolved Symbol: sun.gc.generation.2.space.0.used substituted NaN

Warning: Unresolved Symbol: sun.gc.generation.2.space.0.capacity substituted NaN

S0     S1     E      O      P     YGC     YGCT    FGC    FGCT     GCT

0.00  92.09  70.17   4.13            3    0.543     2    0.188    0.730

jstat1.8 jstat1.7的输出不同,jstat 1.7 有 P这个项目表示Permanent space utilization as a percentage of the space's current capacity.

jstat1.8 没有P这个项目,而是有个M和CCS两个项目分别表示

Metaspace utilization as a percentage of the space's current capacity. 和

Compressed class space utilization as a percentage.

将logstsh的jdk版本调整到1.7问题得到解决

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值