MonitorServiceMBean
Date: 2016-02-29

de.zib.scalaris.jmx

## Interface MonitorServiceMBean

- All Known Implementing Classes:
    MonitorService

      public interface MonitorServiceMBean

  Provides methods to monitor a whole Scalaris ring via JMX.
  Since:
    3.15
  Version:
    3.15
  Author:
    Nico Kruber, kruber@zib.de

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Double` | `getCurLatencyAvg()` Gets the current, i.e.
    `Double` | `getCurLatencyStddev()` Gets the current, i.e.
    `Map<Long,Double>` | `getLatencyAvg()` Gets average latency values of the whole Scalaris ring from the VM the monitor is connected to.
    `Map<Long,Double>` | `getLatencyStddev()` Gets the standard deviation of the latency values of the whole Scalaris ring from the VM the monitor is connected to.
    `Long` | `getNodes()` Gets the number of Scalaris nodes of the whole Scalaris ring from the VM the monitor is connected to.
    `Long` | `getTotalLoad()` Gets the total load of the whole Scalaris ring from the VM the monitor is connected to.

- - ### Method Detail

    - #### getTotalLoad

          Long getTotalLoad()
                            throws ConnectionException,
                                   UnknownException

      Gets the total load of the whole Scalaris ring from the VM the monitor is connected to.
      Returns:
        number of DHT nodes
      Throws:
        `ConnectionException` - if the connection is not active or a communication error occurs or an exit signal was received or the remote node sends a message containing an invalid cookie
        `UnknownException` - if any other error occurs

    - #### getNodes

          Long getNodes()
                        throws ConnectionException,
                               UnknownException

      Gets the number of Scalaris nodes of the whole Scalaris ring from the VM the monitor is connected to.
      Returns:
        number of DHT nodes
      Throws:
        `ConnectionException` - if the connection is not active or a communication error occurs or an exit signal was received or the remote node sends a message containing an invalid cookie
        `UnknownException` - if any other error occurs

    - #### getLatencyAvg

          Map<Long,Double> getLatencyAvg()
                                         throws ConnectionException,
                                                UnknownException

      Gets average latency values of the whole Scalaris ring from the VM the monitor is connected to.
      Returns:
        map of timestamps to average latencies
      Throws:
        `ConnectionException` - if the connection is not active or a communication error occurs or an exit signal was received or the remote node sends a message containing an invalid cookie
        `UnknownException` - if any other error occurs

    - #### getLatencyStddev

          Map<Long,Double> getLatencyStddev()
                                            throws ConnectionException,
                                                   UnknownException

      Gets the standard deviation of the latency values of the whole Scalaris ring from the VM the monitor is connected to.
      Returns:
        map of timestamps to latency (standard) deviation
      Throws:
        `ConnectionException` - if the connection is not active or a communication error occurs or an exit signal was received or the remote node sends a message containing an invalid cookie
        `UnknownException` - if any other error occurs

    - #### getCurLatencyAvg

          Double getCurLatencyAvg()
                                  throws ConnectionException,
                                         UnknownException

      Gets the current, i.e. latest, average latency of the whole Scalaris ring from the VM the monitor is connected to.
      Returns:
        latest average latency (or `null` if there is none)
      Throws:
        `ConnectionException` - if the connection is not active or a communication error occurs or an exit signal was received or the remote node sends a message containing an invalid cookie
        `UnknownException` - if any other error occurs

    - #### getCurLatencyStddev

          Double getCurLatencyStddev()
                                     throws ConnectionException,
                                            UnknownException

      Gets the current, i.e. latest, standard deviation of the latency of the whole Scalaris ring from the VM the monitor is connected to.
      Returns:
        latest latency (standard) deviation (or `null` if there is none)
      Throws:
        `ConnectionException` - if the connection is not active or a communication error occurs or an exit signal was received or the remote node sends a message containing an invalid cookie
        `UnknownException` - if any other error occurs