org.opennms.netmgt.poller.monitors
Class NrpeMonitor

java.lang.Object
  extended by org.opennms.netmgt.poller.monitors.AbstractServiceMonitor
      extended by org.opennms.netmgt.poller.monitors.NrpeMonitor
All Implemented Interfaces:
ServiceMonitor

@Distributable
public final class NrpeMonitor
extends AbstractServiceMonitor

This class is designed to be used by the service poller framework to test the availability of a generic TCP service on remote interfaces. The class implements the ServiceMonitor interface that allows it to be used along with other plug-ins by the service poller framework.

Author:
DJ Gregor, Tarus Balog , Mike

Constructor Summary
NrpeMonitor()
           
 
Method Summary
 PollStatus poll(MonitoredService svc, Map<String,Object> parameters)
           This method is the heart of the plug-in monitor.
protected  Socket wrapSocket(Socket socket, boolean useSsl)
          wrapSocket
 
Methods inherited from class org.opennms.netmgt.poller.monitors.AbstractServiceMonitor
initialize, initialize, log, logDown, logDown, logUp, release, release
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NrpeMonitor

public NrpeMonitor()
Method Detail

poll

public PollStatus poll(MonitoredService svc,
                       Map<String,Object> parameters)

This method is the heart of the plug-in monitor. Each time an interface requires a check to be performed as defined by the scheduler the poll method is invoked. The poll is passed the interface to check

By default when the status transition from up to down or vice versa the framework will generate an event. Additionally, if the polling interval changes due to an extended unavailability, the framework will generate an additional down event. The plug-in can suppress the generation of the default events by setting the suppress event bit in the returned integer.

Poll the specified address for service availability. During the poll an attempt is made to connect on the specified port. If the connection request is successful, the banner line generated by the interface is parsed and if the banner text indicates that we are talking to Provided that the interface's response is valid we set the service status to SERVICE_AVAILABLE and return.

Specified by:
poll in interface ServiceMonitor
Specified by:
poll in class AbstractServiceMonitor
Parameters:
svc - TODO
parameters - The package parameters (timeout, retry, etc...) to be used for this poll.
Returns:
The availability of the interface and if a transition event should be suppressed.
See Also:
PollStatus.SERVICE_AVAILABLE, PollStatus.SERVICE_UNAVAILABLE, PollStatus.SERVICE_AVAILABLE, PollStatus.SERVICE_UNAVAILABLE

wrapSocket

protected Socket wrapSocket(Socket socket,
                            boolean useSsl)
                     throws IOException

wrapSocket

Parameters:
socket - a Socket object.
useSsl - a boolean.
Returns:
a Socket object.
Throws:
IOException - if any.


Copyright © 2011. All Rights Reserved.