Java 8 Zabbix JMX Tomcat8监控失败

Java 8 Zabbix JMX Tomcat8监控失败,java-8,jmx,tomcat8,zabbix,Java 8,Jmx,Tomcat8,Zabbix,我正在尝试使用JMX使用JDK8监视Tomcat8。 我已经设置了代理并修改了startup.sh 在我的zabbix_java_gateway.log上,我得到以下异常: WARN com.zabbix.gateway.SocketProcessor-处理请求时出错 com.zabbix.gateway.ZabbixException:java.net.SocketTimeoutException: 连接超时: 服务:jmx:rmi:///jndi/rmi://server1.example.

我正在尝试使用JMX使用JDK8监视Tomcat8。 我已经设置了代理并修改了startup.sh

在我的zabbix_java_gateway.log上,我得到以下异常:

WARN com.zabbix.gateway.SocketProcessor-处理请求时出错 com.zabbix.gateway.ZabbixException:java.net.SocketTimeoutException: 连接超时: 服务:jmx:rmi:///jndi/rmi://server1.example.com:10052/jmxrmi 位于com.zabbix.gateway.JMXItemChecker.getValues(JMXItemChecker.java:97) ~[zabbix-java-gateway-2.4.7.jar:na] 位于com.zabbix.gateway.SocketProcessor.run(SocketProcessor.java:63) ~[zabbix-java-gateway-2.4.7.jar:na] 位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_71] 位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_71] 在java.lang.Thread.run(Thread.java:745)[na:1.8.0_71]处,由以下原因引起:java.net.SocketTimeoutException:连接超时: 服务:jmx:rmi:///jndi/rmi://server1.example.com:10052/jmxrmi 位于com.zabbix.gateway.ZabbixJMXConnectorFactory.connect(ZabbixJMXConnectorFactory.java:123) ~[zabbix-java-gateway-2.4.7.jar:na] 位于com.zabbix.gateway.JMXItemChecker.getValues(JMXItemChecker.java:89) ~[zabbix-java-gateway-2.4.7.jar:na] ... 省略4个公共框架

在我的startup.sh上,我在CATALINA_选项中添加了以下内容

-Dcom.sun.management.jmxremote-Dcom.sun.management.jmxremote.port=10052-Dcom.sun.management.jmxremote.authenticate=true-Dcom.sun.management.jmxremote.password.file=/opt/tomcat-latest/conf/jmxremote.password -Dcom.sun.management.jmxremote.access.file=/opt/tomcat latest/conf/jmxremote.access -Dcom.sun.management.jmxremote.ssl=false-Djava.rmi.server.hostname=server1.example.com

我的zabbix_agentd.conf包含以下内容:

PidFile=/tmp/zabbix_agentd.pid LogFile=/var/log/zabbix_agentd.log LogFileSize=1 DebugLevel=3 Server=monitor.example.com Hostname=server1.example.com ListenPort=10050 StartAgents=5超时=30

我已经做了以下工作:

  • 已使用jconsole成功连接到服务器
  • 删除身份验证
  • 通过端口10050/10052远程登录服务器
  • 奇怪的是,同样的设置在使用JDK7的Tomcat6上运行良好

    编辑1 我已经更新了zabbix服务器上的JDK版本,使其比JAVA节点上安装的JDK版本更新—结果仍然相同—它以

    ZBX_TCP_READ()失败:[4]系统调用中断

    更新 所以我终于明白了。 我的tomcat配置文件
    -Djava.rmi.server.hostname=server1.example.com
    我不明白主机名应该设置为监视服务器和监视服务器主机名。 显然,Tomcat6上有一个bug,这个指令不起作用。 把它取下来,问题就完全解决了

    谢谢


    Liron

    请检查zabbix_agentd.conf配置是否与此处相关?Zabbix中的JMX监控不涉及Zabbix代理-仅涉及Zabbix服务器和Zabbix Java网关。您是正确的-Zabbix conf文件不相关。