| tsar是淘宝自己开发的一个采集工具(类似于sar工具),主要用来收集服务器的系统信息(如cpu,io,mem,tcp等),以及应用数据(如squid haproxy nginx等)。 收集到的数据存储在磁盘上,可以随时查询历史信息,输出方式灵活多样,另外支持将数据存储到mysql中,也可以将数据发送到nagios报警服务器。 tsar在展示数据时,可以指定模块,并且可以对多条信息的数据进行merge输出,带-live参数可以输出秒级的实时信息。 tsar是基于模块化设计的程序,程序有两部分组成:框架和模块。框架程序源代码主要在src目录,而模块源代码主要在modules目录中。
 框架提供对配置文件的解析,模块的加载,命令行参数的解析,应用模块的接口对模块原始数据的解析与输出。 模块提供接口给框架调用。
 tsar依赖与cron每分钟执行采集数据,因此它需要系统安装并启用crond,安装后,tsar每分钟会执行tsar –cron来定时采集信息,并且记录到原始日志文件。
 语法格式:tsar [参数] 常用参数: | -check | 查看最后一次的采集数据 |  | --check/-C | 查看最后一次tsar的提醒信息 |  | --cron/-c | 使用crond模式来进行tsar监控 |  | --interval/-i | 指明tsar的间隔时间,默认单位分钟,带上--live参数则单位是秒 |  | --list/-L | 列出启用的模块 |  | --live/-l | 查看实时数据 |  | --file/-f | 指定输入文件 |  | --ndays/-n | 指定过去的数据天数,默认1天 |  | --date/-d | 指定日期,YYYYMMDD或者n代表n天前 |  | --detail/-D | 能够指定查看主要字段还是模块的所有字段 |  | --cpu | 列出cpu相关的监控计数 |  | --tcp | TCP 协议 IPV4的使用情况 |  | --mem | 物理内存的使用情况 | 
参考实例 cpu监控: [root@linuxcool ~]# tsar --cpu 监控虚存和load情况: [root@linuxcool ~]# tsar --swap --load 列出系统内存的使用情况: [root@linuxcool ~]# tsar --mem 监控系统IO情况: [root@linuxcool ~]# tsar --io 历史数据回溯: [root@linuxcool ~]# tsar -d 2 -i 1 |