共计 1264 个字符,预计需要花费 4 分钟才能阅读完成。
导读 | sysstat 工具包是一个 linux 下性能分析基本必备的,而通过里面的 sa1 工具可以实现将当前的性能数据记录到文件中,便于性能回溯。不过文本性的东西虽然能看到具体指标的值,不过总归没有图形化的东西来的直观。这里就结合 sysstatgraph 为例,对 sa1 的结果进行查看分析。 |
一、环境要求
一、环境要求
- 运行 sysstat 服务,并在 /var/log/sa 目录下有 sarXX 文件生成
- php5.2 以上版本
二、安装 sysstatgraph
1、下载 sysstat graph 包,当前最新版本为 0.4。将该包解压后,放到 web 目录下,这里以 apache httpd 为例,解包到 /var/www/html 目录。
2、编辑 config.php 文件,默认如下:
define('SYSSTATDATAPATH','/var/log/sa');
define('JSONSTRUCTUREFILENAME','data.json');
define('NETWORKINTERFACELIST',serialize(array('lo')));
// define('NETWORKINTERFACELIST',serialize(array('lo','eth0')));
第一行指定了 systat 生成文件的目录,所以建立一台分析服务器,将其他主机的 /var/log/sa 打包复制到该主机,将放到相应目录,并修改该路径。
第二行指生成的 json 文件,默认情况下,先读取该 json 文件,并将数据返回到 html 页面上。可以在命令下执行 php index.php,会输出并生成该文件。
第三行指定了查看网络流量的网卡接口,默认只配置了回环接口。想要使用其他接口,可以将 lo 修改为其他接口,如 eth0。有多个接口时,可以按第四行的方法进行配置。
3、通过 http://ip/index.php 访问,图示类以如下:
4、sysstat graph 查看的性能指标
通过该工具,可以查看以下性能指标
Tasks created (per second)
Context switches (per second)
CPU utilisation (User/System/IOwait)
Memory usage / Swap usage (megabytes)
Running/sleeping task count (threads)
System load averages
Network packets (received/transmitted per second) - per adapter
Network kilobytes (received/transmitted per second) - per adapter
三、后记
本来想通过 python 实现读取 sarXX 文件生,将数据通过 ajax 直接图示展现(和之前先写入 rrd 数据库,再通过 rrdtool 生成不同),在查阅资料时发现 php 版本的该软件包。这里记录下以备以后借鉴参考。
正文完
星哥玩云-微信公众号