Solved.  I didn't do the proper initialization to set up for receiving
events.

 

Thanks,

Jerome

 

 

Jerome Callaghan
Application Development Specialist
Phone: (866) 848-5848 x 269
Mobile: (401) 871-9242
towerstream
Boston - Chicago - Dallas/Fort Worth - Las Vegas/Reno - Los Angeles -
Miami
Nashville - New York - Philadelphia - Providence/Newport - San Francisco
- Seattle




From: Jerome Callaghan 
Sent: Friday, February 03, 2012 11:04 PM
To: 'opennms-devel@lists.sourceforge.net'
Subject: Trying to write OpenNMS daemon event handler

 

I'm trying to write an event handler that will allow me to get into some
java processing for some events.  I'm not getting log entries that I
expect on an event when I deploy and I wonder if anyone might have some
insights .

 

Here's the configuration for the service:

 

service-configuration.xml

  <service>

    <name>OpenNMS:Name=Tsd</name>

    <class-name>com.towerstream.opennms.netmgt.tsd.jmx.Tsd</class-name>

    <invoke at="start" pass="0" method="init"/>

    <invoke at="start" pass="1" method="start"/>

    <invoke at="status" pass="0" method="status"/>

    <invoke at="stop" pass="0" method="stop"/>

  </service>

 

And the log4j properties configuration:

 

log4j.properties

# Tsd Towerstream

#log4j.category.OpenNMS.Tsd=WARN, TSD

log4j.category.OpenNMS.Tsd=DEBUG, TSD

log4j.additivity.OpenNMS.Tsd=false

log4j.appender.TSD=org.apache.log4j.RollingFileAppender

log4j.appender.TSD.MaxFileSize=100MB

log4j.appender.TSD.MaxBackupIndex=4

log4j.appender.TSD.File=/opt/opennms/logs/daemon/tsd.log

log4j.appender.TSD.layout=org.apache.log4j.PatternLayout

log4j.appender.TSD.layout.ConversionPattern=%d %-5p [%t] %c{1}: %m%n

 

Here's the daemon class which is configured.

 

jmx.Tsd

package com.towerstream.opennms.netmgt.tsd.jmx;

 

public class Tsd extends AbstractServiceDaemon implements TsdMBean {

 

    protected void onInit() {

        EventIpcManagerFactory.init();

        

 
getTsd().setEventManager(EventIpcManagerFactory.getIpcManager());

        getTsd().init();

    }

 

    private com.towerstream.opennms.netmgt.tsd.Tsd getTsd() {

        return com.towerstream.opennms.netmgt.tsd.Tsd.getInstance();

    }

 

And the related daemon which logs data when an event is received.

 

Tsd

package com.towerstream.opennms.netmgt.tsd;

 

public class Tsd extends AbstractServiceDaemon {

 

       protected void onInit() {

              m_eventReader = new BroadcastEventProcessor();

       }

 

 

BroadcastEventProcessor

public final class BroadcastEventProcessor implements EventListener {

 

       public void onEvent(Event event) {

        

        if (isReloadConfigEvent(event)) {

            log().info("onEvent: handling reload configuration
event...");

            return;

        }

        

        log().info("onEvent: " +event.getDbid() +event +" "
+event.getDescr());

              

       }

 

 

I see startup in the log file, but never any events:

2012-02-03 19:23:09,170 DEBUG [Main] Tsd: OpenNMS.Tsd starting.

2012-02-03 19:23:09,170 INFO  [Main] Tsd: OpenNMS.Tsd started.

 

 

 

Jerome Callaghan
Application Development Specialist
Phone: (866) 848-5848 x 269
Mobile: (401) 871-9242
towerstream
Boston - Chicago - Dallas/Fort Worth - Las Vegas/Reno - Los Angeles -
Miami
Nashville - New York - Philadelphia - Providence/Newport - San Francisco
- Seattle





-------------------------
------------------------------------------------------------------------------
Try before you buy = See our experts in action!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-dev2
_______________________________________________
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