You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by sk...@apache.org on 2021/03/19 10:36:01 UTC

[ignite] branch master updated: IGNITE-13951 Improved metrics description.

This is an automated email from the ASF dual-hosted git repository.

sk0x50 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git


The following commit(s) were added to refs/heads/master by this push:
     new 802835e  IGNITE-13951 Improved metrics description.
802835e is described below

commit 802835e9c5cb0130b5f80329cdd5d304373ee5f3
Author: a-polyakov <po...@gmail.com>
AuthorDate: Fri Mar 19 13:35:19 2021 +0300

    IGNITE-13951 Improved metrics description.
    
    Signed-off-by: Slava Koptilin <sl...@gmail.com>
---
 .../cache/CacheLocalMetricsMXBeanImpl.java         |  2 +
 .../apache/ignite/mxbean/CacheMetricsMXBean.java   | 58 +++++++++++++++++++++-
 .../ignite/mxbean/DataRegionMetricsMXBean.java     | 20 ++++++++
 .../org/apache/ignite/mxbean/ThreadPoolMXBean.java |  8 +--
 .../ignite/spi/discovery/tcp/ServerImpl.java       |  4 +-
 .../ignite/spi/discovery/tcp/TcpDiscoverySpi.java  | 20 ++++++--
 .../spi/discovery/tcp/TcpDiscoverySpiMBean.java    | 14 ++++--
 7 files changed, 113 insertions(+), 13 deletions(-)

diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheLocalMetricsMXBeanImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheLocalMetricsMXBeanImpl.java
index f9e525e..64a8a77 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheLocalMetricsMXBeanImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheLocalMetricsMXBeanImpl.java
@@ -437,10 +437,12 @@ public class CacheLocalMetricsMXBeanImpl implements CacheMetricsMXBean {
         return cache.metrics0().getTotalPartitionsCount();
     }
 
+    /** {@inheritDoc} */
     @Override public long getRebalancedKeys() {
         return cache.metrics0().getRebalancedKeys();
     }
 
+    /** {@inheritDoc} */
     @Override public long getEstimatedRebalancingKeys() {
         return cache.metrics0().getEstimatedRebalancingKeys();
     }
diff --git a/modules/core/src/main/java/org/apache/ignite/mxbean/CacheMetricsMXBean.java b/modules/core/src/main/java/org/apache/ignite/mxbean/CacheMetricsMXBean.java
index bfcf38a..63f71e2 100644
--- a/modules/core/src/main/java/org/apache/ignite/mxbean/CacheMetricsMXBean.java
+++ b/modules/core/src/main/java/org/apache/ignite/mxbean/CacheMetricsMXBean.java
@@ -316,7 +316,7 @@ public interface CacheMetricsMXBean extends CacheStatisticsMXBean, CacheMXBean,
     public boolean isStatisticsEnabled();
 
     /** {@inheritDoc} */
-    @Override @MXBeanDescription("True if management is enabled.")
+    @Override @MXBeanDescription("Checks whether management is enabled on this cache.")
     public boolean isManagementEnabled();
 
     /** {@inheritDoc} */
@@ -360,4 +360,60 @@ public interface CacheMetricsMXBean extends CacheStatisticsMXBean, CacheMXBean,
     @MXBeanDescription("Number of keys processed during index rebuilding. To get remaining number of keys for " +
         "rebuilding, subtract current value from cache size.")
     @Override public long getIndexRebuildKeysProcessed();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("Number of already rebalanced keys.")
+    @Override public long getRebalancedKeys();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("Estimated total number of keys to rebalance.")
+    @Override public long getEstimatedRebalancingKeys();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("The number of partitions to be cleared before actual rebalance starts.")
+    @Override public long getRebalanceClearingPartitionsLeft();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("The mean time to execute cache invokes (time in µs).")
+    @Override public float getEntryProcessorAverageInvocationTime();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("The percentage of invocations on keys which exist in the cache.")
+    @Override public float getEntryProcessorHitPercentage();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("The total number of invocations on keys which exist in the cache.")
+    @Override public long getEntryProcessorHits();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("The total number of cache invocations.")
+    @Override public long getEntryProcessorInvocations();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("So far, the maximum time to execute cache invokes (time in µs).")
+    @Override public float getEntryProcessorMaxInvocationTime();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("So far, the minimum time to execute cache invokes (time in µs).")
+    @Override public float getEntryProcessorMinInvocationTime();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("The total number of invocations on keys which don't exist in the cache.")
+    @Override public long getEntryProcessorMisses();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("The percentage of invocations on keys which don't exist in the cache.")
+    @Override public float getEntryProcessorMissPercentage();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("The total number of cache invocations which caused an update.")
+    @Override public long getEntryProcessorPuts();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("The total number of cache invocations which caused no updates.")
+    @Override public long getEntryProcessorReadOnlyInvocations();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("The total number of cache invocations which caused a removal.")
+    @Override public long getEntryProcessorRemovals();
 }
diff --git a/modules/core/src/main/java/org/apache/ignite/mxbean/DataRegionMetricsMXBean.java b/modules/core/src/main/java/org/apache/ignite/mxbean/DataRegionMetricsMXBean.java
index 57b706b..18531fb 100644
--- a/modules/core/src/main/java/org/apache/ignite/mxbean/DataRegionMetricsMXBean.java
+++ b/modules/core/src/main/java/org/apache/ignite/mxbean/DataRegionMetricsMXBean.java
@@ -125,6 +125,26 @@ public interface DataRegionMetricsMXBean extends DataRegionMetrics {
     @MXBeanDescription("Offheap used size in bytes.")
     @Override public long getOffheapUsedSize();
 
+    /** {@inheritDoc} */
+    @MXBeanDescription("The size of the memory page in bytes.")
+    @Override public int getPageSize();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("The total size of pages loaded to the RAM. When persistence is disabled, this metric is equal to TotalAllocatedSize.")
+    @Override public long getPhysicalMemorySize();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("The used checkpoint buffer size in pages.")
+    @Override public long getUsedCheckpointBufferPages();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("The used checkpoint buffer size in bytes.")
+    @Override public long getUsedCheckpointBufferSize();
+
+    /** {@inheritDoc} */
+    @MXBeanDescription("The checkpoint buffer size in bytes.")
+    @Override public long getCheckpointBufferSize();
+
     /**
      * Enables memory metrics collection on an Apache Ignite node.
      */
diff --git a/modules/core/src/main/java/org/apache/ignite/mxbean/ThreadPoolMXBean.java b/modules/core/src/main/java/org/apache/ignite/mxbean/ThreadPoolMXBean.java
index ef6b7e66..117cdec 100644
--- a/modules/core/src/main/java/org/apache/ignite/mxbean/ThreadPoolMXBean.java
+++ b/modules/core/src/main/java/org/apache/ignite/mxbean/ThreadPoolMXBean.java
@@ -148,11 +148,13 @@ public interface ThreadPoolMXBean {
     public boolean isTerminating();
 
     /**
-     * Returns the class name of current rejection handler.
+     * The class name of the handler for tasks that cannot be executed.
+     * This may occur when no more threads or queue slots are available because their bounds would be exceeded,
+     * or upon shutdown of the Executor.
      *
-     * @return Class name of current rejection handler.
+     * @return Class name of the handler for tasks that cannot be executed by the thread pool.
      */
-    @MXBeanDescription("Class name of current rejection handler.")
+    @MXBeanDescription("Returns the class name of the handler for tasks that cannot be executed by the thread pool.")
     public String getRejectedExecutionHandlerClass();
 
     /**
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
index 31fe6a4..9006312 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
@@ -2216,10 +2216,12 @@ class ServerImpl extends TcpDiscoveryImpl {
 
     /**
      * Thread that cleans IP finder and keeps it in the correct state, unregistering
-     * addresses of the nodes that has left the topology.
+     * addresses of the nodes that has left the topology and re-registries missing addresses.
      * <p>
      * This thread should run only on coordinator node and will clean IP finder
      * if and only if {@link org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinder#isShared()} is {@code true}.
+     * <p>
+     * Run with frequency {@link org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi#ipFinderCleanFreq}
      */
     private class IpFinderCleaner extends IgniteSpiThread {
         /**
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
index 5436342..7dec218 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
@@ -328,7 +328,11 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements IgniteDiscovery
     /** Network timeout. */
     protected long netTimeout = DFLT_NETWORK_TIMEOUT;
 
-    /** Join timeout. */
+    /**
+     * Join timeout, in milliseconds. Time to wait for joining. If node cannot connect to any address from the IP
+     * finder, the node continues to try to join during this timeout. If all addresses still do not respond, an
+     * exception will occur and the node will fail to start. If 0 is specified, it means wait forever.
+     */
     protected long joinTimeout = DFLT_JOIN_TIMEOUT;
 
     /** Thread priority for all threads started by SPI. */
@@ -400,7 +404,12 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements IgniteDiscovery
     /** Default SO_LINGER to use for socket. Set negative to disable, non-negative to enable, default is {@DFLT_SO_LINGER }. */
     private int soLinger = DFLT_SO_LINGER;
 
-    /** IP finder clean frequency. */
+    /**
+     * The frequency with which coordinator cleans IP finder and keeps it in the correct state, which means that
+     * coordinator unregisters addresses of the nodes that have left the topology and re-registries missing addresses.
+     *
+     * @see org.apache.ignite.spi.discovery.tcp.ServerImpl.IpFinderCleaner
+     */
     protected long ipFinderCleanFreq = DFLT_IP_FINDER_CLEAN_FREQ;
 
     /** Node authenticator. */
@@ -865,7 +874,8 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements IgniteDiscovery
     }
 
     /**
-     * Gets IP finder clean frequency.
+     * Gets frequency with which coordinator cleans IP finder and keeps it in the correct state, unregistering addresses of
+     * the nodes that have left the topology.
      *
      * @return IP finder clean frequency.
      */
@@ -987,7 +997,9 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter implements IgniteDiscovery
     }
 
     /**
-     * Gets join timeout.
+     * Get join timeout, in milliseconds. Time to wait for joining. If node cannot connect to any address from the IP
+     * finder, the node continues to try to join during this timeout. If all addresses still do not respond, an
+     * exception will occur and the node will fail to start. If 0 is specified, it means wait forever.
      *
      * @return Join timeout.
      */
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiMBean.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiMBean.java
index cee4a4d..4c9143f 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiMBean.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiMBean.java
@@ -95,11 +95,12 @@ public interface TcpDiscoverySpiMBean extends IgniteSpiManagementMBean, Discover
     public int getThreadPriority();
 
     /**
-     * Gets IP finder clean frequency.
+     * Gets frequency with which coordinator cleans IP finder and keeps it in the correct state, unregistering addresses
+     * of the nodes that have left the topology.
      *
      * @return IP finder clean frequency.
      */
-    @MXBeanDescription("IP finder clean frequency.")
+    @MXBeanDescription("The frequency with which coordinator cleans IP finder and keeps it in the correct state, unregistering addresses of the nodes that have left the topology.")
     public long getIpFinderCleanFrequency();
 
     /**
@@ -247,11 +248,16 @@ public interface TcpDiscoverySpiMBean extends IgniteSpiManagementMBean, Discover
     public long getSocketTimeout();
 
     /**
-     * Gets join timeout.
+     * The join timeout, in milliseconds. Time to wait for joining. If node cannot connect to any address from the IP
+     * finder, the node continues to try to join during this timeout. If all addresses still do not respond, an
+     * exception will occur and the node will fail to start. If 0 is specified, it means wait forever.
      *
      * @return Join timeout.
      */
-    @MXBeanDescription("Join timeout.")
+    @MXBeanDescription("The join timeout, in milliseconds. Time to wait for joining. " +
+        "If node cannot connect to any address from the IP finder, the node continues to try to join during this timeout. " +
+        "If all addresses still do not respond, an exception will occur and the node will fail to start. " +
+        "If 0 is specified, it means wait forever.")
     public long getJoinTimeout();
 
     /**