现在越来越多的集成平台使用了Mule企业服务总线中间件,Mule企业版的监控程序是收费的,不过Mule大佬还算有点良心,实现了很多MBEAN接口,提供了很JMX接口,这使得自定义监控界面得以实现。
准备实现的结构图如下:
在Mule里面添加JMX代理,新建一个flow,代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns="http://www.mulesoft.org/schema/mule/core"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:management="http://www.mulesoft.org/schema/mule/management"
xmlns:spring="http://www.springframework.org/schema/beans"
xsi:schemaLocation="
">
<!-- jmx配置 -->
<custom-agent>
<spring:property value="8099"/>
</custom-agent>
<management:jmx-server>
<management:connector-server url="service:jmx:rmi:///jndi/rmi://localhost:7099/mule" rebind="true" />
</management:jmx-server>
</mule>
附:需要把Mule-Agent的包: jolokia-mule-1.0.6-agent.jar添加到类目录
参考:
运行结果:
打印出如下信息表示添加JMX成功啦。
这样打开: :8099/jolokia 这个就可以查看版本了。
内存情况及回收操作:
:8099/jolokia/read/java.lang:type=Memory
:8099/jolokia/exec/java.lang:type=Memory/gc
操作系统信息
:8099/jolokia/read/java.lang:type=OperatingSystem
运行环境
:8099/jolokia/read/java.lang:type=Runtime
线程总体情况
:8099/jolokia/read/java.lang:type=Threading
类加载情况
:8099/jolokia/read/java.lang:type=ClassLoading
更多用法可以参见:
有了API,你们就可以自己写自定义的界面了。
看我们的结构图,绿色部分有说提供标准的JMX API,我们来测试使用JConsole测试一下
此工具JDK自带的
双击打开,并填入RIM地址