org.apache.ignite.internal.managers.discovery

## Interface GridLocalMetrics

All Superinterfaces:
  Serializable

    public interface GridLocalMetrics
    extends Serializable

This class represents runtime information available for current VM.

### Method Summary

Methods
`int` `getAvailableProcessors()` Returns the number of processors available to the Java virtual machine.
`double` `getCurrentCpuLoad()` Returns the system load average for the last minute.
`double` `getCurrentGcCpuLoad()` Returns amount of time spent in GC since the last update.
`int` `getDaemonThreadCount()` Returns the current number of live daemon threads.
`long` `getHeapMemoryCommitted()` Returns the amount of heap memory in bytes that is committed for the Java virtual machine to use.
`long` `getHeapMemoryInitialized()` Returns the amount of heap memory in bytes that the Java virtual machine initially requests from the operating system for memory management.
`long` `getHeapMemoryMaximum()` Returns the maximum amount of heap memory in bytes that can be used for memory management.
`long` `getHeapMemoryUsed()` Returns the current heap size that is used for object allocation.
`long` `getNonHeapMemoryCommitted()` Returns the amount of non-heap memory in bytes that is committed for the Java virtual machine to use.
`long` `getNonHeapMemoryInitialized()` Returns the amount of non-heap memory in bytes that the Java virtual machine initially requests from the operating system for memory management.
`long` `getNonHeapMemoryMaximum()` Returns the maximum amount of non-heap memory in bytes that can be used for memory management.
`long` `getNonHeapMemoryUsed()` Returns the current non-heap memory size that is used by Java VM.
`int` `getPeakThreadCount()` Returns the peak live thread count since the Java virtual machine started or peak was reset.
`long` `getStartTime()` Returns the start time of the Java virtual machine in milliseconds.
`int` `getThreadCount()` Returns the current number of live threads including both daemon and non-daemon threads.
`long` `getTotalStartedThreadCount()` Returns the total number of threads created and also started since the Java virtual machine started.
`long` `getUptime()` Returns the uptime of the Java virtual machine in milliseconds.

### Method Detail

#### getAvailableProcessors

    int getAvailableProcessors()

Returns the number of processors available to the Java virtual machine. This method is equivalent to the `Runtime.availableProcessors()` method.

This value may change during a particular invocation of the virtual machine.

Returns:
  The number of processors available to the virtual machine; never smaller than one.

#### getCurrentCpuLoad

    double getCurrentCpuLoad()

Returns the system load average for the last minute. The system load average is the sum of the number of runnable entities queued to the available processors and the number of runnable entities running on the available processors averaged over a period of time. The way in which the load average is calculated is operating system specific but is typically a damped time-dependent average.

If the load average is not available, a negative value is returned.

This method is designed to provide a hint about the system load and may be queried frequently. The load average may be unavailable on some platform where it is expensive to implement this method.

Returns:
  The system load average; or a negative value if not available.

#### getCurrentGcCpuLoad

    double getCurrentGcCpuLoad()

Returns amount of time spent in GC since the last update.

The return value is a percentage of time.

Returns:
  Amount of time, spent in GC since the last update.

#### getHeapMemoryInitialized

    long getHeapMemoryInitialized()

Returns the amount of heap memory in bytes that the Java virtual machine initially requests from the operating system for memory management. This method returns `-1` if the initial memory size is undefined.

This value represents a setting of the heap memory for Java VM and is not a sum of all initial heap values for all memory pools.

Returns:
  The initial size of memory in bytes; `-1` if undefined.

#### getHeapMemoryUsed

    long getHeapMemoryUsed()

Returns the current heap size that is used for object allocation. The heap consists of one or more memory pools. This value is the sum of `used` heap memory values of all heap memory pools.

The amount of used memory in the returned is the amount of memory occupied by both live objects and garbage objects that have not been collected, if any.

Returns:
  Amount of heap memory used.

#### getHeapMemoryCommitted

    long getHeapMemoryCommitted()

Returns the amount of heap memory in bytes that is committed for the Java virtual machine to use. This amount of memory is guaranteed for the Java virtual machine to use. The heap consists of one or more memory pools. This value is the sum of `committed` heap memory values of all heap memory pools.

Returns:
  The amount of committed memory in bytes.

#### getHeapMemoryMaximum

    long getHeapMemoryMaximum()

Returns the maximum amount of heap memory in bytes that can be used for memory management. This method returns `-1` if the maximum memory size is undefined.

This amount of memory is not guaranteed to be available for memory management if it is greater than the amount of committed memory. The Java virtual machine may fail to allocate memory even if the amount of used memory does not exceed this maximum size.

This value represents a setting of the heap memory for Java VM and is not a sum of all initial heap values for all memory pools.

Returns:
  The maximum amount of memory in bytes; `-1` if undefined.

#### getNonHeapMemoryInitialized

    long getNonHeapMemoryInitialized()

Returns the amount of non-heap memory in bytes that the Java virtual machine initially requests from the operating system for memory management. This method returns `-1` if the initial memory size is undefined.

This value represents a setting of non-heap memory for Java VM and is not a sum of all initial heap values for all memory pools.

Returns:
  The initial size of memory in bytes; `-1` if undefined.

#### getNonHeapMemoryUsed

    long getNonHeapMemoryUsed()

Returns the current non-heap memory size that is used by Java VM. The non-heap memory consists of one or more memory pools. This value is the sum of `used` non-heap memory values of all non-heap memory pools.

Returns:
  Amount of none-heap memory used.

#### getNonHeapMemoryCommitted

    long getNonHeapMemoryCommitted()

Returns the amount of non-heap memory in bytes that is committed for the Java virtual machine to use. This amount of memory is guaranteed for the Java virtual machine to use. The non-heap memory consists of one or more memory pools. This value is the sum of `committed` non-heap memory values of all non-heap memory pools.

Returns:
  The amount of committed memory in bytes.

#### getNonHeapMemoryMaximum

    long getNonHeapMemoryMaximum()

Returns the maximum amount of non-heap memory in bytes that can be used for memory management. This method returns `-1` if the maximum memory size is undefined.

This amount of memory is not guaranteed to be available for memory management if it is greater than the amount of committed memory. The Java virtual machine may fail to allocate memory even if the amount of used memory does not exceed this maximum size.

This value represents a setting of the non-heap memory for Java VM and is not a sum of all initial non-heap values for all memory pools.

Returns:
  The maximum amount of memory in bytes; `-1` if undefined.

#### getUptime

    long getUptime()

Returns the uptime of the Java virtual machine in milliseconds.

Returns:
  Uptime of the Java virtual machine in milliseconds.

#### getStartTime

    long getStartTime()

Returns the start time of the Java virtual machine in milliseconds. This method returns the approximate time when the Java virtual machine started.

Returns:
  Start time of the Java virtual machine in milliseconds.

#### getThreadCount

    int getThreadCount()

Returns the current number of live threads including both daemon and non-daemon threads.

Returns:
  the current number of live threads.

#### getPeakThreadCount

    int getPeakThreadCount()

Returns the peak live thread count since the Java virtual machine started or peak was reset.

Returns:
  The peak live thread count.

#### getTotalStartedThreadCount

    long getTotalStartedThreadCount()

Returns the total number of threads created and also started since the Java virtual machine started.

Returns:
  The total number of threads started.

#### getDaemonThreadCount

    int getDaemonThreadCount()

Returns the current number of live daemon threads.

Returns:
  The current number of live daemon threads.

2015 Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Fabric | : ver. 1.5.0-b1
Release Date | : December 1 2015