IfInfo can throw NullPointerException

Description

On a customer machine, we ran into a NPE during SNMP data collection because IfInfo was trying to construct a file path with a null element.

Acceptance / Success Criteria

None

Lucidchart Diagrams

Activity

Seth Leger November 28, 2013 at 11:10 AM

I fixed this by added a check for a null resource label inside the IfInfo class. The code will now throw a FileNotFoundException if it encounters a problem and all of the collection code will ignore persistence of that resource instead of throwing an uncaught exception. Marking as fixed.

commit 902ede78120ea9828ed7ca33d806c3aa81a807c6

Seth Leger November 28, 2013 at 11:06 AM

Here's the stack trace:

2013-11-22 10:11:43,092 ERROR [CollectdScheduler-500 Pool-fiber375] CollectableService: An undeclared throwable was caught during data collection for interface 10.0.0.1/SNMP org.opennms.netmgt.collectd.CollectionException: An undeclared throwable was caught during data collection for interface 10.0.0.1/SNMP at org.opennms.netmgt.collectd.CollectableService.doCollection(CollectableService.java:398) at org.opennms.netmgt.collectd.CollectableService.run(CollectableService.java:300) at org.opennms.netmgt.scheduler.LegacyScheduler$1.run(LegacyScheduler.java:287) at org.opennms.core.concurrent.RunnableConsumerThreadPool$FiberThreadImpl.run(RunnableConsumerThreadPool.java:419) at java.lang.Thread.run(Thread.java:744) Caused by: java.lang.NullPointerException at java.io.File.<init>(File.java:360) at org.opennms.netmgt.collectd.IfInfo.getResourceDir(IfInfo.java:223) at org.opennms.netmgt.collectd.GroupPersister.visitGroup(GroupPersister.java:72) at org.opennms.netmgt.config.collector.AttributeGroup.visit(AttributeGroup.java:106) at org.opennms.netmgt.collectd.SnmpCollectionResource.visit(SnmpCollectionResource.java:159) at org.opennms.netmgt.collectd.SnmpCollectionSet.visit(SnmpCollectionSet.java:307) at org.opennms.netmgt.collectd.CollectableService.doCollection(CollectableService.java:372) ... 4 more
Fixed

Details

Assignee

Reporter

Labels

Fix versions

Affects versions

Priority

PagerDuty

Created November 28, 2013 at 11:05 AM
Updated January 27, 2017 at 4:21 PM
Resolved November 28, 2013 at 11:10 AM

Flag notifications