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&#174; 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

Reply via email to