淘寶內(nèi)部大量使用的開源系統(tǒng)監(jiān)控工具:Tsar
Tsar是淘寶開發(fā)的一個非常好用的系統(tǒng)監(jiān)控工具,在淘寶內(nèi)部大量使用,它不僅可以監(jiān)控CPU、IO、內(nèi)存、TCP等系統(tǒng)狀態(tài),也可以監(jiān)控Apache,Nginx/Tengine,Squid等服務(wù)器狀態(tài)。值得一提的是,Tsar 支持將數(shù)據(jù)存儲到 MySQL 中,也可以將數(shù)據(jù)發(fā)送到 Nagios 報警服務(wù)器。
㈠ 部署
?、?tsar由于定時采集數(shù)據(jù),需要crond服務(wù)正常。不依賴額外的庫
?、?獲得tsar源代碼:(svn checkout http://code.taobao.org/svn/tsar/trunk/ tsar)
?、?編譯安裝tsar
- 進入tsar的根文件夾
- 運行 ./configure,注意tsar并不支持prefix
- 運行 make 進行編譯
- 運行 make install 進行安裝
㈡ 常用例子
比如、以1秒鐘為間隔,實時打印tsar的概述數(shù)據(jù)
- [root@localhost tsar-2.1.0]# tsar -i 1 -l
- Time ---cpu-- ---mem-- ---tcp-- -----traffic---- --hda--- ---load-
- Time util util retran pktin pktout util load1
- 14/04-13:05 98.0 14.9 0.0 2.0 0.0 32.8 0.4
- 14/04-13:05 85.1 14.6 0.0 2.0 0.0 15.6 0.4
- 14/04-13:05 0.0 14.6 0.0 10.0 2.0 0.0 0.4
- 14/04-13:05 4.0 14.6 0.0 2.0 0.0 1.6 0.4
- 14/04-13:05 5.0 14.6 0.0 2.0 0.0 0.4 0.3
- 14/04-13:05 7.0 14.6 0.0 0.0 0.0 0.8 0.3
- 14/04-13:05 2.0 14.6 0.0 0.0 0.0 0.0 0.3
- 14/04-13:05 1.0 14.6 0.0 0.0 2.0 0.0 0.3
再比如:
- tsar 顯示1天內(nèi)的歷史匯總(summury)信息,以默認5分鐘為間隔
- tsar --cpu -i 1 顯示一天內(nèi)cpu的歷史信息,以1分鐘為間隔
- tsar --live --mem -i 2 以2秒鐘為間隔,實時打印mem的數(shù)據(jù)。
- tsar --cpu --mem -i 1 顯示一天內(nèi)的cpu和內(nèi)存歷史數(shù)據(jù),以1分鐘為間隔