属性列表
属性 |
说明 |
默认值 |
|
name |
完全限定的 JMX ObjectName——Catalina:type=Server |
- |
|
operation |
已有的 MBean 操作() |
- |
|
ref |
JMX 连接引用 |
jmx.server |
jmx.server |
echo |
Echo 命令用途(访问与结果) |
false |
|
resultproperty |
在这一项目属性中保存结果 |
- |
|
delimiter |
用分隔符(java.util.StringTokenizier)分隔结果,使用 resultproperty 作为前缀来保存令牌 |
- |
|
separatearrayresults |
返回值为数组时,将结果保存为属性列表($resultproperty.[0..N] 和 $resultproperty.length) |
true |
|
停止应用:
<jmx:invoke
name="Catalina:type=Manager,context=/servlets-examples,host=localhost"
operation="stop"/>
可以在 ${sessions.[0..N} 属性中找到 sessionid,然后利用 ${sessions.length} 属性来访问计数。
获取所有 sessionid 的范例如下:
<jmx:invoke
name="Catalina:type=Manager,context=/servlets-examples,host=localhost"
operation="listSessionIds"
resultproperty="sessions"
delimiter=" "
/>
现在你可以在 ${sessions.[0..N} 属性中找到 sessionid,然后利用 ${sessions.length} 属性来访问计数。
从 ${sessionid.0} 会话中获取远程 MBean 会话属性:
<jmx:invoke
name="Catalina:type=Manager,context=/ClusterTest,host=localhost"
operation="getSessionAttribute"
resultproperty="hello">
<arg value="${sessionid.0}"/>
<arg value="Hello" />
</jmx:invoke>
在虚拟主机 localhost 上创建新的访问日志记录器值:
<jmx:invoke
name="Catalina:type=MBeanFactory"
operation="createAccessLoggerValve"
resultproperty="accessLoggerObjectName"
>
<arg value="Catalina:type=Host,host=localhost"/>
</jmx:invoke>
现在可以利用 ${accessLoggerObjectName} 属性上存储的名称找到新的 MBean 了。