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

weizhou pushed a commit to branch 4.20
in repository https://gitbox.apache.org/repos/asf/cloudstack.git


The following commit(s) were added to refs/heads/4.20 by this push:
     new 9167cd3b722 server: use /prod/stat to get uptime instead of the uptime 
command (#11670)
9167cd3b722 is described below

commit 9167cd3b72253cb509b19804f3e740b90b41a7af
Author: Vishesh <vishes...@gmail.com>
AuthorDate: Fri Sep 19 17:38:12 2025 +0530

    server: use /prod/stat to get uptime instead of the uptime command (#11670)
---
 server/src/main/java/com/cloud/server/StatsCollector.java | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/server/src/main/java/com/cloud/server/StatsCollector.java 
b/server/src/main/java/com/cloud/server/StatsCollector.java
index a32dac398a8..4e1e78f1610 100644
--- a/server/src/main/java/com/cloud/server/StatsCollector.java
+++ b/server/src/main/java/com/cloud/server/StatsCollector.java
@@ -937,12 +937,12 @@ public class StatsCollector extends ManagerBase 
implements ComponentMethodInterc
                 logger.info(String.format("used memory from /proc: %d", 
newEntry.getSystemMemoryUsed()));
             }
             try {
-                String bootTime = Script.runSimpleBashScript("uptime -s");
-                SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd 
hh:mm:ss", Locale.ENGLISH);
+                String bootTime = Script.runSimpleBashScript("date -d @$(grep 
btime /proc/stat | awk '{print $2}') '+%Y-%m-%d %H:%M:%S'");
+                SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd 
HH:mm:ss", Locale.ENGLISH);
                 Date date = formatter.parse(bootTime);
                 newEntry.setSystemBootTime(date);
             } catch (ParseException e) {
-                logger.error("can not retrieve system uptime");
+                logger.error("can not retrieve system uptime", e);
             }
             String maxuse = Script.runSimpleBashScript(String.format("ps -o 
vsz= %d", newEntry.getPid()));
             newEntry.setSystemMemoryVirtualSize(Long.parseLong(maxuse) * 1024);

Reply via email to