sar 的图形化

用了这么多小巧的监控工具,发现还是 sar 最强大,系统级别的 metric 是应有尽有,不管是实时的秒级监控还是历史数据,对分析近期(比如前一天或者前几天)出现的问题非常有帮助,这比不管是 Zabbix,Nagios 之类的「系统」要强大的多,典型的开相即用的好工具。默认是 10min 一次数据,这个不能完全满足我们的需求,目前我们有部分机器将 interval 缩小到了 1min 一次,并且将默认的 7d 的保存时间延长到了 90d。除此之外,就剩下出图了。
要是闲的蛋疼,可以使用 gnuplot 来把自己关心的所有 metric 全部画出来,但是这个比较麻烦,之前我自己用 gnuplut 玩了几天,对于 mission critical 场景不适用,有时候是等不及你把脚本一个一个写好再运行的。
后来找到了一个叫 Ksar 的工具,非常的方便,导入 sarxx 文件即可自动出图,到目前为止没有找到比他更方便更简单的方式了。唯一的不足是没有把 sar -A 列出来的所有 metric 都画出来,不过对于一般的问题,Ksar 出的图足够用了。Ksar 的启动图是不是很像 CS 中的场景。

对于昨天以及之前的数据,可以直接到 sa/sarxx 去取,但是对于只有 saxx(比如当天的数据或者由于某些原因 sarxxx 文件丢失了) 的文件,首先需要通过 sar 获得 sarxx  文件,然后需要将 12 小时制转换成 24h 制的才可以丢到 ksar 里面出图:
# LC_TIME="POSIX" sar -f sa30 -A  | tee sar30

注意LC_TIME 这个环境变量。另外,阿里在此基础上搞了个 tsar,个人不是很看好,原因见这里

 

ref:
http://honglus.blogspot.com/2011/02/graphing-sar-output.html
http://brablc.com/2011/06/06/how-to-change-sar-output-time-format-to-24/