zabbix监控java的方法
2014-04-10 22:36
197 查看
最近在做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的信息:
3)对java gateway做交叉监控,防止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: 843)新版本的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=服务器ip2)一台机器上运行多个java的监控方法因为jmx的item中没有port这个参数,在添加多个jmx时,会有冲突错误。workaround的方法就是新建item的时候在item中增加空格,这样就会识别成不同的item并且对值没有影响。
3)对java gateway做交叉监控,防止java gateway进程出错的情况。
相关文章推荐
- 开源商业级服务器监控软件Zabbix 3.4.4部署方法
- java 使用线程监控文件目录变化的实现方法
- zabbix监控windows客户端的方法(随便耍耍)
- zabbix监控mysql最简单的方法
- ubuntu系统下部署zabbix服务器监控的方法教程
- Zabbix低级发现结合jstat命令自动监控Java进程(jdk 1.8版本)
- 使用Kieker(基于AspectJ)监控Java桌面应用的基本方法
- java 方法的执行时间监控 设置超时(Future 接口)
- zabbix 监控java通用
- Zabbix监控Linux主机设置方法
- Java基于servlet监听器实现在线人数监控功能的方法
- zabbix使用自己编写脚本模板和zabbix自带模板两种方法添加对指定进程和端口的监控
- 使用zabbix-java-gateway监控JVM
- zabbix监控mysql down的时候 不报警解决方法
- 开源Java监控平台Zorka的基本使用方法
- 使用zabbix监控mongodb的方法
- Java实时监控日志文件并输出的方法详解
- zabbix监控Linux进程方法
- zabbix使用zabbix-java-gateway监控jvm/tomcat性能
- zabbix 监控平台搭建过程中的报错与解决方法总结