@Distributable(value=DAEMON) public final class CiscoIpSlaMonitor extends SnmpMonitorStrategy
This class is used to monitor if a particular Cisco IP-SLA runs within thresholds and has no timeouts. The configured IP-SLA is monitored by the specified "ip sla tag"
This does SNMP and therefore relies on the SNMP configuration so it is not distributable.
Modifier and Type | Field and Description |
---|---|
static org.slf4j.Logger |
LOG |
EQUALS, GREATER_THAN, GREATER_THAN_EQUALS, LESS_THAN, LESS_THAN_EQUALS, MATCHES, NOT_EQUAL
Constructor and Description |
---|
CiscoIpSlaMonitor() |
Modifier and Type | Method and Description |
---|---|
void |
initialize(Map<String,Object> parameters)
This method is called after the framework creates an instance of the
plug-in.
|
void |
initialize(MonitoredService svc)
Called by the poller framework when an interface is being added to the
scheduler.
|
PollStatus |
poll(MonitoredService svc,
Map<String,Object> parameters)
This method is the heart of the plug-in monitor.
|
String |
serviceName()
Returns the name of the service that the plug-in monitors
("Cisco IP-SLA monitor").
|
getStringValue, meetsCriteria
getKeyedBoolean, getKeyedInteger, getKeyedLong, getKeyedObject, getKeyedString, release, release
public String serviceName()
Returns the name of the service that the plug-in monitors ("Cisco IP-SLA monitor").
public void initialize(Map<String,Object> parameters)
This method is called after the framework creates an instance of the plug-in. The framework passes the object a proxy object that can be used to retrieve configuration information specific to the plug-in. Additionally, any parameters for the plug-in from the package definition are passed using the parameters element.
If there is a critical error, like missing service libraries, the the Monitor may throw a ServiceMonitorException. If the plug-in throws an exception then the plug-in will be disabled in the framework.
This method is called after the framework creates an instance of the plug-in. The framework passes the object a proxy object that can be used to retrieve configuration information specific to the plug-in. Additionally, any parameters for the plug-in from the package definition are passed using the parameters element.
If there is a critical error, like missing service libraries, the monitor may throw a ServiceMonitorException. If the plug-in throws an exception then the plug-in will be disabled in the framework.
Initialize the service monitor.
initialize
in interface ServiceMonitor
initialize
in class AbstractServiceMonitor
parameters
- Not currently usedRuntimeException
- Thrown if an unrecoverable error occurs that prevents
the plug-in from functioning.public void initialize(MonitoredService svc)
Called by the poller framework when an interface is being added to the scheduler. Here we perform any necessary initialization to prepare the NetworkInterface object for polling.
initialize
in interface ServiceMonitor
initialize
in class AbstractServiceMonitor
svc
- a MonitoredService
object.RuntimeException
- Thrown if an unrecoverable error occurs that prevents
the interface from being monitored.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.
The poll() method is responsible for polling the specified address for SNMP service availability.
poll
in interface ServiceMonitor
poll
in class SnmpMonitorStrategy
svc
- TODOparameters
- The package parameters (timeout, retry, etc...) to be used for
this poll.RuntimeException
- Thrown for any uncrecoverable errors.PollStatus.SERVICE_AVAILABLE
,
PollStatus.SERVICE_UNAVAILABLE
,
PollStatus.SERVICE_AVAILABLE
,
PollStatus.SERVICE_UNAVAILABLE
Copyright © 2017. All rights reserved.