Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.management.monitor
Class GaugeMonitor

    java.lang.Object
      |
      +--javax.management.NotificationBroadcasterSupport
            |
            +--javax.management.monitor.Monitor
                  |
                  +--javax.management.monitor.GaugeMonitor

public class GaugeMonitor
extends Monitor
implements GaugeMonitorMBean

This class defines a monitor MBean designed to observe the values of a gauge attribute.

A gauge monitor observes an attribute that is continuously variable with time. A gauge monitor sends notifications as follows:

- if the attribute value is increasing and becomes equal to or greater than the high threshold value, a threshold high notification is sent. The notify high flag must be set to true.
  Subsequent crossings of the high threshold value do not cause further notifications unless the attribute value becomes equal to or less than the low threshold value.
- if the attribute value is decreasing and becomes equal to or less than the low threshold value, a threshold low notification is sent. The notify low flag must be set to true.
  Subsequent crossings of the low threshold value do not cause further notifications unless the attribute value becomes equal to or greater than the high threshold value.

This provides a hysteresis mechanism to avoid repeated triggering of notifications when the attribute value makes small oscillations around the high or low threshold value.

If the gauge difference mode is used, then the value of the derived gauge is calculated as the difference between the observed gauge values for two successive observations.
The derived gauge value (V[t]) is calculated using the following method:

- V[t] = gauge[t] - gauge[t-GP]

This implementation of the gauge monitor requires the observed attribute to be either of type integer or floating-point.

See Also:
  Serialized Form

Fields inherited from class javax.management.monitor.Monitor
`alreadyNotified, dbgTag, OBSERVED_ATTRIBUTE_ERROR_NOTIFIED, OBSERVED_ATTRIBUTE_TYPE_ERROR_NOTIFIED, OBSERVED_OBJECT_ERROR_NOTIFIED, RESET_FLAGS_ALREADY_NOTIFIED, RUNTIME_ERROR_NOTIFIED, server`

Constructor Summary
`GaugeMonitor()` Default constructor.

Method Summary
`java.lang.Number` | `getDerivedGauge()` Gets the derived gauge.
`java.util.Date` | `getDerivedGaugeTimeStamp()` Gets the derived gauge timestamp.
`boolean` | `getDifferenceMode()` Gets the difference mode flag value.
`java.lang.Number` | `getHighThreshold()` Gets the high threshold value.
`java.lang.Number` | `getLowThreshold()` Gets the low threshold value.
`MBeanNotificationInfo[]` | `getNotificationInfo()` Returns a NotificationInfo object contaning the name of the Java class of the notification and the notification types sent.
`boolean` | `getNotifyHigh()` Gets the high notifications on/off switch value.
`boolean` | `getNotifyLow()` Gets the low notifications on/off switch value.
`void` | `setDifferenceMode(boolean value)` Sets the difference mode flag value.
`void` | `setHighThreshold(java.lang.Number value)` Sets the high threshold value.
`void` | `setLowThreshold(java.lang.Number value)` Sets the low threshold value.
`void` | `setNotifyHigh(boolean value)` Sets the high notifications on/off switch value.
`void` | `setNotifyLow(boolean value)` Sets the low notifications on/off switch value.
`void` | `start()` Starts the GaugeMonitor.
`void` | `stop()` Stops the GaugeMonitor.

Methods inherited from class javax.management.monitor.Monitor
`getGranularityPeriod, getObservedAttribute, getObservedObject, isActive, postDeregister, postRegister, preDeregister, preRegister, setGranularityPeriod, setObservedAttribute, setObservedObject`

Methods inherited from class javax.management.NotificationBroadcasterSupport
`addNotificationListener, removeNotificationListener, sendNotification`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### GaugeMonitor

    public GaugeMonitor()

  Default constructor.

Method Detail

### start

    public void start()

  Starts the GaugeMonitor.
  Overrides:
    start in class Monitor

### stop

    public void stop()

  Stops the GaugeMonitor.
  Overrides:
    stop in class Monitor

### getDerivedGauge

    public java.lang.Number getDerivedGauge()

  Gets the derived gauge.
  Specified by:
    getDerivedGauge in interface GaugeMonitorMBean
  Returns:
    The derived gauge.

### getDerivedGaugeTimeStamp

    public java.util.Date getDerivedGaugeTimeStamp()

  Gets the derived gauge timestamp.
  Specified by:
    getDerivedGaugeTimeStamp in interface GaugeMonitorMBean
  Returns:
    The derived gauge timestamp.

### getHighThreshold

    public java.lang.Number getHighThreshold()

  Gets the high threshold value.
  Specified by:
    getHighThreshold in interface GaugeMonitorMBean
  Returns:
    The high threshold value.

### setHighThreshold

    public void setHighThreshold(java.lang.Number value)
                          throws java.lang.IllegalArgumentException

  Sets the high threshold value.
  Specified by:
    setHighThreshold in interface GaugeMonitorMBean
  Parameters:
    `value` - The high threshold value.
  Throws:
    java.lang.IllegalArgumentException - The specified high threshold is null.

### getLowThreshold

    public java.lang.Number getLowThreshold()

  Gets the low threshold value.
  Specified by:
    getLowThreshold in interface GaugeMonitorMBean
  Returns:
    The low threshold value.

### setLowThreshold

    public void setLowThreshold(java.lang.Number value)
                         throws java.lang.IllegalArgumentException

  Sets the low threshold value.
  Specified by:
    setLowThreshold in interface GaugeMonitorMBean
  Parameters:
    `value` - The low threshold value.
  Throws:
    java.lang.IllegalArgumentException - The specified low threshold is null.

### getNotifyHigh

    public boolean getNotifyHigh()

  Gets the high notifications on/off switch value.
  Specified by:
    getNotifyHigh in interface GaugeMonitorMBean
  Returns:
    True if the GaugeMonitor notifies when exceeding the high threshold, false otherwise.

### setNotifyHigh

    public void setNotifyHigh(boolean value)

  Sets the high notifications on/off switch value.
  Specified by:
    setNotifyHigh in interface GaugeMonitorMBean
  Parameters:
    `value` - The high notifications on/off switch value.

### getNotifyLow

    public boolean getNotifyLow()

  Gets the low notifications on/off switch value.
  Specified by:
    getNotifyLow in interface GaugeMonitorMBean
  Returns:
    True if the GaugeMonitor notifies when exceeding the low threshold, false otherwise.

### setNotifyLow

    public void setNotifyLow(boolean value)

  Sets the low notifications on/off switch value.
  Specified by:
    setNotifyLow in interface GaugeMonitorMBean
  Parameters:
    `value` - The low notifications on/off switch value.

### getDifferenceMode

    public boolean getDifferenceMode()

  Gets the difference mode flag value.
  Specified by:
    getDifferenceMode in interface GaugeMonitorMBean
  Returns:
    True if the difference mode is used, false otherwise.

### setDifferenceMode

    public void setDifferenceMode(boolean value)

  Sets the difference mode flag value.
  Specified by:
    setDifferenceMode in interface GaugeMonitorMBean
  Parameters:
    `value` - The difference mode flag value.

### getNotificationInfo

    public MBeanNotificationInfo[] getNotificationInfo()

  Returns a NotificationInfo object contaning the name of the Java class of the notification and the notification types sent.
  Overrides:
    getNotificationInfo in class NotificationBroadcasterSupport

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD