Class GeneralMonitorEntry

  • All Implemented Interfaces:
    java.io.Serializable

    @NotMutable
    @ThreadSafety(level=COMPLETELY_THREADSAFE)
    public final class GeneralMonitorEntry
    extends MonitorEntry
    This class defines a monitor entry that provides general information about the state of the Directory Server. The general monitor entry is the top-level monitor entry that is generated by the monitor backend and is the parent of all monitor entries generated by the registered monitor providers.
    NOTE: This class, and other classes within the com.unboundid.ldap.sdk.unboundidds package structure, are only supported for use against Ping Identity, UnboundID, and Nokia/Alcatel-Lucent 8661 server products. These classes provide support for proprietary functionality or for external specifications that are not considered stable or mature enough to be guaranteed to work in an interoperable way with other types of LDAP servers.

    Information that may be included in the general monitor entry includes:
    • The number of connections currently established to the server.
    • The maximum number of connections that have been established at any one time.
    • The total number of connections established to the server since startup.
    • The time that the directory server was started.
    • The current time on the server.
    • The length of time in milliseconds that the server has been online.
    • A user-friendly string that describes the length of time that the server has been online.
    • The name of the directory server product.
    • The name of the vendor that provides the directory server.
    • The server version string.
    • The DNs of the configuration entries for any third-party extensions loaded in the server.
    The server should present at most one general monitor entry. It can be retrieved using the MonitorManager.getGeneralMonitorEntry(com.unboundid.ldap.sdk.LDAPConnection) method. This entry provides specific methods for accessing information about the server (e.g., the getCurrentConnections() method can be used to retrieve the number of connections currently established). Alternately, this information may be accessed using the generic API. See the MonitorManager class documentation for an example that demonstrates the use of the generic API for accessing monitor data.
    See Also:
    Serialized Form
    • Constructor Detail

      • GeneralMonitorEntry

        public GeneralMonitorEntry​(@NotNull
                                   Entry entry)
        Creates a new general monitor entry from the provided entry.
        Parameters:
        entry - The entry to be parsed as a general monitor entry. It must not be null.
    • Method Detail

      • getCurrentConnections

        @Nullable
        public java.lang.Long getCurrentConnections()
        Retrieves the number of connections currently established.
        Returns:
        The number of connections currently established, or null if it was not included in the monitor entry.
      • getMaxConnections

        @Nullable
        public java.lang.Long getMaxConnections()
        Retrieves the maximum number of concurrent connections established at any time since startup.
        Returns:
        The maximum number of concurrent connections established at any time since startup, or null if it was not included in the monitor entry.
      • getTotalConnections

        @Nullable
        public java.lang.Long getTotalConnections()
        Retrieves the total number of connections established since startup.
        Returns:
        The total number of connections established since startup, or null if it was not included in the monitor entry.
      • getCurrentTime

        @Nullable
        public java.util.Date getCurrentTime()
        Retrieves the current time as reported by the Directory Server.
        Returns:
        The current time as reported by the Directory Server, or null if it was not included in the monitor entry.
      • getStartTime

        @Nullable
        public java.util.Date getStartTime()
        Retrieves the time that the Directory Server was started.
        Returns:
        The time that the Directory Server was started, or null if it was not included in the monitor entry.
      • getClusterName

        @Nullable
        public java.lang.String getClusterName()
        Retrieves the name of the cluster in which the server is a member.
        Returns:
        The name of the cluster in which the server is a member, or null if it was not included in the monitor entry.
      • getInstanceName

        @Nullable
        public java.lang.String getInstanceName()
        Retrieves the name assigned to the Directory Server instance.
        Returns:
        The name assigned to the Directory Server instance, or null if it was not included in the monitor entry.
      • getLocationName

        @Nullable
        public java.lang.String getLocationName()
        Retrieves the name of the configuration entry that defines the server's location.
        Returns:
        The name of the configuration entry that defines the server's location, or null if it was not included in the monitor entry.
      • getLocationDN

        @Nullable
        public java.lang.String getLocationDN()
        Retrieves the DN of the configuration entry that defines the server's location.
        Returns:
        The DN of the configuration entry that defines the server's location, or null if it was not included in the monitor entry.
      • getServerUUID

        @Nullable
        public java.lang.String getServerUUID()
        Retrieves the UUID value that was generated when the server instance was initially created.
        Returns:
        The UUID value that was generated when the server instance was initially created, or null if it was not included in the monitor entry.
      • getStartupID

        @Nullable
        public java.lang.String getStartupID()
        Retrieves a relatively compact identifier generated at the time the Directory Server was started.
        Returns:
        A relatively compact identifier generated at the time the Directory Server was started, or null if it was not included in the monitor entry.
      • getStartupUUID

        @Nullable
        public java.lang.String getStartupUUID()
        Retrieves the UUID that was generated when the Directory Server was started.
        Returns:
        The UUID that was generated when the Directory Server was started, or null if it was not included in the monitor entry.
      • getUptimeMillis

        @Nullable
        public java.lang.Long getUptimeMillis()
        Retrieves the Directory Server uptime in milliseconds.
        Returns:
        The Directory Server uptime in milliseconds, or null if either the current time or the start time was not available.
      • getUptimeString

        @Nullable
        public java.lang.String getUptimeString()
        Retrieves the human-readable string representation of the Directory Server uptime.
        Returns:
        The human-readable string representation of the Directory Server uptime, or null if it was not included in the monitor entry.
      • getProductName

        @Nullable
        public java.lang.String getProductName()
        Retrieves the Directory Server product name.
        Returns:
        The Directory Serve product name, or null if it was not included in the monitor entry.
      • getVendorName

        @Nullable
        public java.lang.String getVendorName()
        Retrieves the Directory Server vendor name string.
        Returns:
        The Directory Server vendor name string, or null if it was not included in the monitor entry.
      • getVersionString

        @Nullable
        public java.lang.String getVersionString()
        Retrieves the Directory Server version string.
        Returns:
        The Directory Server version string, or null if it was not included in the monitor entry.
      • getDegradedAlertTypes

        @NotNull
        public java.util.List<java.lang.String> getDegradedAlertTypes()
        Retrieves the names of any alert types which may have caused the server to be currently classified as "degraded".
        Returns:
        The names of any alert types which may have caused the server to be currently classified as "degraded", or an empty list if it was not included in the monitor entry (which likely indicates that the server is not classified as "degraded").
      • getUnavailableAlertTypes

        @NotNull
        public java.util.List<java.lang.String> getUnavailableAlertTypes()
        Retrieves the names of any alert types which may have caused the server to be currently classified as "unavailable".
        Returns:
        The names of any alert types which may have caused the server to be currently classified as "unavailable", or an empty list if it was not included in the monitor entry (which likely indicates that the server is not classified as "unavailable").
      • getThirdPartyExtensionDNs

        @NotNull
        public java.util.List<java.lang.String> getThirdPartyExtensionDNs()
        Retrieves the DNs of the configuration entries for any third-party extensions currently loaded in the server.
        Returns:
        The DNs of the configuration entries for any third-party extensions currently loaded in the server, or an empty list if it was not included in the monitor entry.
      • getMonitorAttributes

        @NotNull
        public java.util.Map<java.lang.String,​MonitorAttributegetMonitorAttributes()
        Retrieves the set of parsed monitor attributes for this monitor entry, mapped from a unique identifier (in all lowercase characters) to the corresponding monitor attribute.
        Overrides:
        getMonitorAttributes in class MonitorEntry
        Returns:
        The set of parsed monitor attributes for this monitor entry.