|
|
@ -9,6 +9,7 @@ import com.fr.event.Event; |
|
|
|
import com.fr.event.EventDispatcher; |
|
|
|
import com.fr.event.EventDispatcher; |
|
|
|
import com.fr.event.Listener; |
|
|
|
import com.fr.event.Listener; |
|
|
|
import com.fr.general.CloudCenter; |
|
|
|
import com.fr.general.CloudCenter; |
|
|
|
|
|
|
|
import com.fr.general.GeneralContext; |
|
|
|
import com.fr.general.GeneralUtils; |
|
|
|
import com.fr.general.GeneralUtils; |
|
|
|
import com.fr.general.http.HttpToolbox; |
|
|
|
import com.fr.general.http.HttpToolbox; |
|
|
|
import com.fr.json.JSONObject; |
|
|
|
import com.fr.json.JSONObject; |
|
|
@ -72,7 +73,7 @@ public class DesignerLatencyMetric { |
|
|
|
* 启动 |
|
|
|
* 启动 |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
public void start() { |
|
|
|
public void start() { |
|
|
|
if (SwitchForSwingChecker.isLatencyMonitoring()) { |
|
|
|
if (needMonitor()) { |
|
|
|
// 初始化容器
|
|
|
|
// 初始化容器
|
|
|
|
initializeContainer(); |
|
|
|
initializeContainer(); |
|
|
|
// 启动异步性能记录线程池
|
|
|
|
// 启动异步性能记录线程池
|
|
|
@ -95,7 +96,7 @@ public class DesignerLatencyMetric { |
|
|
|
* 关闭 |
|
|
|
* 关闭 |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
public void stop() { |
|
|
|
public void stop() { |
|
|
|
if (SwitchForSwingChecker.isLatencyMonitoring()) { |
|
|
|
if (needMonitor()) { |
|
|
|
if (this.executorService != null) { |
|
|
|
if (this.executorService != null) { |
|
|
|
this.executorService.shutdown(); |
|
|
|
this.executorService.shutdown(); |
|
|
|
} |
|
|
|
} |
|
|
@ -107,6 +108,11 @@ public class DesignerLatencyMetric { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private static boolean needMonitor() { |
|
|
|
|
|
|
|
// 海外版本不回传云中心
|
|
|
|
|
|
|
|
return SwitchForSwingChecker.isLatencyMonitoring() && GeneralContext.isChineseEnv(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private String getLatencyUrl() { |
|
|
|
private String getLatencyUrl() { |
|
|
|
if (StringUtils.isEmpty(latencyUrl)) { |
|
|
|
if (StringUtils.isEmpty(latencyUrl)) { |
|
|
|
String monitorEntry = CloudCenter.getInstance().acquireUrlByKind("cloud.monitor.api.entrypoint"); |
|
|
|
String monitorEntry = CloudCenter.getInstance().acquireUrlByKind("cloud.monitor.api.entrypoint"); |
|
|
|