Zabbix通过JMX(Java Management Extensions)可以对Java Application进行监控,Zabbix利用原生的Zabbix Java gateway,一个Java守护进程监控JMX应用。当Zabbix想要知道某个JMX counter当前的数据时,它只去询问ZabbixJava gateway,而gateway会去查询需要的数据,所有这些查询都是通过JMX管理API完成的。
使用时,一个Java应用不需要额外安装任何其他的软件,也不需要实现或扩展新的代码来处理Zabbix的查询,仅仅需要在Java 应用的配置文件中设置一些参数,支持远程JMX的监控。
这些参数主要有:
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=<你要设置的端口号>
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
例如:
java \
-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=12345 \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \
-jar/usr/share/doc/openjdk-6-jre-headless/demo/jfc/Notepad/Notepad.jar
上面的配置定义了Java程序使用12345端口监听来自本地的JMX的