Class LocalContainerStatsImpl

All Implemented Interfaces:
JmxStatisticsExposer, ContainerStats

@MBean(objectName="LocalContainerStats", description="General statistic of local container.") public class LocalContainerStatsImpl extends Object implements ContainerStats
Provide statistics of the local JVM instance. When the statistics collection is disabled, we return -1.
José Bolina
  • Field Details


      public static final String LOCAL_CONTAINER_STATS
      See Also:

      public static final long DEFAULT_STALE_STATS_THRESHOLD
      See Also:
    • staleStatsThreshold

      protected volatile long staleStatsThreshold
    • statsUpdateTimestamp

      protected volatile long statsUpdateTimestamp
  • Constructor Details

    • LocalContainerStatsImpl

      public LocalContainerStatsImpl()
  • Method Details

    • init

      public void init(GlobalConfiguration configuration)
    • getMemoryAvailable

      @ManagedAttribute(description="The maximum amount of free memory in bytes in local JVM", displayName="Local available memory.") public long getMemoryAvailable()
      Specified by:
      getMemoryAvailable in interface ContainerStats
      the maximum amount of free memory in bytes across the cluster JVMs.
    • getMemoryMax

      @ManagedAttribute(description="The maximum amount of memory in local JVM will attempt to utilise in bytes", displayName="Local JVM max memory") public long getMemoryMax()
      Specified by:
      getMemoryMax in interface ContainerStats
      the maximum amount of memory that JVMs across the cluster will attempt to utilise in bytes.
    • getMemoryTotal

      @ManagedAttribute(description="The total amount of memory in the local JVM in bytes", displayName="Local total memory") public long getMemoryTotal()
      Specified by:
      getMemoryTotal in interface ContainerStats
      the total amount of memory in the JVMs across the cluster in bytes.
    • getMemoryUsed

      @ManagedAttribute(description="The amount of memory used by the local JVM in bytes", displayName="Local memory utilisation") public long getMemoryUsed()
      Specified by:
      getMemoryUsed in interface ContainerStats
      the amount of memory used by JVMs across the cluster in bytes.
    • getStaleStatsThreshold

      @ManagedAttribute(description="Gets the threshold for cluster wide stats refresh (milliseconds)", displayName="Stale Stats Threshold", dataType=TRAIT, writable=true) public long getStaleStatsThreshold()
    • getTimeSinceReset

      @ManagedAttribute(description="Number of seconds since the statistics were last reset", displayName="Seconds since statistics were reset", units=SECONDS) public long getTimeSinceReset()
    • isStatisticsEnabled

      @ManagedAttribute(description="Enables or disables the gathering of statistics by this component", displayName="Statistics enabled", dataType=TRAIT, writable=true) public boolean isStatisticsEnabled()
    • reset

      public void reset()
    • resetStatistics

      @ManagedOperation(description="Resets statistics gathered by this component", displayName="Reset statistics") public void resetStatistics()
      Description copied from interface: JmxStatisticsExposer
      Resets an interceptor's cache statistics
      Specified by:
      resetStatistics in interface JmxStatisticsExposer
    • setStatisticsEnabled

      public void setStatisticsEnabled(boolean enabled)
      Description copied from interface: JmxStatisticsExposer
      Enables an interceptor's cache statistics If true, the interceptor will capture statistics and make them available through the mbean.
      Specified by:
      setStatisticsEnabled in interface JmxStatisticsExposer
      enabled - true if statistics should be captured
    • getStatisticsEnabled

      public boolean getStatisticsEnabled()
      Description copied from interface: JmxStatisticsExposer
      Returns whether an interceptor's statistics are being captured.
      Specified by:
      getStatisticsEnabled in interface JmxStatisticsExposer
      true if statistics are captured
    • setStaleStatsThreshold

      public void setStaleStatsThreshold(long staleStatsThreshold)
    • getStat

      protected Number getStat(String attribute)