<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<link rel="canonical" href="https://ignite.apache.org/releases/2.3.0/javadoc/org/apache/ignite/cluster/ClusterMetrics.html" />
<META NAME="ROBOTS" CONTENT="NOINDEX">

<!-- Generated by javadoc (version 1.7.0_80) on Sat Oct 28 06:25:51 UTC 2017 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ClusterMetrics (Ignite 2.3.0)</title>
<meta name="date" content="2017-10-28">
<link rel="stylesheet" type="text/css" href="../../../../javadoc.css" title="Style">

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-61232409-1', 'auto');
  ga('send', 'pageview');

</script></head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="ClusterMetrics (Ignite 2.3.0)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ClusterMetrics.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em>Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/ignite/cluster/ClusterGroupEmptyException.html" title="class in org.apache.ignite.cluster"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/ignite/cluster/ClusterMetrics.html" target="_top">Frames</a></li>
<li><a href="ClusterMetrics.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.ignite.cluster</div>
<h2 title="Interface ClusterMetrics" class="title">Interface ClusterMetrics</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Known Subinterfaces:</dt>
<dd><a href="../../../../org/apache/ignite/mxbean/ClusterLocalNodeMetricsMXBean.html" title="interface in org.apache.ignite.mxbean">ClusterLocalNodeMetricsMXBean</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="strong">ClusterMetrics</span></pre>
<div class="block">This class represents runtime information on a cluster. Apart from obvious
 statistical value, this information is used for implementation of
 load balancing, failover, and collision SPIs. For example, collision SPI
 in combination with fail-over SPI could check if other nodes don't have
 any active or waiting jobs and fail-over some jobs to those nodes.
 <p>
 Node metrics for any node can be accessed via <a href="../../../../org/apache/ignite/cluster/ClusterNode.html#metrics()"><code>ClusterNode.metrics()</code></a>
 method. Keep in mind that there will be a certain network delay (usually
 equal to metrics update delay) for the accuracy of node metrics. However, when accessing
 metrics on local node <a href="../../../../org/apache/ignite/IgniteCluster.html#localNode()"><code>IgniteCluster.localNode().getMetrics()</code></a>
 the metrics are always accurate and up to date.
 <p>
 Local node metrics are registered as <code>MBean</code> and can be accessed from
 any JMX management console. The simplest way is to use standard <code>jconsole</code>
 that comes with JDK as it also provides ability to view any node parameter
 as a graph.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>float</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getAverageActiveJobs()">getAverageActiveJobs</a></strong>()</code>
<div class="block">Gets average number of active jobs concurrently executing on the node.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>float</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getAverageCancelledJobs()">getAverageCancelledJobs</a></strong>()</code>
<div class="block">Gets average number of cancelled jobs this node ever had running
 concurrently.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getAverageCpuLoad()">getAverageCpuLoad</a></strong>()</code>
<div class="block">Gets average of CPU load values over all metrics kept in the history.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getAverageJobExecuteTime()">getAverageJobExecuteTime</a></strong>()</code>
<div class="block">Gets average time a job takes to execute on the node.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getAverageJobWaitTime()">getAverageJobWaitTime</a></strong>()</code>
<div class="block">Gets average time jobs spend waiting in the queue to be executed.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>float</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getAverageRejectedJobs()">getAverageRejectedJobs</a></strong>()</code>
<div class="block">Gets average number of jobs this node rejects during collision resolution operations.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>float</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getAverageWaitingJobs()">getAverageWaitingJobs</a></strong>()</code>
<div class="block">Gets average number of waiting jobs this node had queued.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>float</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getBusyTimePercentage()">getBusyTimePercentage</a></strong>()</code>
<div class="block">Gets percentage of time this node is busy executing jobs vs. idling.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getCurrentActiveJobs()">getCurrentActiveJobs</a></strong>()</code>
<div class="block">Gets number of currently active jobs concurrently executing on the node.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getCurrentCancelledJobs()">getCurrentCancelledJobs</a></strong>()</code>
<div class="block">Gets number of cancelled jobs that are still running.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getCurrentCpuLoad()">getCurrentCpuLoad</a></strong>()</code>
<div class="block">Returns the CPU usage usage in <code>[0, 1]</code> range.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getCurrentDaemonThreadCount()">getCurrentDaemonThreadCount</a></strong>()</code>
<div class="block">Returns the current number of live daemon threads.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getCurrentGcCpuLoad()">getCurrentGcCpuLoad</a></strong>()</code>
<div class="block">Returns average time spent in CG since the last update.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getCurrentIdleTime()">getCurrentIdleTime</a></strong>()</code>
<div class="block">Gets time this node spend idling since executing last job.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getCurrentJobExecuteTime()">getCurrentJobExecuteTime</a></strong>()</code>
<div class="block">Gets longest time a current job has been executing for.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getCurrentJobWaitTime()">getCurrentJobWaitTime</a></strong>()</code>
<div class="block">Gets current time an oldest jobs has spent waiting to be executed.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getCurrentRejectedJobs()">getCurrentRejectedJobs</a></strong>()</code>
<div class="block">Gets number of jobs rejected after more recent collision resolution operation.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getCurrentThreadCount()">getCurrentThreadCount</a></strong>()</code>
<div class="block">Returns the current number of live threads including both
 daemon and non-daemon threads.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getCurrentWaitingJobs()">getCurrentWaitingJobs</a></strong>()</code>
<div class="block">Gets number of queued jobs currently waiting to be executed.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getHeapMemoryCommitted()">getHeapMemoryCommitted</a></strong>()</code>
<div class="block">Returns the amount of heap memory in bytes that is committed for
 the JVM to use.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getHeapMemoryInitialized()">getHeapMemoryInitialized</a></strong>()</code>
<div class="block">Returns the amount of heap memory in bytes that the JVM
 initially requests from the operating system for memory management.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getHeapMemoryMaximum()">getHeapMemoryMaximum</a></strong>()</code>
<div class="block">Returns the maximum amount of heap memory in bytes that can be
 used for memory management.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getHeapMemoryTotal()">getHeapMemoryTotal</a></strong>()</code>
<div class="block">Returns the total amount of heap memory in bytes.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getHeapMemoryUsed()">getHeapMemoryUsed</a></strong>()</code>
<div class="block">Returns the current heap size that is used for object allocation.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>float</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getIdleTimePercentage()">getIdleTimePercentage</a></strong>()</code>
<div class="block">Gets percentage of time this node is idling vs. executing jobs.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getLastDataVersion()">getLastDataVersion</a></strong>()</code>
<div class="block">In-Memory Data Grid assigns incremental versions to all cache operations.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getLastUpdateTime()">getLastUpdateTime</a></strong>()</code>
<div class="block">Gets last update time of this node metrics.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getMaximumActiveJobs()">getMaximumActiveJobs</a></strong>()</code>
<div class="block">Gets maximum number of jobs that ever ran concurrently on this node.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getMaximumCancelledJobs()">getMaximumCancelledJobs</a></strong>()</code>
<div class="block">Gets maximum number of cancelled jobs this node ever had running
 concurrently.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getMaximumJobExecuteTime()">getMaximumJobExecuteTime</a></strong>()</code>
<div class="block">Gets time it took to execute the longest job on the node.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getMaximumJobWaitTime()">getMaximumJobWaitTime</a></strong>()</code>
<div class="block">Gets maximum time a job ever spent waiting in a queue to be executed.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getMaximumRejectedJobs()">getMaximumRejectedJobs</a></strong>()</code>
<div class="block">Gets maximum number of jobs rejected at once during a single collision resolution
 operation.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getMaximumThreadCount()">getMaximumThreadCount</a></strong>()</code>
<div class="block">Returns the maximum live thread count since the JVM
 started or peak was reset.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getMaximumWaitingJobs()">getMaximumWaitingJobs</a></strong>()</code>
<div class="block">Gets maximum number of waiting jobs this node had.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getNodeStartTime()">getNodeStartTime</a></strong>()</code>
<div class="block">Returns the start time of grid node in milliseconds.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getNonHeapMemoryCommitted()">getNonHeapMemoryCommitted</a></strong>()</code>
<div class="block">Returns the amount of non-heap memory in bytes that is committed for
 the JVM to use.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getNonHeapMemoryInitialized()">getNonHeapMemoryInitialized</a></strong>()</code>
<div class="block">Returns the amount of non-heap memory in bytes that the JVM
 initially requests from the operating system for memory management.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getNonHeapMemoryMaximum()">getNonHeapMemoryMaximum</a></strong>()</code>
<div class="block">Returns the maximum amount of non-heap memory in bytes that can be
 used for memory management.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getNonHeapMemoryTotal()">getNonHeapMemoryTotal</a></strong>()</code>
<div class="block">Returns the total amount of non-heap memory in bytes that can be
 used for memory management.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getNonHeapMemoryUsed()">getNonHeapMemoryUsed</a></strong>()</code>
<div class="block">Returns the current non-heap memory size that is used by Java VM.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getOutboundMessagesQueueSize()">getOutboundMessagesQueueSize</a></strong>()</code>
<div class="block">Gets outbound messages queue size.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getReceivedBytesCount()">getReceivedBytesCount</a></strong>()</code>
<div class="block">Gets received bytes count.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getReceivedMessagesCount()">getReceivedMessagesCount</a></strong>()</code>
<div class="block">Gets received messages count.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getSentBytesCount()">getSentBytesCount</a></strong>()</code>
<div class="block">Gets sent bytes count.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getSentMessagesCount()">getSentMessagesCount</a></strong>()</code>
<div class="block">Gets sent messages count.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getStartTime()">getStartTime</a></strong>()</code>
<div class="block">Returns the start time of the JVM in milliseconds.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getTotalBusyTime()">getTotalBusyTime</a></strong>()</code>
<div class="block">Gets total time this node spent executing jobs.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getTotalCancelledJobs()">getTotalCancelledJobs</a></strong>()</code>
<div class="block">Gets number of cancelled jobs since node startup.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getTotalCpus()">getTotalCpus</a></strong>()</code>
<div class="block">Returns the number of CPUs available to the Java Virtual Machine.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getTotalExecutedJobs()">getTotalExecutedJobs</a></strong>()</code>
<div class="block">Gets total number of jobs handled by the node since node startup.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getTotalExecutedTasks()">getTotalExecutedTasks</a></strong>()</code>
<div class="block">Gets total number of tasks handled by the node.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getTotalIdleTime()">getTotalIdleTime</a></strong>()</code>
<div class="block">Gets total time this node spent idling (not executing any jobs).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getTotalNodes()">getTotalNodes</a></strong>()</code>
<div class="block">Gets total number of nodes.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getTotalRejectedJobs()">getTotalRejectedJobs</a></strong>()</code>
<div class="block">Gets total number of jobs this node rejects during collision resolution operations since node startup.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getTotalStartedThreadCount()">getTotalStartedThreadCount</a></strong>()</code>
<div class="block">Returns the total number of threads created and also started
 since the JVM started.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getUpTime()">getUpTime</a></strong>()</code>
<div class="block">Returns the uptime of the JVM in milliseconds.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="getLastUpdateTime()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLastUpdateTime</h4>
<pre>long&nbsp;getLastUpdateTime()</pre>
<div class="block">Gets last update time of this node metrics.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Last update time.</dd></dl>
</li>
</ul>
<a name="getMaximumActiveJobs()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaximumActiveJobs</h4>
<pre>int&nbsp;getMaximumActiveJobs()</pre>
<div class="block">Gets maximum number of jobs that ever ran concurrently on this node.
 Note that this different from <a href="../../../../org/apache/ignite/cluster/ClusterMetrics.html#getTotalExecutedJobs()"><code>getTotalExecutedJobs()</code></a>
 metric and only reflects maximum number of jobs that ran at the same time.
 <p>
 <b>Note:</b> all aggregated metrics like average, minimum, maximum, total, count are
 calculated over all the metrics kept in history. The
 history size is set via either one or both of configuration settings:
 <ul>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsExpireTime()"><code>IgniteConfiguration.getMetricsExpireTime()</code></a></li>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsHistorySize()"><code>IgniteConfiguration.getMetricsHistorySize()</code></a></li>
 </ul></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Maximum number of jobs that ever ran concurrently on this node.</dd></dl>
</li>
</ul>
<a name="getCurrentActiveJobs()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentActiveJobs</h4>
<pre>int&nbsp;getCurrentActiveJobs()</pre>
<div class="block">Gets number of currently active jobs concurrently executing on the node.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Number of currently active jobs concurrently executing on the node.</dd></dl>
</li>
</ul>
<a name="getAverageActiveJobs()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAverageActiveJobs</h4>
<pre>float&nbsp;getAverageActiveJobs()</pre>
<div class="block">Gets average number of active jobs concurrently executing on the node.
 <p>
 <b>Note:</b> all aggregated metrics like average, minimum, maximum, total, count are
 calculated over all the metrics kept in history. The
 history size is set via either one or both of configuration settings:
 <ul>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsExpireTime()"><code>IgniteConfiguration.getMetricsExpireTime()</code></a></li>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsHistorySize()"><code>IgniteConfiguration.getMetricsHistorySize()</code></a></li>
 </ul></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Average number of active jobs.</dd></dl>
</li>
</ul>
<a name="getMaximumWaitingJobs()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaximumWaitingJobs</h4>
<pre>int&nbsp;getMaximumWaitingJobs()</pre>
<div class="block">Gets maximum number of waiting jobs this node had.
 <p>
 <b>Note:</b> all aggregated metrics like average, minimum, maximum, total, count are
 calculated over all the metrics kept in history. The
 history size is set via either one or both of configuration settings:
 <ul>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsExpireTime()"><code>IgniteConfiguration.getMetricsExpireTime()</code></a></li>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsHistorySize()"><code>IgniteConfiguration.getMetricsHistorySize()</code></a></li>
 </ul></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Maximum number of waiting jobs.</dd></dl>
</li>
</ul>
<a name="getCurrentWaitingJobs()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentWaitingJobs</h4>
<pre>int&nbsp;getCurrentWaitingJobs()</pre>
<div class="block">Gets number of queued jobs currently waiting to be executed.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Number of queued jobs currently waiting to be executed.</dd></dl>
</li>
</ul>
<a name="getAverageWaitingJobs()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAverageWaitingJobs</h4>
<pre>float&nbsp;getAverageWaitingJobs()</pre>
<div class="block">Gets average number of waiting jobs this node had queued.
 <p>
 <b>Note:</b> all aggregated metrics like average, minimum, maximum, total, count are
 calculated over all the metrics kept in history. The
 history size is set via either one or both of configuration settings:
 <ul>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsExpireTime()"><code>IgniteConfiguration.getMetricsExpireTime()</code></a></li>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsHistorySize()"><code>IgniteConfiguration.getMetricsHistorySize()</code></a></li>
 </ul></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Average number of waiting jobs.</dd></dl>
</li>
</ul>
<a name="getMaximumRejectedJobs()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaximumRejectedJobs</h4>
<pre>int&nbsp;getMaximumRejectedJobs()</pre>
<div class="block">Gets maximum number of jobs rejected at once during a single collision resolution
 operation.
 <p>
 <b>Note:</b> all aggregated metrics like average, minimum, maximum, total, count are
 calculated over all the metrics kept in history. The
 history size is set via either one or both of configuration settings:
 <ul>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsExpireTime()"><code>IgniteConfiguration.getMetricsExpireTime()</code></a></li>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsHistorySize()"><code>IgniteConfiguration.getMetricsHistorySize()</code></a></li>
 </ul></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Maximum number of jobs rejected at once.</dd></dl>
</li>
</ul>
<a name="getCurrentRejectedJobs()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentRejectedJobs</h4>
<pre>int&nbsp;getCurrentRejectedJobs()</pre>
<div class="block">Gets number of jobs rejected after more recent collision resolution operation.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Number of jobs rejected after more recent collision resolution operation.</dd></dl>
</li>
</ul>
<a name="getAverageRejectedJobs()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAverageRejectedJobs</h4>
<pre>float&nbsp;getAverageRejectedJobs()</pre>
<div class="block">Gets average number of jobs this node rejects during collision resolution operations.
 <p>
 <b>Note:</b> all aggregated metrics like average, minimum, maximum, total, count are
 calculated over all the metrics kept in history. The
 history size is set via either one or both of grid configuration settings:
 <ul>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsExpireTime()"><code>IgniteConfiguration.getMetricsExpireTime()</code></a></li>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsHistorySize()"><code>IgniteConfiguration.getMetricsHistorySize()</code></a></li>
 </ul></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Average number of jobs this node rejects during collision resolution operations.</dd></dl>
</li>
</ul>
<a name="getTotalRejectedJobs()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTotalRejectedJobs</h4>
<pre>int&nbsp;getTotalRejectedJobs()</pre>
<div class="block">Gets total number of jobs this node rejects during collision resolution operations since node startup.
 <p>
 <b>Note:</b> Unlike most of other aggregation metrics this metric is not calculated over history
 but over the entire node life.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Total number of jobs this node rejects during collision resolution
      operations since node startup.</dd></dl>
</li>
</ul>
<a name="getMaximumCancelledJobs()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaximumCancelledJobs</h4>
<pre>int&nbsp;getMaximumCancelledJobs()</pre>
<div class="block">Gets maximum number of cancelled jobs this node ever had running
 concurrently.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Maximum number of cancelled jobs.</dd></dl>
</li>
</ul>
<a name="getCurrentCancelledJobs()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentCancelledJobs</h4>
<pre>int&nbsp;getCurrentCancelledJobs()</pre>
<div class="block">Gets number of cancelled jobs that are still running. Just like
 regular java threads, jobs will receive cancel notification, but
 it's ultimately up to the job itself to gracefully exit.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Number of cancelled jobs that are still running.</dd></dl>
</li>
</ul>
<a name="getAverageCancelledJobs()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAverageCancelledJobs</h4>
<pre>float&nbsp;getAverageCancelledJobs()</pre>
<div class="block">Gets average number of cancelled jobs this node ever had running
 concurrently.
 <p>
 <b>Note:</b> all aggregated metrics like average, minimum, maximum, total, count are
 calculated over all the metrics kept in history. The
 history size is set via either one or both of configuration settings:
 <ul>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsExpireTime()"><code>IgniteConfiguration.getMetricsExpireTime()</code></a></li>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsHistorySize()"><code>IgniteConfiguration.getMetricsHistorySize()</code></a></li>
 </ul></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Average number of cancelled jobs.</dd></dl>
</li>
</ul>
<a name="getTotalCancelledJobs()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTotalCancelledJobs</h4>
<pre>int&nbsp;getTotalCancelledJobs()</pre>
<div class="block">Gets number of cancelled jobs since node startup.
 <p>
 <b>Note:</b> Unlike most of other aggregation metrics this metric is not calculated over history
 but over the entire node life.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Total number of cancelled jobs since node startup.</dd></dl>
</li>
</ul>
<a name="getTotalExecutedJobs()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTotalExecutedJobs</h4>
<pre>int&nbsp;getTotalExecutedJobs()</pre>
<div class="block">Gets total number of jobs handled by the node since node startup.
 <p>
 <b>Note:</b> Unlike most of other aggregation metrics this metric is not calculated over history
 but over the entire node life.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Total number of jobs handled by the node since node startup.</dd></dl>
</li>
</ul>
<a name="getMaximumJobWaitTime()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaximumJobWaitTime</h4>
<pre>long&nbsp;getMaximumJobWaitTime()</pre>
<div class="block">Gets maximum time a job ever spent waiting in a queue to be executed.
 <p>
 <b>Note:</b> all aggregated metrics like average, minimum, maximum, total, count are
 calculated over all the metrics kept in history. The
 history size is set via either one or both of configuration settings:
 <ul>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsExpireTime()"><code>IgniteConfiguration.getMetricsExpireTime()</code></a></li>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsHistorySize()"><code>IgniteConfiguration.getMetricsHistorySize()</code></a></li>
 </ul></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Maximum waiting time.</dd></dl>
</li>
</ul>
<a name="getCurrentJobWaitTime()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentJobWaitTime</h4>
<pre>long&nbsp;getCurrentJobWaitTime()</pre>
<div class="block">Gets current time an oldest jobs has spent waiting to be executed.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Current wait time of oldest job.</dd></dl>
</li>
</ul>
<a name="getAverageJobWaitTime()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAverageJobWaitTime</h4>
<pre>double&nbsp;getAverageJobWaitTime()</pre>
<div class="block">Gets average time jobs spend waiting in the queue to be executed.
 <p>
 <b>Note:</b> all aggregated metrics like average, minimum, maximum, total, count are
 calculated over all the metrics kept in history. The
 history size is set via either one or both of configuration settings:
 <ul>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsExpireTime()"><code>IgniteConfiguration.getMetricsExpireTime()</code></a></li>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsHistorySize()"><code>IgniteConfiguration.getMetricsHistorySize()</code></a></li>
 </ul></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Average job wait time.</dd></dl>
</li>
</ul>
<a name="getMaximumJobExecuteTime()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaximumJobExecuteTime</h4>
<pre>long&nbsp;getMaximumJobExecuteTime()</pre>
<div class="block">Gets time it took to execute the longest job on the node.
 <p>
 <b>Note:</b> all aggregated metrics like average, minimum, maximum, total, count are
 calculated over all the metrics kept in history. The
 history size is set via either one or both of configuration settings:
 <ul>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsExpireTime()"><code>IgniteConfiguration.getMetricsExpireTime()</code></a></li>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsHistorySize()"><code>IgniteConfiguration.getMetricsHistorySize()</code></a></li>
 </ul></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Time it took to execute the longest job on the node.</dd></dl>
</li>
</ul>
<a name="getCurrentJobExecuteTime()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentJobExecuteTime</h4>
<pre>long&nbsp;getCurrentJobExecuteTime()</pre>
<div class="block">Gets longest time a current job has been executing for.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Longest time a current job has been executing for.</dd></dl>
</li>
</ul>
<a name="getAverageJobExecuteTime()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAverageJobExecuteTime</h4>
<pre>double&nbsp;getAverageJobExecuteTime()</pre>
<div class="block">Gets average time a job takes to execute on the node.
 <p>
 <b>Note:</b> all aggregated metrics like average, minimum, maximum, total, count are
 calculated over all the metrics kept in history. The
 history size is set via either one or both of configuration settings:
 <ul>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsExpireTime()"><code>IgniteConfiguration.getMetricsExpireTime()</code></a></li>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsHistorySize()"><code>IgniteConfiguration.getMetricsHistorySize()</code></a></li>
 </ul></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Average job execution time.</dd></dl>
</li>
</ul>
<a name="getTotalExecutedTasks()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTotalExecutedTasks</h4>
<pre>int&nbsp;getTotalExecutedTasks()</pre>
<div class="block">Gets total number of tasks handled by the node.
 <p>
 <b>Note:</b> all aggregated metrics like average, minimum, maximum, total, count are
 calculated over all the metrics kept in history. The
 history size is set via either one or both of configuration settings:
 <ul>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsExpireTime()"><code>IgniteConfiguration.getMetricsExpireTime()</code></a></li>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsHistorySize()"><code>IgniteConfiguration.getMetricsHistorySize()</code></a></li>
 </ul></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Total number of jobs handled by the node.</dd></dl>
</li>
</ul>
<a name="getTotalBusyTime()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTotalBusyTime</h4>
<pre>long&nbsp;getTotalBusyTime()</pre>
<div class="block">Gets total time this node spent executing jobs.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Total time this node spent executing jobs.</dd></dl>
</li>
</ul>
<a name="getTotalIdleTime()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTotalIdleTime</h4>
<pre>long&nbsp;getTotalIdleTime()</pre>
<div class="block">Gets total time this node spent idling (not executing any jobs).</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Gets total time this node spent idling.</dd></dl>
</li>
</ul>
<a name="getCurrentIdleTime()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentIdleTime</h4>
<pre>long&nbsp;getCurrentIdleTime()</pre>
<div class="block">Gets time this node spend idling since executing last job.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Time this node spend idling since executing last job.</dd></dl>
</li>
</ul>
<a name="getBusyTimePercentage()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBusyTimePercentage</h4>
<pre>float&nbsp;getBusyTimePercentage()</pre>
<div class="block">Gets percentage of time this node is busy executing jobs vs. idling.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Percentage of time this node is busy (value is less than
      or equal to <code>1</code> and greater than or equal to <code>0</code>)</dd></dl>
</li>
</ul>
<a name="getIdleTimePercentage()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getIdleTimePercentage</h4>
<pre>float&nbsp;getIdleTimePercentage()</pre>
<div class="block">Gets percentage of time this node is idling vs. executing jobs.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Percentage of time this node is idle (value is less than
      or equal to <code>1</code> and greater than or equal to <code>0</code>)</dd></dl>
</li>
</ul>
<a name="getTotalCpus()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTotalCpus</h4>
<pre>int&nbsp;getTotalCpus()</pre>
<div class="block">Returns the number of CPUs available to the Java Virtual Machine.
 This method is equivalent to the <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Runtime.html?is-external=true#availableProcessors()" title="class or interface in java.lang"><code>Runtime.availableProcessors()</code></a>
 method.
 <p>
 Note that this value may change during successive invocations of the
 virtual machine.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The number of processors available to the virtual
      machine, never smaller than one.</dd></dl>
</li>
</ul>
<a name="getCurrentCpuLoad()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentCpuLoad</h4>
<pre>double&nbsp;getCurrentCpuLoad()</pre>
<div class="block">Returns the CPU usage usage in <code>[0, 1]</code> range.
 The exact way how this number is calculated depends on SPI implementation.
 <p>
 If the CPU usage is not available, a negative value is returned.
 <p>
 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.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The estimated CPU usage in <code>[0, 1]</code> range.
      Negative value if not available.</dd></dl>
</li>
</ul>
<a name="getAverageCpuLoad()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAverageCpuLoad</h4>
<pre>double&nbsp;getAverageCpuLoad()</pre>
<div class="block">Gets average of CPU load values over all metrics kept in the history.
 <p>
 <b>Note:</b> all aggregated metrics like average, minimum, maximum, total, count are
 calculated over all the metrics kept in history. The
 history size is set via either one or both of configuration settings:
 <ul>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsExpireTime()"><code>IgniteConfiguration.getMetricsExpireTime()</code></a></li>
 <li><a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getMetricsHistorySize()"><code>IgniteConfiguration.getMetricsHistorySize()</code></a></li>
 </ul></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Average of CPU load value in <code>[0, 1]</code> range over all metrics kept
      in the history.</dd></dl>
</li>
</ul>
<a name="getCurrentGcCpuLoad()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentGcCpuLoad</h4>
<pre>double&nbsp;getCurrentGcCpuLoad()</pre>
<div class="block">Returns average time spent in CG since the last update.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Average time spent in CG since the last update.</dd></dl>
</li>
</ul>
<a name="getHeapMemoryInitialized()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHeapMemoryInitialized</h4>
<pre>long&nbsp;getHeapMemoryInitialized()</pre>
<div class="block">Returns the amount of heap memory in bytes that the JVM
 initially requests from the operating system for memory management.
 This method returns <code>-1</code> if the initial memory size is undefined.
 <p>
 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.
 <p>
 <b>Note:</b> this is <b>not</b> an aggregated metric and it's calculated
 from the time of the node's startup.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The initial size of memory in bytes; <code>-1</code> if undefined.</dd></dl>
</li>
</ul>
<a name="getHeapMemoryUsed()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHeapMemoryUsed</h4>
<pre>long&nbsp;getHeapMemoryUsed()</pre>
<div class="block">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 <code>used</code> heap memory values of all heap memory pools.
 <p>
 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.
 <p>
 <b>Note:</b> this is <b>not</b> an aggregated metric and it's calculated
 from the time of the node's startup.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Amount of heap memory used.</dd></dl>
</li>
</ul>
<a name="getHeapMemoryCommitted()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHeapMemoryCommitted</h4>
<pre>long&nbsp;getHeapMemoryCommitted()</pre>
<div class="block">Returns the amount of heap memory in bytes that is committed for
 the JVM to use. This amount of memory is
 guaranteed for the JVM to use.
 The heap consists of one or more memory pools. This value is
 the sum of <code>committed</code> heap memory values of all heap memory pools.
 <p>
 <b>Note:</b> this is <b>not</b> an aggregated metric and it's calculated
 from the time of the node's startup.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The amount of committed memory in bytes.</dd></dl>
</li>
</ul>
<a name="getHeapMemoryMaximum()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHeapMemoryMaximum</h4>
<pre>long&nbsp;getHeapMemoryMaximum()</pre>
<div class="block">Returns the maximum amount of heap memory in bytes that can be
 used for memory management. This method returns <code>-1</code>
 if the maximum memory size is undefined.
 <p>
 This amount of memory is not guaranteed to be available
 for memory management if it is greater than the amount of
 committed memory. The JVM may fail to allocate
 memory even if the amount of used memory does not exceed this
 maximum size.
 <p>
 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.
 <p>
 <b>Note:</b> this is <b>not</b> an aggregated metric and it's calculated
 from the time of the node's startup.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The maximum amount of memory in bytes; <code>-1</code> if undefined.</dd></dl>
</li>
</ul>
<a name="getHeapMemoryTotal()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHeapMemoryTotal</h4>
<pre>long&nbsp;getHeapMemoryTotal()</pre>
<div class="block">Returns the total amount of heap memory in bytes. This method returns <code>-1</code>
 if the total memory size is undefined.
 <p>
 This amount of memory is not guaranteed to be available
 for memory management if it is greater than the amount of
 committed memory. The JVM may fail to allocate
 memory even if the amount of used memory does not exceed this
 maximum size.
 <p>
 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.
 <p>
 <b>Note:</b> this is <b>not</b> an aggregated metric and it's calculated
 from the time of the node's startup.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The total amount of memory in bytes; <code>-1</code> if undefined.</dd></dl>
</li>
</ul>
<a name="getNonHeapMemoryInitialized()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNonHeapMemoryInitialized</h4>
<pre>long&nbsp;getNonHeapMemoryInitialized()</pre>
<div class="block">Returns the amount of non-heap memory in bytes that the JVM
 initially requests from the operating system for memory management.
 This method returns <code>-1</code> if the initial memory size is undefined.
 <p>
 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.
 <p>
 <b>Note:</b> this is <b>not</b> an aggregated metric and it's calculated
 from the time of the node's startup.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The initial size of memory in bytes; <code>-1</code> if undefined.</dd></dl>
</li>
</ul>
<a name="getNonHeapMemoryUsed()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNonHeapMemoryUsed</h4>
<pre>long&nbsp;getNonHeapMemoryUsed()</pre>
<div class="block">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 <code>used</code> non-heap memory values of all non-heap memory pools.
 <p>
 <b>Note:</b> this is <b>not</b> an aggregated metric and it's calculated
 from the time of the node's startup.
 <p>
 <b>Note:</b> this is <b>not</b> an aggregated metric and it's calculated
 from the time of the node's startup.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Amount of none-heap memory used.</dd></dl>
</li>
</ul>
<a name="getNonHeapMemoryCommitted()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNonHeapMemoryCommitted</h4>
<pre>long&nbsp;getNonHeapMemoryCommitted()</pre>
<div class="block">Returns the amount of non-heap memory in bytes that is committed for
 the JVM to use. This amount of memory is
 guaranteed for the JVM to use.
 The non-heap memory consists of one or more memory pools. This value is
 the sum of <code>committed</code> non-heap memory values of all non-heap memory pools.
 <p>
 <b>Note:</b> this is <b>not</b> an aggregated metric and it's calculated
 from the time of the node's startup.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The amount of committed memory in bytes.</dd></dl>
</li>
</ul>
<a name="getNonHeapMemoryMaximum()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNonHeapMemoryMaximum</h4>
<pre>long&nbsp;getNonHeapMemoryMaximum()</pre>
<div class="block">Returns the maximum amount of non-heap memory in bytes that can be
 used for memory management. This method returns <code>-1</code>
 if the maximum memory size is undefined.
 <p>
 This amount of memory is not guaranteed to be available
 for memory management if it is greater than the amount of
 committed memory.  The JVM may fail to allocate
 memory even if the amount of used memory does not exceed this
 maximum size.
 <p>
 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.
 <p>
 <b>Note:</b> this is <b>not</b> an aggregated metric and it's calculated
 from the time of the node's startup.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The maximum amount of memory in bytes; <code>-1</code> if undefined.</dd></dl>
</li>
</ul>
<a name="getNonHeapMemoryTotal()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNonHeapMemoryTotal</h4>
<pre>long&nbsp;getNonHeapMemoryTotal()</pre>
<div class="block">Returns the total amount of non-heap memory in bytes that can be
 used for memory management. This method returns <code>-1</code>
 if the total memory size is undefined.
 <p>
 This amount of memory is not guaranteed to be available
 for memory management if it is greater than the amount of
 committed memory.  The JVM may fail to allocate
 memory even if the amount of used memory does not exceed this
 maximum size.
 <p>
 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.
 <p>
 <b>Note:</b> this is <b>not</b> an aggregated metric and it's calculated
 from the time of the node's startup.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The total amount of memory in bytes; <code>-1</code> if undefined.</dd></dl>
</li>
</ul>
<a name="getUpTime()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUpTime</h4>
<pre>long&nbsp;getUpTime()</pre>
<div class="block">Returns the uptime of the JVM in milliseconds.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Uptime of the JVM in milliseconds.</dd></dl>
</li>
</ul>
<a name="getStartTime()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStartTime</h4>
<pre>long&nbsp;getStartTime()</pre>
<div class="block">Returns the start time of the JVM in milliseconds.
 This method returns the approximate time when the Java virtual
 machine started.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Start time of the JVM in milliseconds.</dd></dl>
</li>
</ul>
<a name="getNodeStartTime()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNodeStartTime</h4>
<pre>long&nbsp;getNodeStartTime()</pre>
<div class="block">Returns the start time of grid node in milliseconds.
 There can be several grid nodes started in one JVM, so JVM start time will be
 the same for all of them, but node start time will be different.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Start time of the grid node in milliseconds.</dd></dl>
</li>
</ul>
<a name="getCurrentThreadCount()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentThreadCount</h4>
<pre>int&nbsp;getCurrentThreadCount()</pre>
<div class="block">Returns the current number of live threads including both
 daemon and non-daemon threads.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Current number of live threads.</dd></dl>
</li>
</ul>
<a name="getMaximumThreadCount()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaximumThreadCount</h4>
<pre>int&nbsp;getMaximumThreadCount()</pre>
<div class="block">Returns the maximum live thread count since the JVM
 started or peak was reset.
 <p>
 <b>Note:</b> this is <b>not</b> an aggregated metric and it's calculated
 from the time of the node's startup.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The peak live thread count.</dd></dl>
</li>
</ul>
<a name="getTotalStartedThreadCount()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTotalStartedThreadCount</h4>
<pre>long&nbsp;getTotalStartedThreadCount()</pre>
<div class="block">Returns the total number of threads created and also started
 since the JVM started.
 <p>
 <b>Note:</b> this is <b>not</b> an aggregated metric and it's calculated
 from the time of the node's startup.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The total number of threads started.</dd></dl>
</li>
</ul>
<a name="getCurrentDaemonThreadCount()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentDaemonThreadCount</h4>
<pre>int&nbsp;getCurrentDaemonThreadCount()</pre>
<div class="block">Returns the current number of live daemon threads.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Current number of live daemon threads.</dd></dl>
</li>
</ul>
<a name="getLastDataVersion()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLastDataVersion</h4>
<pre>long&nbsp;getLastDataVersion()</pre>
<div class="block">In-Memory Data Grid assigns incremental versions to all cache operations. This method provides
 the latest data version on the node.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Last data version.</dd></dl>
</li>
</ul>
<a name="getSentMessagesCount()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSentMessagesCount</h4>
<pre>int&nbsp;getSentMessagesCount()</pre>
<div class="block">Gets sent messages count.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Sent messages count.</dd></dl>
</li>
</ul>
<a name="getSentBytesCount()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSentBytesCount</h4>
<pre>long&nbsp;getSentBytesCount()</pre>
<div class="block">Gets sent bytes count.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Sent bytes count.</dd></dl>
</li>
</ul>
<a name="getReceivedMessagesCount()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReceivedMessagesCount</h4>
<pre>int&nbsp;getReceivedMessagesCount()</pre>
<div class="block">Gets received messages count.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Received messages count.</dd></dl>
</li>
</ul>
<a name="getReceivedBytesCount()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReceivedBytesCount</h4>
<pre>long&nbsp;getReceivedBytesCount()</pre>
<div class="block">Gets received bytes count.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Received bytes count.</dd></dl>
</li>
</ul>
<a name="getOutboundMessagesQueueSize()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOutboundMessagesQueueSize</h4>
<pre>int&nbsp;getOutboundMessagesQueueSize()</pre>
<div class="block">Gets outbound messages queue size.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Outbound messages queue size.</dd></dl>
</li>
</ul>
<a name="getTotalNodes()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getTotalNodes</h4>
<pre>int&nbsp;getTotalNodes()</pre>
<div class="block">Gets total number of nodes.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Total number of nodes.</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ClusterMetrics.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em>Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/ignite/cluster/ClusterGroupEmptyException.html" title="class in org.apache.ignite.cluster"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/ignite/cluster/ClusterMetrics.html" target="_top">Frames</a></li>
<li><a href="ClusterMetrics.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small><table width="100%" border="0" cellspacing=0 cellpadding=0 style="padding: 5px">                                     <tr>                                         <td>                                             <table style="padding-left: 0; margin: 0">                                                 <tbody style="padding: 0; margin: 0">                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <a target=_blank href="https://ignite.apache.org"><nobr>2017 Copyright &#169; Apache Software Foundation</nobr></a>                                                         </td>                                                     </tr>                                                 </tbody>                                             </table>                                         </td>                                         <td width="100%" align="right" valign="center">                                             <a href="https://twitter.com/ApacheIgnite" class="twitter-follow-button" data-show-count="false" data-size="large">Follow @ApacheIgnite</a>                                         </td>                                     </tr>                                     <tr>                                         <td colspan="2" valign="top" align="left">                                             <table style="padding-left: 0; margin: 0">                                                 <tbody style="padding: 0; margin: 0">                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <b>Ignite Fabric</b>                                                         </td>                                                         <td>:&nbsp;&nbsp;                                                             ver. <strong>2.3.0</strong>                                                         </td>                                                     </tr>                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <b>Release Date</b>                                                         </td>                                                         <td>:&nbsp;&nbsp;                                                             October 28 2017                                                         </td>                                                     </tr>                                                 </tbody>                                             </table>                                         </td>                                     </tr>                                     </table></small></p>
</body>
</html>
