diff --git a/com.creditease.uav.agent/src/main/java/com/creditease/agent/feature/monitoragent/datacatch/BaseHttpMonitorDataCatchWorker.java b/com.creditease.uav.agent/src/main/java/com/creditease/agent/feature/monitoragent/datacatch/BaseHttpMonitorDataCatchWorker.java index 59503afa..fd21fdbc 100644 --- a/com.creditease.uav.agent/src/main/java/com/creditease/agent/feature/monitoragent/datacatch/BaseHttpMonitorDataCatchWorker.java +++ b/com.creditease.uav.agent/src/main/java/com/creditease/agent/feature/monitoragent/datacatch/BaseHttpMonitorDataCatchWorker.java @@ -27,6 +27,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Properties; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; @@ -121,6 +122,18 @@ public void run() { } } + // up to date SystemProperties + String getSysUrl = this.appServerInfo.getJVMAccessURL() + "jvm?action=getSystemPro"; + String data = accessData(getSysUrl, null); + @SuppressWarnings("unchecked") + Map p = JSONHelper.toObject(data, Map.class); + + Properties sysPro = new Properties(); + if (!p.isEmpty()) { + sysPro.putAll(p); + this.appServerInfo.setSystemProperties(sysPro); + } + // get all profile's MBean MonitorDataFrame pmdf = new MonitorDataFrame(this.getWorkerId(), "P", timeFlag); pmdf.addExt("pid", pid); @@ -153,6 +166,9 @@ public void run() { // if connect fails, try process detecting doHealthReaction(); } + catch (Exception e) { + log.err(this, "up to date SystemProperties failed", e); + } } /**