你好,游客 登录 注册 搜索
背景:
阅读新闻

Zabbix监控Java的方法

[日期:2017-03-19] 来源:Linux社区  作者:Linux [字体: ]

最近在做spark的监控,spark原生支持jmx的方式来获取运行的metric,因此采用了zabbix的java gateway做监控。

因为之前也涉及过java应用的监控,这里做小小结:

对于java应用一般会关注3大块的信息:heap,gc,thread.

旧版本的zabbix没有java gateway这个概念,只能通过自己写脚本来获取监控信息:

1)通过jstat这种工具来获取监控信息

2)cmd jmx的方式,具体实现是应用打开jmx端口

让后在cmd的方式下调用相关的jar包来获取信息

比如下面这个获取thread的信息:

java  -jar cmdline-jmxclient-0.10.3.jar - 127.0.0.1:8060 java.lang:type=Threading ThreadCount

05/16/2013 10:32:10 +0800 org.archive.jmx.Client ThreadCount: 84


3)新版本的zabbix支持java gateway,可以通过jmx端口直接获取java的相关信息

(关于java gateway请参考zabbix官方文档)

这里有两个细节:

1)远程调用jmx的话,需要使用:

-Djava.rmi.server.hostname=xxxx

因此常用的打开jmx的参数为:

-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false

-Dcom.sun.management.jmxremote.port=8060 -Dcom.sun.management.jmxremote.ssl=false

-Djava.rmi.server.hostname=服务器ip


2)一台机器上运行多个java的监控方法

因为jmx的item中没有port这个参数,在添加多个jmx时,会有冲突错误。


workaround的方法就是新建item的时候在item中增加空格,这样就会识别成不同的item并且对值没有影响。

3)对java gateway做交叉监控,防止java gateway进程出错的情况。

一些Zabbix相关教程集合

Ubuntu 14.04下Zabbix2.4.5 源码编译安装  http://www.linuxidc.com/Linux/2015-05/117657.htm

CentOS 7 LNMP环境搭建Zabbix3.0  http://www.linuxidc.com/Linux/2017-02/140134.htm

Ubuntu 16.04安装部署监控系统Zabbix2.4  http://www.linuxidc.com/Linux/2017-03/141436.htm

Zabbix监控安装部署及警报配置  http://www.linuxidc.com/Linux/2017-03/141611.htm

Ubuntu 16.04下安装部署Zabbix3.0  http://www.linuxidc.com/Linux/2017-02/140395.htm

CentOS 6.3下Zabbix监控apache server-status http://www.linuxidc.com/Linux/2013-05/84740.htm

CentOS 7 下 Zabbix 3.0安装详解 http://www.linuxidc.com/Linux/2017-03/141716.htm

64位CentOS 6.2下安装Zabbix 2.0.6   http://www.linuxidc.com/Linux/2014-11/109541.htm

ZABBIX 的详细介绍请点这里
ZABBIX 的下载地址请点这里

本文永久更新链接地址http://www.linuxidc.com/Linux/2017-03/141924.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款