spy2servers已经发布有一段时间了,部分的使用手法都发布在不同的文章中:
http://www.blogjava.net/xmatthew/archive/2008/04/24/194894.html
http://www.blogjava.net/xmatthew/archive/2008/04/21/194349.html
http://www.blogjava.net/xmatthew/archive/2008/03/24/187934.html
http://www.blogjava.net/xmatthew/articles/185673.html
现在应该是时候把它们统一整理出来了。
本手册分为两部分,用户使用手册和开发手册。
首先看怎样配置和运行spy2servers.
1. 下载
下载地址:
二进制程序
第三方类库下载,
第三方类库下载2 Jetty类库 放到lib目录下。
api-docs
源代码
下载 二进制程序,第三方类库下载,第三方类库下载2, Jetty类库。(因为上传的文件在小有限制,所以下载稍麻烦了点
)
下载后,把二进程序解压出来,再把第三方类库解压出来,放到lib目录下
用户使用手册部分
接下来配置spy2servers.xml文件 假如我们要配置一个acitvemq监控组件,一个tomcat监控组件,一个邮件报警通知组件和一个屏幕
报警输出组件。
下面是具体的配置文件(加注释)
<core-component> <!-- 配置核心组件,这个必须要有 -->
<simple-alertRule> <!-- 配置 消息报警规则-->
<channel> <!-- 从 ActiveMQJmxSpyComponent和TomcatJmxSpyComponent监控组件的消息都会流转到 PrintScreenAlertComponent-->
<from value="ActiveMQJmxSpyComponent"/>
<from value="TomcatJmxSpyComponent"/>
<to value="PrintScreenAlertComponent"/>
</channel>
<channel><!-- 从 TomcatJmxSpyComponent监控组件的消息都会流转到 EmailAlertComponent-->
<from value="TomcatJmxSpyComponent"/>
<to value="EmailAlertComponent" />
</channel>
</simple-alertRule>
</core-component>
<jmxService-component /> <!-- 开启jmx监控服务,其IP通过 java启动命令设置 默认为1616 -->
<!-- 定义 PrintScreenAlertComponent组件-->
<beans:bean class="org.xmatthew.spy2servers.component.alert.PrintScreenAlertComponent">
<beans:property name="name" value="PrintScreenAlertComponent"></beans:property>
</beans:bean>
<!--
host 监控的Jmx服务IP port监控的Jmx服务端口 detectInterval监控时间间隔 单秒是 毫秒 默认值为5000
queueSuspendNotifyTime 消息队列没有消息都监控的时候,超过这个时间开始报警
name 组件名称,会被<simple-alertRule>使用
-->
<activeMQJmxSpy host="127.0.0.1" port="1099" queueSuspendNotifyTime="2000" name="ActiveMQJmxSpyComponent">
<!-- 堆内存 监控方案 -->
<!-- memoryUsedPercentToAlert 设置临界值 内存使用的百分比 使用的内存值 / 最大内存值。 注如果该值设置, memoryUsedToAlert自动失效-->
<!-- alertAfterKeepTimeLive 设置临界值保持多久后,开始报警 单位秒。 注该值没有默认值,如果不认置则不会触发报警操作 -->
<heapMemorySpy memoryUsedPercentToAlert="90" alertAfterKeepTimeLive="10"/>
<!-- 非堆内存 监控方案 说明同上-->
<noneHeapMemorySpy memoryUsedPercentToAlert="90" alertAfterKeepTimeLive="10"/>
<!-- filesOpenedPercentToAlert 设置临界值 文件打开数百分比 开始的文件数 / 最大的文件数。 注如果该值设置, filesOpenedToAlert自动失效 -->
<!-- alertAfterKeepTimeLive 设置临界值保持多久后,开始报警 单位秒。 注该值没有默认值,如果不认置则不会触发报警操作 -->
<fileSpy filesOpenedPercentToAlert="90" alertAfterKeepTimeLive="10"/>
<destinationNamesToWatch> <!-- 监控的消息队列,如果为空,表示监控当前的所有队列 -->
<queue value="Test.Queue" />
<queue value="aaa" />
</destinationNamesToWatch>
<llegalIps> <!-- 监控的连接的合法IP,如果为空,表示放弃监控 -->
<ip value="127.0.0.1" />
<ip value="192.168.0.1" />
</llegalIps>
</activeMQJmxSpy>
<tomcatJmxSpy host="127.0.0.1" port="8060">
<dataSourcesSpy> <!-- 数据源监控方案 可以设置多个-->
<!-- numActivePercentToAlert 设置临界值 连接池连接数占用比例 使用的连接数 / 最大的连接数。 注如果该值设置, numActiveToAlert自动失效 -->
<!-- dataSourceName 监控的数据连接名称 -->
<dataSourceSpy numActivePercentToAlert="90" dataSourceName="jdbc/opendb" />
</dataSourcesSpy>
<webModuleSpy> <!-- Web Module 监控方案 -->
<!-- 监控的web module列表,如果模块状态为stop或undeploy则会报触发报警 -->
<module value="/" />
<module value="/jsp-examples" />
</webModuleSpy>
</tomcatJmxSpy>
<emailAlert>
<emails> <!-- 配置邮件通知列表 允许设置多个-->
<email value="ant_miracle@163.com" />
</emails> <!-- 设置邮件服务器配置信息 -->
<emailAccount server="smtp.163.com" serverPort="25" loginName="xxxx"
loginPwd="xxxx" sender="ant_miracle@163.com" sendNick="EmailAlertComponent"/>
</emailAlert>
<jetty> <!-- 配置内置服务器 -->
<connectors>
<nioConnector port="7758" /> <!-- using nio connector port is 7758 -->
</connectors>
<handlers>
<!-- 配置内置基于web 方式的平台组件监控 servlet context为 /admin -->
<servlet servletClass="org.xmatthew.spy2servers.component.web.ComponentsViewServlet" path="/admin" />
</handlers>
</jetty>
配置完成后,运行 spy2servers/bin目录。如果是windows平台,运行 start.bat,如果linux平台运行 start.sh
启动后,显示如下:
INFO Main - Server starting
INFO log - Logging to org.slf4j.impl.JCLLoggerAdapter(org.mortbay.log) via org.mortbay.log.Slf4jLog
INFO CoreComponent - plug component CoreComponent
INFO CoreComponent - plug component JmxServiceComponent
INFO CoreComponent - plug component PrintScreenAlertComponent
INFO CoreComponent - plug component ActiveMQJmxSpyComponent
INFO CoreComponent - plug component TomcatJmxSpyComponent
INFO CoreComponent - plug component EmailAlertComponent
INFO log - jetty-6.1.4
INFO log - Started SelectChannelConnector@0.0.0.0:7758
INFO NetShutdownHandlerCommand - Listening on port 8858
表示已经spy2servers已经启动成功
下面,我们可通过 jmx和web来查看运行情况
Jmx显示如下:
web显示界面
开发手册
开发手册已经更新,手册查看地址
Good Luck!
Yours Mathtew!
2008年4月24日
posted on 2008-10-28 12:54
x.matthew 阅读(3842)
评论(7) 编辑 收藏 所属分类:
Spy2Servers