org.opennms.netmgt.poller.monitors
Class GpMonitor

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

@Distributable(value=DAEMON)
public final class GpMonitor
extends IPv4Monitor

This class is designed to be used by the service poller framework to test the availability of a generic service by calling an external script or program. The external script or program will be passed two options: --hostname, the IP address of the host to be polled, and --timeout, the timeout in seconds. Additional options or arguments can be specified in the poller configuration.

Version:
$Id: $
Author:
Tarus Balog , Mike , OpenNMS , Bill Ayres , Tarus Balog , Mike , OpenNMS , Bill Ayres , Weave, Tarus Balog , Mike , OpenNMS , Bill Ayres , Tarus Balog , Mike , OpenNMS , Bill Ayres

Constructor Summary
GpMonitor()
           
 
Method Summary
 PollStatus poll(MonitoredService svc, Map<String,Object> parameters)
           This method is the heart of the plug-in monitor.
 
Methods inherited from class org.opennms.netmgt.poller.monitors.IPv4Monitor
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

GpMonitor

public GpMonitor()
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 call the specified external script or program. If the connection request is successful, the banner line returned as standard output by the script or program is parsed for a partial match with the banner string specified in the poller configuration. Provided that the script's response is valid we set the service status to SERVICE_AVAILABLE and return. The timeout is handled by ExecRunner and is also passed as a parameter to the script or program being called.

Specified by:
poll in interface ServiceMonitor
Specified by:
poll in class IPv4Monitor
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


Copyright © 2011. All Rights Reserved.