Greetings:
I can connect via JMX to a java app running on my Zappix server, but I cannot connect via JMX to an application running on another box. Some communication is clearly going on because I get a different error when the client process is not running.
This is the stack trace I am getting; it is strange because it says it is trying to connect to local host when processing the response from the remote client (192.168.0.3):
2013-10-21 16:34:37.674 [pool-1-thread-1] DEBUG com.zabbix.gateway.SocketProcessor - finished processing incoming connection
2013-10-21 16:34:40.063 [pool-1-thread-2] DEBUG com.zabbix.gateway.SocketProcessor - starting to process incoming connection
2013-10-21 16:34:40.064 [pool-1-thread-2] DEBUG c.z.gateway.BinaryProtocolSpeaker - reading Zabbix protocol header
2013-10-21 16:34:40.064 [pool-1-thread-2] DEBUG c.z.gateway.BinaryProtocolSpeaker - reading 8 bytes of data length
2013-10-21 16:34:40.065 [pool-1-thread-2] DEBUG c.z.gateway.BinaryProtocolSpeaker - reading 97 bytes of request data
2013-10-21 16:34:40.066 [pool-1-thread-2] DEBUG c.z.gateway.BinaryProtocolSpeaker - received the following data in request: {
"request":"java gateway jmx",
"conn":"192.168.0.3",
"port":12345,
"keys":["jmx.discovery"]}
2013-10-21 16:34:40.066 [pool-1-thread-2] DEBUG com.zabbix.gateway.SocketProcessor - dispatched request to class com.zabbix.gateway.JMXItemChecker
2013-10-21 16:34:40.066 [pool-1-thread-2] DEBUG com.zabbix.gateway.JMXItemChecker - connecting to JMX agent at service:jmx:rmi:///jndi/rmi://192.168.0.3:12345/jmxrmi
2013-10-21 16:34:40.083 [pool-1-thread-2] WARN com.zabbix.gateway.SocketProcessor - error processing request
com.zabbix.gateway.ZabbixException: java.rmi.ConnectException: Connection refused to host: 127.0.0.1; nested exception is:
java.net.ConnectException: Connection refused
at com.zabbix.gateway.JMXItemChecker.getValues(JMXIte mChecker.java:100) ~[zabbix-java-gateway-2.0.9.jar:na]
at com.zabbix.gateway.SocketProcessor.run(SocketProce ssor.java:63) ~[zabbix-java-gateway-2.0.9.jar:na]
at java.util.concurrent.ThreadPoolExecutor.runWorker( ThreadPoolExecutor.java:1146) [na:1.6.0_27]
at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:615) [na:1.6.0_27]
at java.lang.Thread.run(Thread.java:679) [na:1.6.0_27]
Caused by: java.rmi.ConnectException: Connection refused to host: 127.0.0.1; nested exception is:
java.net.ConnectException: Connection refused
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEnd point.java:619) ~[na:1.6.0_27]
at sun.rmi.transport.tcp.TCPChannel.createConnection( TCPChannel.java:216) ~[na:1.6.0_27]
at sun.rmi.transport.tcp.TCPChannel.newConnection(TCP Channel.java:202) ~[na:1.6.0_27]
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:1 28) ~[na:1.6.0_27]
at javax.management.remote.rmi.RMIServerImpl_Stub.new Client(Unknown Source) ~[na:1.6.0_27]
at javax.management.remote.rmi.RMIConnector.getConnec tion(RMIConnector.java:2346) ~[na:1.6.0_27]
at javax.management.remote.rmi.RMIConnector.connect(R MIConnector.java:297) ~[na:1.6.0_27]
at javax.management.remote.JMXConnectorFactory.connec t(JMXConnectorFactory.java:268) ~[na:1.6.0_27]
at com.zabbix.gateway.JMXItemChecker.getValues(JMXIte mChecker.java:92) ~[zabbix-java-gateway-2.0.9.jar:na]
... 4 common frames omitted
Caused by: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method) ~[na:1.6.0_27]
at java.net.AbstractPlainSocketImpl.doConnect(Abstrac tPlainSocketImpl.java:327) ~[na:1.6.0_27]
at java.net.AbstractPlainSocketImpl.connectToAddress( AbstractPlainSocketImpl.java:193) ~[na:1.6.0_27]
at java.net.AbstractPlainSocketImpl.connect(AbstractP lainSocketImpl.java:180) ~[na:1.6.0_27]
at java.net.SocksSocketImpl.connect(SocksSocketImpl.j ava:385) ~[na:1.6.0_27]
at java.net.Socket.connect(Socket.java:546) ~[na:1.6.0_27]
at java.net.Socket.connect(Socket.java:495) ~[na:1.6.0_27]
at java.net.Socket.<init>(Socket.java:392) ~[na:1.6.0_27]
at java.net.Socket.<init>(Socket.java:206) ~[na:1.6.0_27]
at sun.rmi.transport.proxy.RMIDirectSocketFactory.cre ateSocket(RMIDirectSocketFactory.java:40) ~[na:1.6.0_27]
at sun.rmi.transport.proxy.RMIMasterSocketFactory.cre ateSocket(RMIMasterSocketFactory.java:146) ~[na:1.6.0_27]
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEnd point.java:613) ~[na:1.6.0_27]
... 12 common frames omitted
2013-10-21 16:34:40.087 [pool-1-thread-2] DEBUG c.z.gateway.BinaryProtocolSpeaker - sending the following data in response: { "response" : "failed", "error" : "java.rmi.ConnectException: Connection refused to host: 127.0.0.1; nested exception is: \n\tjava.net.ConnectException: Connection refused" }
Thanks in advance.
I can connect via JMX to a java app running on my Zappix server, but I cannot connect via JMX to an application running on another box. Some communication is clearly going on because I get a different error when the client process is not running.
This is the stack trace I am getting; it is strange because it says it is trying to connect to local host when processing the response from the remote client (192.168.0.3):
2013-10-21 16:34:37.674 [pool-1-thread-1] DEBUG com.zabbix.gateway.SocketProcessor - finished processing incoming connection
2013-10-21 16:34:40.063 [pool-1-thread-2] DEBUG com.zabbix.gateway.SocketProcessor - starting to process incoming connection
2013-10-21 16:34:40.064 [pool-1-thread-2] DEBUG c.z.gateway.BinaryProtocolSpeaker - reading Zabbix protocol header
2013-10-21 16:34:40.064 [pool-1-thread-2] DEBUG c.z.gateway.BinaryProtocolSpeaker - reading 8 bytes of data length
2013-10-21 16:34:40.065 [pool-1-thread-2] DEBUG c.z.gateway.BinaryProtocolSpeaker - reading 97 bytes of request data
2013-10-21 16:34:40.066 [pool-1-thread-2] DEBUG c.z.gateway.BinaryProtocolSpeaker - received the following data in request: {
"request":"java gateway jmx",
"conn":"192.168.0.3",
"port":12345,
"keys":["jmx.discovery"]}
2013-10-21 16:34:40.066 [pool-1-thread-2] DEBUG com.zabbix.gateway.SocketProcessor - dispatched request to class com.zabbix.gateway.JMXItemChecker
2013-10-21 16:34:40.066 [pool-1-thread-2] DEBUG com.zabbix.gateway.JMXItemChecker - connecting to JMX agent at service:jmx:rmi:///jndi/rmi://192.168.0.3:12345/jmxrmi
2013-10-21 16:34:40.083 [pool-1-thread-2] WARN com.zabbix.gateway.SocketProcessor - error processing request
com.zabbix.gateway.ZabbixException: java.rmi.ConnectException: Connection refused to host: 127.0.0.1; nested exception is:
java.net.ConnectException: Connection refused
at com.zabbix.gateway.JMXItemChecker.getValues(JMXIte mChecker.java:100) ~[zabbix-java-gateway-2.0.9.jar:na]
at com.zabbix.gateway.SocketProcessor.run(SocketProce ssor.java:63) ~[zabbix-java-gateway-2.0.9.jar:na]
at java.util.concurrent.ThreadPoolExecutor.runWorker( ThreadPoolExecutor.java:1146) [na:1.6.0_27]
at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:615) [na:1.6.0_27]
at java.lang.Thread.run(Thread.java:679) [na:1.6.0_27]
Caused by: java.rmi.ConnectException: Connection refused to host: 127.0.0.1; nested exception is:
java.net.ConnectException: Connection refused
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEnd point.java:619) ~[na:1.6.0_27]
at sun.rmi.transport.tcp.TCPChannel.createConnection( TCPChannel.java:216) ~[na:1.6.0_27]
at sun.rmi.transport.tcp.TCPChannel.newConnection(TCP Channel.java:202) ~[na:1.6.0_27]
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:1 28) ~[na:1.6.0_27]
at javax.management.remote.rmi.RMIServerImpl_Stub.new Client(Unknown Source) ~[na:1.6.0_27]
at javax.management.remote.rmi.RMIConnector.getConnec tion(RMIConnector.java:2346) ~[na:1.6.0_27]
at javax.management.remote.rmi.RMIConnector.connect(R MIConnector.java:297) ~[na:1.6.0_27]
at javax.management.remote.JMXConnectorFactory.connec t(JMXConnectorFactory.java:268) ~[na:1.6.0_27]
at com.zabbix.gateway.JMXItemChecker.getValues(JMXIte mChecker.java:92) ~[zabbix-java-gateway-2.0.9.jar:na]
... 4 common frames omitted
Caused by: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method) ~[na:1.6.0_27]
at java.net.AbstractPlainSocketImpl.doConnect(Abstrac tPlainSocketImpl.java:327) ~[na:1.6.0_27]
at java.net.AbstractPlainSocketImpl.connectToAddress( AbstractPlainSocketImpl.java:193) ~[na:1.6.0_27]
at java.net.AbstractPlainSocketImpl.connect(AbstractP lainSocketImpl.java:180) ~[na:1.6.0_27]
at java.net.SocksSocketImpl.connect(SocksSocketImpl.j ava:385) ~[na:1.6.0_27]
at java.net.Socket.connect(Socket.java:546) ~[na:1.6.0_27]
at java.net.Socket.connect(Socket.java:495) ~[na:1.6.0_27]
at java.net.Socket.<init>(Socket.java:392) ~[na:1.6.0_27]
at java.net.Socket.<init>(Socket.java:206) ~[na:1.6.0_27]
at sun.rmi.transport.proxy.RMIDirectSocketFactory.cre ateSocket(RMIDirectSocketFactory.java:40) ~[na:1.6.0_27]
at sun.rmi.transport.proxy.RMIMasterSocketFactory.cre ateSocket(RMIMasterSocketFactory.java:146) ~[na:1.6.0_27]
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEnd point.java:613) ~[na:1.6.0_27]
... 12 common frames omitted
2013-10-21 16:34:40.087 [pool-1-thread-2] DEBUG c.z.gateway.BinaryProtocolSpeaker - sending the following data in response: { "response" : "failed", "error" : "java.rmi.ConnectException: Connection refused to host: 127.0.0.1; nested exception is: \n\tjava.net.ConnectException: Connection refused" }
Thanks in advance.