diff --git a/webmagic-extension/src/main/java/us/codecraft/webmagic/monitor/SpiderMonitor.java b/webmagic-extension/src/main/java/us/codecraft/webmagic/monitor/SpiderMonitor.java index 265efc7..b9a9d20 100644 --- a/webmagic-extension/src/main/java/us/codecraft/webmagic/monitor/SpiderMonitor.java +++ b/webmagic-extension/src/main/java/us/codecraft/webmagic/monitor/SpiderMonitor.java @@ -52,8 +52,6 @@ public class SpiderMonitor { private Type type = Type.Local; - private JMXConnectorServer jmxConnServer; - private List spiderStatuses = new ArrayList(); public List getSpiders() { @@ -216,16 +214,16 @@ public class SpiderMonitor { JMXServiceURL url = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://" + jndiServer + ":" + rmiPort + "/" + jmxServerName); System.out.println("JMXServiceURL: " + url.toString()); System.out.println("Please replace localhost of your ip if you want to connect it in remote server."); - jmxConnServer = JMXConnectorServerFactory.newJMXConnectorServer(url, null, localServer); + JMXConnectorServer jmxConnServer = JMXConnectorServerFactory.newJMXConnectorServer(url, null, localServer); jmxConnServer.start(); + objName = new ObjectName(jmxServerName + ":name=WebMagicMonitor"); + localServer.registerMBean(jmxConnServer, objName); } for (SpiderStatusMXBean spiderStatus : spiderStatuses) { objName = new ObjectName(jmxServerName + ":name=" + spiderStatus.getName()); localServer.registerMBean(spiderStatus, objName); } - objName = new ObjectName(jmxServerName + ":name=WebMagicMonitor"); - localServer.registerMBean(jmxConnServer, objName); return this; }