-
Type:
Incident report
-
Resolution: Cannot Reproduce
-
Priority:
Critical
-
None
-
Affects Version/s: 2.0.1, 2.0.2
-
Component/s: Java gateway (J)
-
None
-
Environment:OpenSuse 12.1, Sun 1.6.0-33
With both Zabbix 2.0.1 and 2.0.2 I saw a strange error.
2 JMX templates defined for same host, one for Hotspot and another one for Tomcat 6.
JMX credentials defined are ommited for some requests :
Lost / Ommited JMX credentials :
2012-08-03 00:47:07.153 [pool-1-thread-4] DEBUG c.z.gateway.BinaryProtocolSpeaker - received the following data in request: {
"request":"java gateway jmx",
"conn":"myhost.mycorp.org",
"port":12345,
"keys":["jmx[\"java.lang:type=GarbageCollector,name=PS MarkSweep\",CollectionCount]"]}
2012-08-03 00:47:07.153 [pool-1-thread-4] DEBUG com.zabbix.gateway.SocketProcessor - dispatched request to class com.zabbix.gateway.JMXItemChecker
2012-08-03 00:47:07.153 [pool-1-thread-4] DEBUG com.zabbix.gateway.JMXItemChecker - connecting to JMX agent at service:jmx:rmi:///jndi/rmi://myhost.mycorp.org:12345/jmxrmi
2012-08-03 00:47:07.166 [pool-1-thread-4] WARN com.zabbix.gateway.SocketProcessor - error processing request
com.zabbix.gateway.ZabbixException: java.lang.SecurityException: Authentication failed! Credentials required
at com.zabbix.gateway.JMXItemChecker.getValues(JMXItemChecker.java:100) ~[zabbix-java-gateway-2.0.2.jar:na]
at com.zabbix.gateway.SocketProcessor.run(SocketProcessor.java:63) ~[zabbix-java-gateway-2.0.2.jar:na]
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [na:1.6.0_33]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [na:1.6.0_33]
at java.lang.Thread.run(Thread.java:662) [na:1.6.0_33]
Caused by: java.lang.SecurityException: Authentication failed! Credentials required
at com.sun.jmx.remote.security.JMXPluggableAuthenticator.authenticationFailure(JMXPluggableAuthenticator.java:193) ~[na:1.6.0_33]
at com.sun.jmx.remote.security.JMXPluggableAuthenticator.authenticate(JMXPluggableAuthenticator.java:145) ~[na:1.6.0_33]
at sun.management.jmxremote.ConnectorBootstrap$AccessFileCheckerAuthenticator.authenticate(ConnectorBootstrap.java:201) ~[na:1.6.0_33]
at javax.management.remote.rmi.RMIServerImpl.doNewClient(RMIServerImpl.java:213) ~[na:1.6.0_33]
at javax.management.remote.rmi.RMIServerImpl.newClient(RMIServerImpl.java:180) ~[na:1.6.0_33]
Used JMX credentials :
2012-08-03 00:35:06.964 [pool-1-thread-3] DEBUG c.z.gateway.BinaryProtocolSpeaker - received the following data in request: {
"request":"java gateway jmx",
"conn":"myhost.mycorp.org",
"port":12345,
"username":"reader",
"password":"passwd1",
"keys":["jmx[\"Catalina:type=GlobalRequestProcessor,name=http-8080\",requestCount]"]}
2012-08-03 00:35:06.964 [pool-1-thread-3] DEBUG com.zabbix.gateway.SocketProcessor - dispatched request to class com.zabbix.gateway.JMXItemChecker
2012-08-03 00:35:06.965 [pool-1-thread-3] DEBUG com.zabbix.gateway.JMXItemChecker - connecting to JMX agent at service:jmx:rmi:///jndi/rmi://myhost.mycorp.org:12345/jmxrmi
2012-08-03 00:35:06.977 [pool-1-thread-3] DEBUG com.zabbix.gateway.ItemChecker - getting value for item 'jmx["Catalina:type=GlobalRequestProcessor,name=http-8080",requestCount]'
2012-08-03 00:35:06.978 [pool-1-thread-3] DEBUG com.zabbix.gateway.ItemChecker - received value '1103' for item 'jmx["Catalina:type=GlobalRequestProcessor,name=http-8080",requestCount]'
2012-08-03 00:35:06.979 [pool-1-thread-3] DEBUG c.z.gateway.BinaryProtocolSpeaker - sending the following data in response: {
"data": [{"value": "1103"}],
"response": "success"
}