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

NSAmelchev 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 9c05288f091 IGNITE-29077 Add LocalPort metric to the io.discovery 
register (#13618)
9c05288f091 is described below

commit 9c05288f0910202a03508db8bad34d1b1019a072
Author: Nikita Amelchev <[email protected]>
AuthorDate: Fri Sep 25 17:24:27 2026 +0300

    IGNITE-29077 Add LocalPort metric to the io.discovery register (#13618)
---
 docs/_docs/monitoring-metrics/new-metrics.adoc                     | 3 ++-
 .../java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java  | 4 +++-
 .../org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiMBean.java  | 2 +-
 .../apache/ignite/spi/discovery/tcp/TcpDiscoverySpiMBeanTest.java  | 7 +++++++
 4 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/docs/_docs/monitoring-metrics/new-metrics.adoc 
b/docs/_docs/monitoring-metrics/new-metrics.adoc
index 81007005f0f..f7f7c3222d5 100644
--- a/docs/_docs/monitoring-metrics/new-metrics.adoc
+++ b/docs/_docs/monitoring-metrics/new-metrics.adoc
@@ -517,6 +517,7 @@ Register name: `io.discovery`
 |FailedNodes | integer | Failed nodes count.
 |JoinedNodes | integer | Joined nodes count.
 |LeftNodes | integer | Left nodes count.
+|LocalPort | integer | Local TCP port the discovery SPI listens to.
 |MaxMsgQueueSize | long | Maximum message queue size over the configured time 
interval (1 minute by default).
 |MessageWorkerQueueSize | integer | Message worker queue current size.
 |Next | UUID | Next in the ring node ID.
@@ -527,7 +528,7 @@ Register name: `io.discovery`
 |TotalReceivedMessages | integer | Total received messages count.
 |===
 
-NOTE: `Coordinator`, `CoordinatorSince`, `MaxMsgQueueSize` and `Next` are 
registered on server nodes only; `ClientRouterNodeId` is registered on client 
nodes only.
+NOTE: `Coordinator`, `CoordinatorSince`, `LocalPort`, `MaxMsgQueueSize` and 
`Next` are registered on server nodes only; `ClientRouterNodeId` is registered 
on client nodes only.
 
 == Data Region IO
 
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 7b8490ded83..314ded00d8e 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
@@ -751,7 +751,7 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter 
implements IgniteDiscovery
     /**
      * Gets local TCP port SPI listens to.
      *
-     * @return Local port range.
+     * @return Local port.
      */
     public int getLocalPort() {
         TcpDiscoveryNode locNode0 = locNode;
@@ -1491,6 +1491,8 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter 
implements IgniteDiscovery
             discoReg.register("Coordinator", () -> impl.getCoordinator(), 
UUID.class, "Coordinator ID");
 
             discoReg.register("CoordinatorSince", 
stats::coordinatorSinceTimestamp, "Coordinator since timestamp");
+
+            discoReg.register("LocalPort", this::getLocalPort, "Local TCP port 
the SPI listens to.");
         }
         else {
             discoReg.register("ClientRouterNodeId", () -> 
String.valueOf(locNode.clientRouterNodeId()), String.class,
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 df0043a0528..c657a21a40a 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
@@ -73,7 +73,7 @@ public interface TcpDiscoverySpiMBean extends 
IgniteSpiManagementMBean, Discover
     /**
      * Gets local TCP port SPI listens to.
      *
-     * @return Local port range.
+     * @return Local port.
      */
     @MXBeanDescription("Local TCP port.")
     public int getLocalPort();
diff --git 
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiMBeanTest.java
 
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiMBeanTest.java
index 7bb53e5d27a..20c30567c84 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiMBeanTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiMBeanTest.java
@@ -118,6 +118,13 @@ public class TcpDiscoverySpiMBeanTest extends 
GridCommonAbstractTest {
                         assertEquals(0L, 
discoReg.<LongMetric>findMetric("CoordinatorSince").value());
                 }
 
+                if (i != cliIdx) {
+                    assertTrue(bean.getLocalPort() > 0);
+                    assertEquals(bean.getLocalPort(), 
discoReg.<IntMetric>findMetric("LocalPort").value());
+                }
+                else
+                    assertNull(discoReg.findMetric("LocalPort"));
+
                 // `getNodesJoined` returns count of joined nodes since local 
node startup.
                 assertEquals((cnt - 1) - i, bean.getNodesJoined());
                 assertEquals((cnt - 1) - i, 
discoReg.<IntMetric>findMetric("JoinedNodes").value());

Reply via email to