Interface SiteMonitorMBean

All Superinterfaces:
SelfEmailingMBean

public interface SiteMonitorMBean extends SelfEmailingMBean
Provides status and statistics for vaulting sites. Data is gathered by periodically "pinging" the sites, i.e. issuing short, simple HTTP gateway servlet requests. These requests are similar to vaulting requests (though much simpler and faster) and will not receive responses unless the given site's web server(s), servlet engine(s), and method servers are running and communicating with one another.

Supported API: true

Extendable: true
  • Field Details

    • OK_STATUS

      static final String OK_STATUS
      Value of site status string that signifies that a site is reachable (and thus "OK")

      Supported API: true
      See Also:
    • OFFLINE_STATUS

      static final String OFFLINE_STATUS
      Value of site status string that signifies that site is taken offline by user

      Supported API: true
      See Also:
    • READ_ONLY_STATUS

      static final String READ_ONLY_STATUS
      Value of site status string that signifies that site is made rea-only by user

      Supported API: true
      See Also:
    • NO_RESPONSE_FROM_SITE_NOTIF_TYPE

      static final String NO_RESPONSE_FROM_SITE_NOTIF_TYPE
      Type of notification produced when a site does not respond to a ping

      Supported API: true
    • SITE_RESPONDING_AGAIN_NOTIF_TYPE

      static final String SITE_RESPONDING_AGAIN_NOTIF_TYPE
      Type of notification produced when a site is responding again after a period of being unresponsive

      Supported API: true
  • Method Details

    • getLoggerName

      String getLoggerName()
      Name of ping result logger

      Supported API: true
    • getLoggerLevel

      String getLoggerLevel()
      Ping result logging level (not persisted with MBean); valid values are ALL, TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF (or blank/unspecified)

      Supported API: true
    • setLoggerLevel

      void setLoggerLevel(String level)
      Ping result logging level (not persisted with MBean); valid values are ALL, TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF (or blank/unspecified)

      Supported API: true
    • getConnectTimeoutSeconds

      double getConnectTimeoutSeconds()
      Ping connection timeout (in seconds)

      Supported API: true
    • setConnectTimeoutSeconds

      void setConnectTimeoutSeconds(double connectTimeoutSeconds)
      Ping connection timeout (in seconds)

      Supported API: true
    • getReadTimeoutSeconds

      double getReadTimeoutSeconds()
      Ping read timeout (in seconds)

      Supported API: true
    • setReadTimeoutSeconds

      void setReadTimeoutSeconds(double readTimeoutSeconds)
      Ping read timeout (in seconds)

      Supported API: true
    • getPingIntervalSeconds

      int getPingIntervalSeconds()
      Interval at which sites are pinged (in seconds); periodic pings are disabled if this is non-positive

      Supported API: true
    • setPingIntervalSeconds

      void setPingIntervalSeconds(int pingIntervalSeconds)
      Interval at which sites are pinged (in seconds); periodic pings are disabled if this is non-positive

      Supported API: true
    • getSiteStatusInfo

      CompositeData getSiteStatusInfo() throws Exception
      Site statuses and statistics from last periodic ping (if periodic pings are disabled, then a ping is performed)

      Supported API: true
      Throws:
      Exception
    • getLastResetTime

      Timestamp getLastResetTime()
      Time at which cumulative statistics were last reset

      Supported API: true
    • getSiteStatus

      @MBeanOperationImpact(0) String getSiteStatus(String siteURLString) throws Exception
      Get site status string for a given site URL

      Supported API: true
      Parameters:
      siteURLString - URL of site to get status for
      Throws:
      Exception
    • resetStatistics

      @MBeanOperationImpact(1) void resetStatistics()
      Reset cumulative statistics

      Supported API: true
    • getAttributesFromRemoteSite

      @MBeanOperationImpact(0) AttributeList getAttributesFromRemoteSite(String siteUrlString, boolean targetServerManager, ObjectName mbean, String[] attributeNames) throws Exception
      Get attribute values from remote site.

      Supported API: true
      Parameters:
      siteUrlString - Site to target
      targetServerManager - When true connects to a server manager, otherwise connects to a method server
      mbean - ObjectName of target MBean
      attributeNames - Names of attributes to fetch values for
      Throws:
      Exception
    • getAttributesFromRemoteSites

      @MBeanOperationImpact(0) Map<String,Object> getAttributesFromRemoteSites(boolean targetServerManager, ObjectName mbean, String[] attributeNames) throws Exception
      Get attribute values from an MBean in all remote sites. Results (which will be AttributeLists) and exceptions are both returned in a map by site URL string.

      Supported API: true
      Parameters:
      mbean - ObjectName of target MBean
      targetServerManager - When true connects to server managers, otherwise connects to method servers
      attributeNames - Names of attributes to fetch values for
      Throws:
      Exception
    • setAttributesInRemoteSite

      @MBeanOperationImpact(1) AttributeList setAttributesInRemoteSite(String siteUrlString, boolean targetServerManager, ObjectName mbean, AttributeList attributes) throws Exception
      Set attributes on an MBean in a remote site.

      Supported API: true
      Parameters:
      siteUrlString - Site to target
      targetServerManager - When true connects to server managers, otherwise connects to method servers
      mbean - ObjectName of target MBean
      attributes - Attribute settings to apply
      Throws:
      Exception
    • setAttributesInRemoteSites

      @MBeanOperationImpact(1) Map<String,Object> setAttributesInRemoteSites(boolean targetServerManager, ObjectName mbean, AttributeList attributes) throws Exception
      Set attributes on an MBean in all remote sites. Results (which will be AttributeLists) and exceptions are both returned in a map by site URL string.

      Supported API: true
      Parameters:
      targetServerManager - When true connects to server managers, otherwise connects to method servers
      mbean - ObjectName of target MBean
      attributes - Attribute settings to apply
      Throws:
      Exception
    • invokeInRemoteSite

      @MBeanOperationImpact(1) Object invokeInRemoteSite(String siteUrlString, boolean targetServerManager, ObjectName mbean, String operation, Object[] params, String[] signature) throws Exception
      Invoke an operation on an MBean in a remote site.

      Supported API: true
      Parameters:
      siteUrlString - Site to target
      targetServerManager - When true connects to server managers, otherwise connects to method servers
      mbean - ObjectName of target MBean
      operation - Name of target operation
      params - Arguments of target operation
      signature - Signature of target operation
      Throws:
      Exception
    • invokeInRemoteSites

      @MBeanOperationImpact(1) Map<String,Object> invokeInRemoteSites(boolean targetServerManager, ObjectName mbean, String operation, Object[] params, String[] signature) throws Exception
      Invoke an operation on an MBean in all remote sites. Results and exceptions are both returned in a map by site URL string.

      Supported API: true
      Parameters:
      targetServerManager - When true connects to server managers, otherwise connects to method servers
      mbean - ObjectName of target MBean
      operation - Name of target operation
      params - Arguments of target operation
      signature - Signature of target operation
      Throws:
      Exception
    • invokeInfoOpInRemoteSite

      @MBeanOperationImpact(0) Object invokeInfoOpInRemoteSite(String siteUrlString, boolean targetServerManager, ObjectName mbean, String operation, Object[] params, String[] signature) throws Exception
      Invoke an operation with an INFO (read-only) impact on an MBean in a remote site. If the target operation is found to have a non-INFO impact for the given MBean, the operation will not be invoked on that MBean and an exception will be returned.

      Supported API: true
      Parameters:
      siteUrlString - Site to target
      targetServerManager - When true connects to server managers, otherwise connects to method servers
      mbean - ObjectName of target MBean
      operation - Name of target operation
      params - Arguments of target operation
      signature - Signature of target operation
      Throws:
      Exception
    • invokeInfoOpInRemoteSites

      @MBeanOperationImpact(0) Map<String,Object> invokeInfoOpInRemoteSites(boolean targetServerManager, ObjectName mbean, String operation, Object[] params, String[] signature) throws Exception
      Invoke an operation with an INFO (read-only) impact on an MBean in all remote sites. Results and exceptions are both returned in a map by site URL string. If the target operation is found to have a non-INFO impact for a given MBean, the operation will not be invoked on that MBean and an exception will be returned in the map for this MBean.

      Supported API: true
      Parameters:
      targetServerManager - When true connects to server managers, otherwise connects to method servers
      mbean - ObjectName of target MBean
      operation - Name of target operation
      params - Arguments of target operation
      signature - Signature of target operation
      Throws:
      Exception