Class JEEnvironmentMonitorEntry

  • All Implemented Interfaces:
    java.io.Serializable

    @NotMutable
    @ThreadSafety(level=COMPLETELY_THREADSAFE)
    public final class JEEnvironmentMonitorEntry
    extends MonitorEntry
    This class defines a monitor entry that provides basic information about the Berkeley DB Java Edition environment in use for a backend.
    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.

    The information that is provided includes:
    • The backend ID for the associated backend.
    • The version string for the Berkeley DB Java Edition library.
    • The path to the directory containing the database environment files.
    • The amount of space consumed by the database files.
    • The amount of memory currently consumed by the database cache.
    • The maximum amount of memory that may be consumed by the database cache.
    • The percent of the total memory allowed for the database cache that is currently in use.
    • Whether a checkpoint is currently in progress.
    • The total number of checkpoints that have been completed.
    • The time that the last completed checkpoint began.
    • The time that the last completed checkpoint ended.
    • The total duration of all checkpoints completed.
    • The average duration of all checkpoints completed.
    • The duration of the last checkpoint completed.
    • The length of time since the last checkpoint.
    • The number of log files that the cleaner needs to examine.
    • The number of nodes evicted from the database cache.
    • The number of random-access disk reads performed.
    • The number of random-access disk writes performed.
    • The number of sequential disk reads performed.
    • The number of sequential disk writes performed.
    • The number of active transactions in the database environment.
    • The number of read locks held in the database environment.
    • The number of write locks held in the database environment.
    • The number of transactions waiting on locks.
    • A set of generic statistics about the database environment.
    • A set of generic statistics about the lock subsystem for the database environment.
    • A set of generic statistics about the transaction subsystem for the database environment.
    The JE environment monitor entries provided by the server can be retrieved using the MonitorManager.getJEEnvironmentMonitorEntries(com.unboundid.ldap.sdk.LDAPConnection) method. These entries provide specific methods for accessing information about the JE environment (e.g., the getJEVersion() method can be used to retrieve the Berkeley DB JE version). 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 Summary

      Constructors 
      Constructor Description
      JEEnvironmentMonitorEntry​(Entry entry)
      Creates a new JE environment monitor entry from the provided entry.
    • Method Summary

      All Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      java.lang.Boolean checkpointInProgress()
      Indicates whether a checkpoint is currently in progress in the associated backend.
      java.lang.Long getActiveTransactionCount()
      Retrieves the number of active transactions in the JE database environment.
      java.lang.Long getAverageCheckpointDurationMillis()
      Retrieves the average duration in milliseconds of all checkpoints completed in the associated backend.
      java.lang.String getBackendID()
      Retrieves the backend ID for the backend with which the Berkeley DB JE database is associated.
      java.lang.Long getCleanerBacklog()
      Retrieves the number of log files that the cleaner needs to examine.
      java.lang.Long getCurrentDBCacheSize()
      Retrieves the amount of memory in bytes currently consumed by the database cache.
      java.lang.Long getDBCachePercentFull()
      Retrieves the percentage of the maximum database cache size that is currently in use.
      java.lang.String getDBDirectory()
      Retrieves the path to the directory containing the database files.
      java.lang.Long getDBOnDiskSize()
      Retrieves the amount of disk space in bytes consumed by the database files.
      java.lang.String getEnvironmentStat​(java.lang.String statName)
      Retrieves the string representation of the value for a database environment statistic.
      java.util.Map<java.lang.String,​java.lang.String> getEnvironmentStats()
      Retrieves a set of general environment statistics for the database environment, mapped from the statistic name to the string representation of its value.
      java.lang.String getJEVersion()
      Retrieves the Berkeley DB JE version string for the database environment of the associated backend.
      java.lang.Long getLastCheckpointDurationMillis()
      Retrieves the duration in milliseconds of the last checkpoint completed in the associated backend.
      java.util.Date getLastCheckpointStartTime()
      Retrieves the time that the last completed checkpoint began.
      java.util.Date getLastCheckpointStopTime()
      Retrieves the time that the last completed checkpoint ended.
      java.util.Date getLastCheckpointTime()
      Deprecated.
      java.lang.String getLockStat​(java.lang.String statName)
      Retrieves the string representation of the value for a database environment lock statistic.
      java.util.Map<java.lang.String,​java.lang.String> getLockStats()
      Retrieves a set of lock statistics for the database environment, mapped from the statistic name to the string representation of its value.
      java.lang.Long getMaxDBCacheSize()
      Retrieves the maximum amount of memory in bytes that may be consumed by the database cache.
      java.lang.Long getMillisSinceLastCheckpoint()
      Retrieves the length of time in milliseconds since the last completed checkpoint.
      java.util.Map<java.lang.String,​MonitorAttribute> getMonitorAttributes()
      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.
      java.lang.String getMonitorDescription()
      Retrieves a human-readable description name for this monitor entry.
      java.lang.String getMonitorDisplayName()
      Retrieves a human-readable display name for this monitor entry.
      java.lang.Long getNodesEvicted()
      Retrieves the number of nodes that have been evicted from the database cache since the backend was started.
      java.lang.Long getNumCheckpoints()
      Retrieves the number of checkpoints completed in the associated backend.
      java.lang.Long getRandomReads()
      Retrieves the number of random-access disk reads performed since the backend was started.
      java.lang.Long getRandomWrites()
      Retrieves the number of random-access disk writes performed since the backend was started.
      java.lang.Long getReadLocksHeld()
      Retrieves the number of read locks held in the JE database environment.
      java.lang.Long getSequentialReads()
      Retrieves the number of sequential disk reads performed since the backend was started.
      java.lang.Long getSequentialWrites()
      Retrieves the number of sequential disk writes performed since the backend was started.
      java.lang.Long getTotalCheckpointDurationMillis()
      Retrieves the total duration in milliseconds of all checkpoints completed in the associated backend.
      java.lang.String getTransactionStat​(java.lang.String statName)
      Retrieves the string representation of the value for a database environment transaction statistic.
      java.util.Map<java.lang.String,​java.lang.String> getTransactionStats()
      Retrieves a set of transaction statistics for the database environment, mapped from the statistic name to the string representation of its value.
      java.lang.Long getTransactionsWaitingOnLocks()
      Retrieves the number of transactions currently waiting on a lock in the database environment.
      java.lang.Long getWriteLocksHeld()
      Retrieves the number of write locks held in the JE database environment.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • JEEnvironmentMonitorEntry

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

      • getBackendID

        public java.lang.String getBackendID()
        Retrieves the backend ID for the backend with which the Berkeley DB JE database is associated.
        Returns:
        The backend ID for the backend with which the Berkeley DB JE database is associated.
      • getJEVersion

        public java.lang.String getJEVersion()
        Retrieves the Berkeley DB JE version string for the database environment of the associated backend.
        Returns:
        The Berkeley DB JE version string for the database environment of the associated backend, or null if it was not included in the monitor entry.
      • getDBDirectory

        public java.lang.String getDBDirectory()
        Retrieves the path to the directory containing the database files.
        Returns:
        The path to the directory containing the database files, or null if it was not included in the monitor entry.
      • getDBOnDiskSize

        public java.lang.Long getDBOnDiskSize()
        Retrieves the amount of disk space in bytes consumed by the database files.
        Returns:
        The amount of disk space in bytes consumed by the database files, or null if it was not included in the monitor entry.
      • getCurrentDBCacheSize

        public java.lang.Long getCurrentDBCacheSize()
        Retrieves the amount of memory in bytes currently consumed by the database cache.
        Returns:
        The amount of memory in bytes currently consumed by the database cache, or null if it was not included in the monitor entry.
      • getMaxDBCacheSize

        public java.lang.Long getMaxDBCacheSize()
        Retrieves the maximum amount of memory in bytes that may be consumed by the database cache.
        Returns:
        The maximum of memory in bytes that may be consumed by the database cache, or null if it was not included in the monitor entry.
      • getDBCachePercentFull

        public java.lang.Long getDBCachePercentFull()
        Retrieves the percentage of the maximum database cache size that is currently in use.
        Returns:
        The percentage of the maximum database cache size that is currently in use, or null if it was not included in the monitor entry.
      • checkpointInProgress

        public java.lang.Boolean checkpointInProgress()
        Indicates whether a checkpoint is currently in progress in the associated backend.
        Returns:
        A Boolean value indicating whether a checkpoint is currently in progress in the associated backend, or null if it was not included in the monitor entry.
      • getNumCheckpoints

        public java.lang.Long getNumCheckpoints()
        Retrieves the number of checkpoints completed in the associated backend.
        Returns:
        The number of checkpoints completed in the associated backend, or null if it was not included in the monitor entry.
      • getTotalCheckpointDurationMillis

        public java.lang.Long getTotalCheckpointDurationMillis()
        Retrieves the total duration in milliseconds of all checkpoints completed in the associated backend.
        Returns:
        The total duration in milliseconds of all checkpoints completed in the associated backend, or null if it was not included in the monitor entry.
      • getAverageCheckpointDurationMillis

        public java.lang.Long getAverageCheckpointDurationMillis()
        Retrieves the average duration in milliseconds of all checkpoints completed in the associated backend.
        Returns:
        The average duration in milliseconds of all checkpoints completed in the associated backend, or null if it was not included in the monitor entry.
      • getLastCheckpointDurationMillis

        public java.lang.Long getLastCheckpointDurationMillis()
        Retrieves the duration in milliseconds of the last checkpoint completed in the associated backend.
        Returns:
        The duration in milliseconds of the last checkpoint completed in the associated backend, or null if it was not included in the monitor entry.
      • getLastCheckpointStartTime

        public java.util.Date getLastCheckpointStartTime()
        Retrieves the time that the last completed checkpoint began.
        Returns:
        The time that the last completed checkpoint began, or null if it was not included in the monitor entry.
      • getLastCheckpointStopTime

        public java.util.Date getLastCheckpointStopTime()
        Retrieves the time that the last completed checkpoint ended.
        Returns:
        The time that the last completed checkpoint ended, or null if it was not included in the monitor entry.
      • getLastCheckpointTime

        @Deprecated
        public java.util.Date getLastCheckpointTime()
        Deprecated.
        Retrieves the time that the last checkpoint occurred.
        Returns:
        The time that the last checkpoint occurred, or null if it was not included in the monitor entry.
      • getMillisSinceLastCheckpoint

        public java.lang.Long getMillisSinceLastCheckpoint()
        Retrieves the length of time in milliseconds since the last completed checkpoint.
        Returns:
        The length of time in milliseconds since the last completed checkpoint, or null if it was not included in the monitor entry.
      • getCleanerBacklog

        public java.lang.Long getCleanerBacklog()
        Retrieves the number of log files that the cleaner needs to examine.
        Returns:
        The number of log files that the cleaner needs to examine, or null if it was not included in the monitor entry.
      • getNodesEvicted

        public java.lang.Long getNodesEvicted()
        Retrieves the number of nodes that have been evicted from the database cache since the backend was started.
        Returns:
        The number of nodes that have been evicted from the database cache since the backend was started, or null if it was not included in the monitor entry.
      • getRandomReads

        public java.lang.Long getRandomReads()
        Retrieves the number of random-access disk reads performed since the backend was started.
        Returns:
        The number of random-access disk reads performed since the backend was started, or null if it was not included in the monitor entry.
      • getRandomWrites

        public java.lang.Long getRandomWrites()
        Retrieves the number of random-access disk writes performed since the backend was started.
        Returns:
        The number of random-access disk writes performed since the backend was started, or null if it was not included in the monitor entry.
      • getSequentialReads

        public java.lang.Long getSequentialReads()
        Retrieves the number of sequential disk reads performed since the backend was started.
        Returns:
        The number of sequential disk reads performed since the backend was started, or null if it was not included in the monitor entry.
      • getSequentialWrites

        public java.lang.Long getSequentialWrites()
        Retrieves the number of sequential disk writes performed since the backend was started.
        Returns:
        The number of sequential disk writes performed since the backend was started, or null if it was not included in the monitor entry.
      • getActiveTransactionCount

        public java.lang.Long getActiveTransactionCount()
        Retrieves the number of active transactions in the JE database environment.
        Returns:
        The number of active transactions in the JE database environment, or null if it was not included in the monitor entry.
      • getReadLocksHeld

        public java.lang.Long getReadLocksHeld()
        Retrieves the number of read locks held in the JE database environment.
        Returns:
        The number of read locks held in the JE database environment, or null if it was not included in the monitor entry.
      • getWriteLocksHeld

        public java.lang.Long getWriteLocksHeld()
        Retrieves the number of write locks held in the JE database environment.
        Returns:
        The number of write locks held in the JE database environment, or null if it was not included in the monitor entry.
      • getTransactionsWaitingOnLocks

        public java.lang.Long getTransactionsWaitingOnLocks()
        Retrieves the number of transactions currently waiting on a lock in the database environment.
        Returns:
        The number of transactions currently waiting on a lock in the database environment, or null if it was not included in the monitor entry.
      • getEnvironmentStats

        public java.util.Map<java.lang.String,​java.lang.String> getEnvironmentStats()
        Retrieves a set of general environment statistics for the database environment, mapped from the statistic name to the string representation of its value. The statistic names will be formatted in all lowercase characters.
        Returns:
        A set of general environment statistics for the database environment, mapped from the statistic name to the string representation of its value.
      • getEnvironmentStat

        public java.lang.String getEnvironmentStat​(java.lang.String statName)
        Retrieves the string representation of the value for a database environment statistic.
        Parameters:
        statName - The name of the statistic to retrieve. It will be treated in a case-insensitive manner.
        Returns:
        The value of the requested database environment statistic, or null if no such statistic was provided.
      • getLockStats

        public java.util.Map<java.lang.String,​java.lang.String> getLockStats()
        Retrieves a set of lock statistics for the database environment, mapped from the statistic name to the string representation of its value. The statistic names will be formatted in all lowercase characters.
        Returns:
        A set of lock statistics for the database environment, mapped from the statistic name to the string representation of its value.
      • getLockStat

        public java.lang.String getLockStat​(java.lang.String statName)
        Retrieves the string representation of the value for a database environment lock statistic.
        Parameters:
        statName - The name of the statistic to retrieve. It will be treated in a case-insensitive manner.
        Returns:
        The value of the requested database environment lock statistic, or null if no such statistic was provided.
      • getTransactionStats

        public java.util.Map<java.lang.String,​java.lang.String> getTransactionStats()
        Retrieves a set of transaction statistics for the database environment, mapped from the statistic name to the string representation of its value. The statistic names will be formatted in all lowercase characters.
        Returns:
        A set of transaction statistics for the database environment, mapped from the statistic name to the string representation of its value.
      • getTransactionStat

        public java.lang.String getTransactionStat​(java.lang.String statName)
        Retrieves the string representation of the value for a database environment transaction statistic.
        Parameters:
        statName - The name of the statistic to retrieve. It will be treated in a case-insensitive manner.
        Returns:
        The value of the requested database environment transaction statistic, or null if no such statistic was provided.
      • getMonitorAttributes

        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.