Details
-
Improvement
-
Status: Open
-
Minor
-
Resolution: Unresolved
-
2.20.1
-
None
-
Unknown
Description
we want to use camel with multiple polling endpoints of type SNMP. The restrictions we have are:
- snmp version 3 with authentication and privacy
- each endpoint might have different credentials und securityName (user).
When we configure two endpoint with the URIs
snmp:192.168.56.101:161?snmpVersion=3&type=POLL&oids=1.3.6.1.2.1.7.5.1&authenticationPassphrase=11111111&authenticationProtocol=SHA1
&privacyPassphrase=11111111&privacyProtocol=PrivAES128&securityName=secname111&securityLevel=3
and
snmp:192.168.56.102:1612?snmpVersion=3&type=POLL&oids=1.3.6.1.2.1.7.5.1&authenticationPassphrase=22222222&authenticationProtocol=SHA1
&privacyPassphrase=22222222&privacyProtocol=PrivAES128&securityName=secname222&securityLevel=3
We get exceptions when polling the first endpoint
2018-01-08 13:05:12.124 WARN 3076 — [.168.56.101:161] o.a.c.c.s.SnmpOIDPoller : Consumer Consumer[snmp://192.168.56.101:161?authenticationPassphrase=xxxxxx&authenticationProtocol=SHA1&oids=1.3.6.1.2.1.7.5.1&privacyPassphrase=xxxxxx&privacyProtocol=AES128&securityLevel=3&securityName= secname111&snmpVersion=3&type=POLL] failed polling endpoint: snmp://udp:192.168.56.101/161. Will try again at next poll. Caused by: [org.snmp4j.MessageException - Message processing model 3 returned error: Unknown security name]
org.snmp4j.MessageException: Message processing model 3 returned error: Unknown security name
at org.snmp4j.MessageDispatcherImpl.sendPdu(MessageDispatcherImpl.java:520) ~[snmp4j-2.5.0.jar:?]
at org.snmp4j.Snmp.sendMessage(Snmp.java:1059) ~[snmp4j-2.5.0.jar:?]
at org.snmp4j.Snmp.send(Snmp.java:1029) ~[snmp4j-2.5.0.jar:?]
at org.snmp4j.Snmp.send(Snmp.java:1013) ~[snmp4j-2.5.0.jar:?]
at org.apache.camel.component.snmp.SnmpOIDPoller.poll(SnmpOIDPoller.java:176) ~[camel-snmp-2.19.4.jar:2.19.4]
at org.apache.camel.impl.ScheduledPollConsumer.doRun(ScheduledPollConsumer.java:174) [camel-core-2.19.4.jar:2.19.4]
at org.apache.camel.impl.ScheduledPollConsumer.run(ScheduledPollConsumer.java:101) [camel-core-2.19.4.jar:2.19.4]
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_112]
at java.util.concurrent.FutureTask.runAndReset(Unknown Source) [?:1.8.0_112]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(Unknown Source) [?:1.8.0_112]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source) [?:1.8.0_112]
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:1.8.0_112]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:1.8.0_112]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_112]
It seems that after configuration of the second endpoint the security information of the first endpoint is not found/used anymore.
See Nabble: http://camel.465427.n5.nabble.com/Bug-in-component-camel-snmp-td5816536.html