You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by di...@apache.org on 2022/04/11 02:12:54 UTC

[rocketmq-mqtt] branch main updated: add exportJvmInfo to judge whether export jvm info or not (#57)

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

dinglei pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/rocketmq-mqtt.git


The following commit(s) were added to refs/heads/main by this push:
     new bc8ed14  add exportJvmInfo to judge whether export jvm info or not (#57)
bc8ed14 is described below

commit bc8ed149b02b2e7248899d4699896ba73938ac13
Author: tianliuliu <64...@qq.com>
AuthorDate: Mon Apr 11 10:12:48 2022 +0800

    add exportJvmInfo to judge whether export jvm info or not (#57)
---
 .../java/org/apache/rocketmq/mqtt/cs/config/ConnectConf.java     | 9 +++++++++
 .../java/org/apache/rocketmq/mqtt/cs/starter/ExporterServer.java | 2 +-
 .../java/org/apache/rocketmq/mqtt/exporter/MqttExporter.java     | 9 ++++++---
 3 files changed, 16 insertions(+), 4 deletions(-)

diff --git a/mqtt-cs/src/main/java/org/apache/rocketmq/mqtt/cs/config/ConnectConf.java b/mqtt-cs/src/main/java/org/apache/rocketmq/mqtt/cs/config/ConnectConf.java
index df28bf8..72330e8 100644
--- a/mqtt-cs/src/main/java/org/apache/rocketmq/mqtt/cs/config/ConnectConf.java
+++ b/mqtt-cs/src/main/java/org/apache/rocketmq/mqtt/cs/config/ConnectConf.java
@@ -47,6 +47,7 @@ public class ConnectConf {
     private int retryIntervalSeconds = 3;
     private int exporterPort = 9090;
     private boolean enablePrometheus = false;
+    private boolean exportJvmInfo = true;
 
     public ConnectConf() throws IOException {
         ClassPathResource classPathResource = new ClassPathResource(CONF_FILE_NAME);
@@ -197,4 +198,12 @@ public class ConnectConf {
     public void setEnablePrometheus(boolean enablePrometheus) {
         this.enablePrometheus = enablePrometheus;
     }
+
+    public boolean isExportJvmInfo() {
+        return exportJvmInfo;
+    }
+
+    public void setExportJvmInfo(boolean exportJvmInfo) {
+        this.exportJvmInfo = exportJvmInfo;
+    }
 }
diff --git a/mqtt-cs/src/main/java/org/apache/rocketmq/mqtt/cs/starter/ExporterServer.java b/mqtt-cs/src/main/java/org/apache/rocketmq/mqtt/cs/starter/ExporterServer.java
index e5749d8..d530800 100644
--- a/mqtt-cs/src/main/java/org/apache/rocketmq/mqtt/cs/starter/ExporterServer.java
+++ b/mqtt-cs/src/main/java/org/apache/rocketmq/mqtt/cs/starter/ExporterServer.java
@@ -39,7 +39,7 @@ public class ExporterServer {
     public void init() throws Exception {
         if (connectConf.isEnablePrometheus()) {
             this.mqttExporter = new MqttExporter(NAMESPACE, HOST_INFO.getName(), HOST_INFO.getAddress(),
-                connectConf.getExporterPort());
+                connectConf.getExporterPort(), connectConf.isExportJvmInfo());
             mqttExporter.start();
         }
     }
diff --git a/mqtt-exporter/src/main/java/org/apache/rocketmq/mqtt/exporter/MqttExporter.java b/mqtt-exporter/src/main/java/org/apache/rocketmq/mqtt/exporter/MqttExporter.java
index ebc6a36..1129ede 100644
--- a/mqtt-exporter/src/main/java/org/apache/rocketmq/mqtt/exporter/MqttExporter.java
+++ b/mqtt-exporter/src/main/java/org/apache/rocketmq/mqtt/exporter/MqttExporter.java
@@ -29,17 +29,20 @@ public class MqttExporter {
     private final String hostName;
     private final String hostIp;
     private final int exporterPort;
+    private final boolean exportJvmInfo;
 
-    public MqttExporter(String nameSpace, String hostName, String hostIp, int exporterPort) {
+    public MqttExporter(String nameSpace, String hostName, String hostIp, int exporterPort, boolean exportJvmInfo) {
         this.nameSpace = nameSpace;
         this.hostName = hostName;
         this.hostIp = hostIp;
         this.exporterPort = exporterPort;
+        this.exportJvmInfo = exportJvmInfo;
     }
 
     public void start() throws Exception {
-        // todo if start jvm exporter default
-        DefaultExports.initialize();
+        if (this.exportJvmInfo) {
+            DefaultExports.initialize();
+        }
         MqttMetricsCollector.initialize(this.nameSpace, this.hostName, this.hostIp, this.exporterPort);
         LOG.info("metrics exporter start success");