spy2servers已經發布有一段時間了,部分的使用手法都發布在不同的文章中:
http://www.tkk7.com/xmatthew/archive/2008/04/24/194894.html
http://www.tkk7.com/xmatthew/archive/2008/04/21/194349.html
http://www.tkk7.com/xmatthew/archive/2008/03/24/187934.html
http://www.tkk7.com/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 閱讀(3857)
評論(7) 編輯 收藏 所屬分類:
Spy2Servers