Hi, I'm seeing some exceptions getting thrown in my event log which seem to be caused by passiveServiceStatus updates:
2010-02-18 17:14:53,999 DEBUG [Event TCP Receiver[5817][127.0.0.1:55773]] TcpStreamHandler: Event record converted 2010-02-18 17:14:53,999 DEBUG [Event TCP Receiver[5817][127.0.0.1:55773]] TcpStreamHandler: handling event, uei = uei.opennms.org/services/passiveServiceStatus 2010-02-18 17:14:53,999 DEBUG [EventHandlerPool-fiber1] DefaultEventHandlerImpl: Event { 2010-02-18 17:14:53,999 DEBUG [EventHandlerPool-fiber1] DefaultEventHandlerImpl: uuid = <not-set> 2010-02-18 17:14:53,999 DEBUG [EventHandlerPool-fiber1] DefaultEventHandlerImpl: uei = uei.opennms.org/services/passiveServiceStatus 2010-02-18 17:14:53,999 DEBUG [EventHandlerPool-fiber1] DefaultEventHandlerImpl: src = perl_send_event 2010-02-18 17:14:53,999 DEBUG [EventHandlerPool-fiber1] DefaultEventHandlerImpl: iface = 10.242.24.1 2010-02-18 17:14:53,999 DEBUG [EventHandlerPool-fiber1] DefaultEventHandlerImpl: time = Thursday, February 18, 2010 5:14:53 PM GMT 2010-02-18 17:14:53,999 DEBUG [EventHandlerPool-fiber1] DefaultEventHandlerImpl: parms { 2010-02-18 17:14:53,999 DEBUG [EventHandlerPool-fiber1] DefaultEventHandlerImpl: (passiveStatus, Down) 2010-02-18 17:14:53,999 DEBUG [EventHandlerPool-fiber1] DefaultEventHandlerImpl: (passiveServiceName, CPE Radio Link) 2010-02-18 17:14:53,999 DEBUG [EventHandlerPool-fiber1] DefaultEventHandlerImpl: (passiveIpAddr, 10.242.24.1) 2010-02-18 17:14:53,999 DEBUG [EventHandlerPool-fiber1] DefaultEventHandlerImpl: (passiveNodeLabel, APU-LKH 10G) 2010-02-18 17:14:53,999 DEBUG [EventHandlerPool-fiber1] DefaultEventHandlerImpl: } 2010-02-18 17:14:53,999 DEBUG [EventHandlerPool-fiber1] DefaultEventHandlerImpl: } 2010-02-18 17:14:53,999 DEBUG [EventHandlerPool-fiber1] EventConfData: Match found using key: EventKey [ uei = [uei.opennms.org/services/passiveServiceStatus] ] 2010-02-18 17:14:53,999 DEBUG [EventHandlerPool-fiber1] JdbcEventWriter: JdbcEventWriter: processing uei.opennms.org/services/passiveServiceStatus nodeid: 0 ipaddr: 10.242.24.1 serviceid: CPE Radio Link 2010-02-18 17:14:54,000 DEBUG [Event TCP Receiver[5817][127.0.0.1:55773]] TcpStreamHandler: stopping record handler 2010-02-18 17:14:54,000 DEBUG [Event TCP Receiver[5817][127.0.0.1:55773]] TcpRecordHandler: Interrupting thread TCPRecord Chuncker[127.0.0.1:55773] 2010-02-18 17:14:54,000 DEBUG [Event TCP Receiver[5817][127.0.0.1:55773]] TcpRecordHandler: Joining Thread TCPRecord Chuncker[127.0.0.1:55773] 2010-02-18 17:14:54,000 DEBUG [EventHandlerPool-fiber1] JdbcEventWriter: EventWriter: DBID: 1533968 2010-02-18 17:14:54,000 DEBUG [Event TCP Receiver[5817][127.0.0.1:55773]] TcpRecordHandler: Thread TCPRecord Chuncker[127.0.0.1:55773] Joined 2010-02-18 17:14:54,000 DEBUG [Event TCP Receiver[5817][127.0.0.1:55773]] TcpStreamHandler: record handler stopped 2010-02-18 17:14:54,000 DEBUG [Event TCP Receiver[5817][127.0.0.1:55773]] TcpStreamHandler: closing connnection 2010-02-18 17:14:54,001 DEBUG [Event TCP Receiver[5817][127.0.0.1:55773]] TcpStreamHandler: connnection closed 2010-02-18 17:14:54,001 DEBUG [Event TCP Receiver[5817][127.0.0.1:55773]] TcpStreamHandler: Thread exiting 2010-02-18 17:14:54,001 WARN [EventHandlerPool-fiber1] JdbcEventWriter: Failed to convert time Thursday, February 18, 2010 5:14:53 PM GMT to Timestamp, setting current time instead. Exception: java.text.ParseException: Unparseable date: "Thursday, February 18, 2010 5:14:53 PM GMT" java.text.ParseException: Unparseable date: "Thursday, February 18, 2010 5:14:53 PM GMT" at java.text.DateFormat.parse(DateFormat.java:354) at org.opennms.netmgt.EventConstants.parseToDate(EventConstants.java:911) at org.opennms.netmgt.eventd.processor.AbstractJdbcPersister.getEventTime(AbstractJdbcPersister.java:274) at org.opennms.netmgt.eventd.processor.JdbcEventWriter.insertEvent(JdbcEventWriter.java:191) at org.opennms.netmgt.eventd.processor.JdbcEventWriter.process(JdbcEventWriter.java:118) at org.opennms.netmgt.eventd.DefaultEventHandlerImpl$EventHandlerRunnable.run(DefaultEventHandlerImpl.java:134) at org.opennms.core.concurrent.RunnableConsumerThreadPool$FiberThreadImpl.run(RunnableConsumerThreadPool.java:422) at java.lang.Thread.run(Thread.java:636) Having trawled through the code it seems that event times should be stored in Java's DateFormat.FULL. In most places in the code this is achieved by using the EventConstants.formatToString() function but certainly not all. This may explain why the exception triggers later. However I'm having trouble tracking down where the Events related to passiveServiceStatus are originally created. * Question: Where are the Events related to passiveStatus created? I've seen a number of other places where the Date is implicitly created. For example in the NotificationManager the ResultSet is directly munged with rs.getString("eventtime"). I'm unfamiliar with Java but I couldn't see a guarantee this would result in a DateFormat.FULL style string. The broader question is why the time is stored in this way? Surely OpenNMS should be storing date and time in a standard Date class and only converting to human readable text strings when needed for display to humans? The currently approach seems a little too brittle. * Question: Is there any particular reason the Date is stored this way internally? Regards, -- Alex, homepage: http://www.bennee.com/~alex/ http://www.half-llama.co.uk ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ Please read the OpenNMS Mailing List FAQ: http://www.opennms.org/index.php/Mailing_List_FAQ opennms-devel mailing list To *unsubscribe* or change your subscription options, see the bottom of this page: https://lists.sourceforge.net/lists/listinfo/opennms-devel