我通过JMX连接到tomcat。我写了一个简单的JMX客户端来连接
tomcat并读取不同的JMX MBean属性来监视tomcat。我的问题是,我想知道tomcat的哪个端口的HTTP连接器正在存在。有没有办法在JMX Mbean上获取这些细节 - 无需读取tomcat的server.xml文件。但要通过一个MBean的某些属性来获得它?
答案 0 :(得分:1)
每个连接器都有一个专用的MBean。您可以通过查询*:type=Connector,*
来获取MBean的ObjectNames。当然,可以有多个连接器。这些MBean具有属性port
,您可以从中查询端口号。
如果您使用jmx4perl,则可以使用
轻松查询这些属性jmx4perl http://localhost:8080/jolokia read *:type=Connector,* port
{
"Catalina:port=8009,type=Connector" => {
port => 8009
},
"Catalina:port=8080,type=Connector" => {
port => 8080
}
}
答案 1 :(得分:0)
MBean的名称类似于Catalina:type=ThreadPool,name=http-8080
。如您所见,连接器端口位于名称中。