属性列表
属性 |
描述 |
默认值 |
name |
完全限定的 JMX ObjectName——Catalina:type=Server |
- |
attribute |
已有的 MBean 属性(参看上文介绍的 Tomcat MBean 描述) |
- |
ref |
JMX 连接引用 |
jmx.server |
echo |
Echo 命令用途(访问与结果) |
false |
resultproperty |
在该项目属性中保存结果 |
- |
delimiter |
用分隔符(java.util.StringTokenizier)分隔结果,使用 resultproperty 作为前缀来保存令牌 |
- |
separatearrayresults |
返回值为数组时,将结果保存为属性列表($resultproperty.[0..N] 和 $resultproperty.length) |
true |
从默认的 JMX 连接中获取远程 MBean 属性:
<jmx:get
name="Catalina:type=Manager,context=/servlets-examples,host=localhost"
attribute="maxActiveSessions"
resultproperty="servlets-examples.maxActiveSessions"
/>
获取结果数组,并将其分隔成独立的一些属性:
<jmx:get
name="Catalina:type=ClusterSender,host=localhost"
attribute="senderObjectNames"
resultproperty="senderObjectNames"
/>
访问 senderObjectNames 属性:
${senderObjectNames.length} give the number of returned sender list.
${senderObjectNames.[0..N]} found all sender object names
获取连接的 IDataSender 属性(只有在配置了集群时)。
注意:这里为了可读性,将 name 属性加以包装。代码应该位于同一行中,并且不含有空格。
<jmx:query
failonerror="false"
name="Catalina:type=Cluster,host=${tomcat.application.host}"
resultproperty="cluster"
/>
<jmx:get
name="Catalina:type=IDataSender,host=${tomcat.application.host},
senderAddress=${cluster.backup.address},senderPort=${cluster.backup.port}"
attribute="connected"
resultproperty="datasender.connected"
if="cluster.0.name" />