监控Linux系统资源与进程的工具
atop命令 是一款开源的系统监控工具,它以一定的频率记录系统的运行状态,采集的数据包含系统资源(CPU、内存、磁盘和网络)使用情况和进程运行情况,并能以日志文件的方式保存在磁盘中。服务器出现问题后,我们可获取相应的atop日志文件进行分析。atop是一款开源软件,我们可以从这里获得其源码和rpm安装包。
atop [选项] [参数]
该列显示了主机名、信息采样日期和时间点。
该列显示进程整体运行情况:
该列显示CPU整体(即多核CPU作为一个整体CPU资源)的使用情况:
CPU列各个字段指示值相加结果为N00%,其中N为cpu核数。
该列显示某一核cpu的使用情况,各字段含义可参照CPU列,各字段值相加结果为100%。
该列显示CPU负载情况:
该列指示内存的使用情况:
该列指示交换空间的使用情况:
该列指示虚拟内存分页情况:
该列指示磁盘使用情况,每一个磁盘设备对应一列,如果有sdb设备,那么增多一列DSK信息:
多列NET展示了网络状况,包括传输层(TCP和UDP)、IP层以及各活动的网口信息:
每个时间点采样页面组合起来就形成了一个atop日志文件,我们可以使用atop -r XXX
命令对日志文件进行查看。日志文件的保存方式如下:
atop_YYYYMMDD
的方式命名atop开发者提供了以上日志保存方式,相应的atop.daily
脚本可以在源码目录下找到。在atop.daily
脚本中,我们可以通过修改INTERVAL
变量改变atop信息采样周期(默认为10分钟);通过修改以下命令中的数值改变日志保存天数(默认为28天):
(sleep 3; find $LOGPATH -name 'atop_*' -mtime +28 -exec rm {} \; )&
最后,我们修改cron文件,每天凌晨执行atop.daily
脚本:
0 0 * * * root /etc/cron.daily/atop.daily