Authored by zhangmingm

添加获取主机ip的代码。

1 package com.sitech.ismp.coll.middleware.tomcat.impl; 1 package com.sitech.ismp.coll.middleware.tomcat.impl;
2 2
3 -import java.io.IOException;  
4 -import java.lang.management.MemoryUsage;  
5 -import java.net.MalformedURLException;  
6 -import java.text.SimpleDateFormat;  
7 -import java.util.ArrayList;  
8 -import java.util.Date;  
9 -import java.util.HashMap;  
10 -import java.util.Iterator;  
11 -import java.util.List;  
12 -import java.util.Map;  
13 -import java.util.Set; 3 +import org.apache.log4j.Logger;
14 4
15 import javax.management.MBeanAttributeInfo; 5 import javax.management.MBeanAttributeInfo;
16 import javax.management.MBeanInfo; 6 import javax.management.MBeanInfo;
@@ -22,9 +12,22 @@ import javax.management.openmbean.CompositeDataSupport; @@ -22,9 +12,22 @@ import javax.management.openmbean.CompositeDataSupport;
22 import javax.management.remote.JMXConnector; 12 import javax.management.remote.JMXConnector;
23 import javax.management.remote.JMXConnectorFactory; 13 import javax.management.remote.JMXConnectorFactory;
24 import javax.management.remote.JMXServiceURL; 14 import javax.management.remote.JMXServiceURL;
  15 +import java.io.IOException;
  16 +import java.lang.management.MemoryUsage;
  17 +import java.net.MalformedURLException;
  18 +import java.text.SimpleDateFormat;
  19 +import java.util.ArrayList;
  20 +import java.util.Date;
  21 +import java.util.HashMap;
  22 +import java.util.Iterator;
  23 +import java.util.List;
  24 +import java.util.Map;
  25 +import java.util.Set;
25 26
26 public class CollTomcat { 27 public class CollTomcat {
27 28
  29 + private static Logger log= Logger.getLogger(CollTomcat.class);
  30 +
28 HashMap<String, String[]> environmentMap = null; 31 HashMap<String, String[]> environmentMap = null;
29 private MBeanServerConnection mbeanServerConn = null; 32 private MBeanServerConnection mbeanServerConn = null;
30 JMXConnector JMXConn = null; 33 JMXConnector JMXConn = null;
@@ -35,6 +38,11 @@ public class CollTomcat { @@ -35,6 +38,11 @@ public class CollTomcat {
35 38
36 public void init(HashMap<String, String> params) { 39 public void init(HashMap<String, String> params) {
37 String jmxurl = params.get("JMX_URL"); 40 String jmxurl = params.get("JMX_URL");
  41 + // frank 添加 IP参数,用于获取Tomcat所在主机的ping状态。
  42 + int start=jmxurl.indexOf("://");
  43 + int end=jmxurl.lastIndexOf(":");
  44 + String ip=jmxurl.substring(start+15,end);
  45 + params.put("ip",ip);
38 try { 46 try {
39 JMXServiceURL serverURL = new JMXServiceURL(jmxurl); 47 JMXServiceURL serverURL = new JMXServiceURL(jmxurl);
40 try { 48 try {
@@ -116,7 +124,9 @@ public class CollTomcat { @@ -116,7 +124,9 @@ public class CollTomcat {
116 124
117 protected void release() { 125 protected void release() {
118 try { 126 try {
119 - this.JMXConn.close(); 127 + if(null != JMXConn){
  128 + this.JMXConn.close();
  129 + }
120 } catch (IOException e) { 130 } catch (IOException e) {
121 e.printStackTrace(); 131 e.printStackTrace();
122 } 132 }