From 15c1d4f43fb1bf02f497fe28e865317a12725c0c Mon Sep 17 00:00:00 2001 From: Amnon Heiman Date: Sun, 31 Jan 2021 18:12:29 +0200 Subject: [PATCH] StorageService: Add a method to return the uptime Currently, the nodetool uses the jmx server for the uptime, this is confusing is what we expect is Scylla uptime. This patch exposes the API uptime using MBean. Relates to #154 Signed-off-by: Amnon Heiman Closes #155 --- .../java/org/apache/cassandra/service/StorageService.java | 5 +++++ .../org/apache/cassandra/service/StorageServiceMBean.java | 2 ++ 2 files changed, 7 insertions(+) diff --git a/src/main/java/org/apache/cassandra/service/StorageService.java b/src/main/java/org/apache/cassandra/service/StorageService.java index e1210cb..c208756 100644 --- a/src/main/java/org/apache/cassandra/service/StorageService.java +++ b/src/main/java/org/apache/cassandra/service/StorageService.java @@ -1749,4 +1749,9 @@ public class StorageService extends MetricsMBean implements StorageServiceMBean, APIClient.set_query_param(queryParams, "cf", APIClient.join(columnFamilies)); return client.getIntValue("/storage_service/keyspace_scrub/" + keyspaceName, queryParams); } + @Override + public long getUptime() { + log("getUptime()"); + return client.getLongValue("/system/uptime_ms"); + } } diff --git a/src/main/java/org/apache/cassandra/service/StorageServiceMBean.java b/src/main/java/org/apache/cassandra/service/StorageServiceMBean.java index 3eead26..27ae3f9 100644 --- a/src/main/java/org/apache/cassandra/service/StorageServiceMBean.java +++ b/src/main/java/org/apache/cassandra/service/StorageServiceMBean.java @@ -883,4 +883,6 @@ public interface StorageServiceMBean extends NotificationEmitter { public List getSSTableInfo(String keyspace, String table); public List getSSTableInfo(); + /** retun the system uptime */ + public long getUptime(); }