55
66## 补充说明
77
8- [ 非内部程序,需要安装 ] 它以一定的频率记录系统的运行状态,所采集的数据包含系统资源 (CPU、内存、磁盘和网络)使用情况和进程运行情况,并能以日志文件的方式保存在磁盘中, 服务器出现问题后,我们可获取相应的atop日志文件进行分析。atop是一款开源软件,我们可以从这里获得其[ 源码] ( https://github.com/Atoptool/atop ) 和[ rpm安装包] ( https://pkgs.org/download/atop ) 。
8+ ** atop命令 ** 是一款开源的系统监控工具, 它以一定的频率记录系统的运行状态,采集的数据包含系统资源 (CPU、内存、磁盘和网络)使用情况和进程运行情况,并能以日志文件的方式保存在磁盘中。 服务器出现问题后,我们可获取相应的atop日志文件进行分析。atop是一款开源软件,我们可以从这里获得其[ 源码] ( https://github.com/Atoptool/atop ) 和[ rpm安装包] ( https://pkgs.org/download/atop ) 。
99
1010## 语法
1111
1212``` shell
13- atop(选项)(参数)
13+ atop [选项] [参数]
1414```
1515
1616## 说明
1717
18- ** ATOP列** :该列显示了主机名、信息采样日期和时间点
18+ ### ATOP列
1919
20- ** PRC列** :该列显示进程整体运行情况
20+ 该列显示了主机名、信息采样日期和时间点。
21+
22+ ### PRC列
23+
24+ 该列显示进程整体运行情况:
2125
2226- sys、usr字段分别指示进程在内核态和用户态的运行时间
2327- #proc字段指示进程总数
2428- #zombie字段指示僵尸进程的数量
2529- #exit字段指示atop采样周期期间退出的进程数量
2630
27- ** CPU列** :该列显示CPU整体(即多核CPU作为一个整体CPU资源)的使用情况,我们知道CPU可被用于执行进程、处理中断,也可处于空闲状态(空闲状态分两种,一种是活动进程等待磁盘IO导致CPU空闲,另一种是完全空闲)
31+ ### CPU列
32+
33+ 该列显示CPU整体(即多核CPU作为一个整体CPU资源)的使用情况:
2834
2935- sys、usr字段指示CPU被用于处理进程时,进程在内核态、用户态所占CPU的时间比例
3036- irq字段指示CPU被用于处理中断的时间比例
@@ -33,64 +39,76 @@ atop(选项)(参数)
3339
3440CPU列各个字段指示值相加结果为N00%,其中N为cpu核数。
3541
36- cpu列:该列显示某一核cpu的使用情况,各字段含义可参照CPU列,各字段值相加结果为100%
42+ ### cpu列
3743
38- ** CPL列** :该列显示CPU负载情况
44+ 该列显示某一核cpu的使用情况,各字段含义可参照CPU列,各字段值相加结果为100%。
45+
46+ ### CPL列
47+
48+ 该列显示CPU负载情况:
3949
4050- avg1、avg5和avg15字段:过去1分钟、5分钟和15分钟内运行队列中的平均进程数量
4151- csw字段指示上下文交换次数
4252- intr字段指示中断发生次数
4353
44- ** MEM列** :该列指示内存的使用情况
54+ ### MEM列
55+
56+ 该列指示内存的使用情况:
4557
4658- tot字段指示物理内存总量
4759- free字段指示空闲内存的大小
4860- cache字段指示用于页缓存的内存大小
4961- buff字段指示用于文件缓存的内存大小
5062- slab字段指示系统内核占用的内存大小
5163
52- ** SWP列** :该列指示交换空间的使用情况
64+ ### SWP列
65+
66+ 该列指示交换空间的使用情况:
5367
5468- tot字段指示交换区总量
5569- free字段指示空闲交换空间大小
5670
57- ** PAG列** :该列指示虚拟内存分页情况
71+ ### PAG列
72+
73+ 该列指示虚拟内存分页情况:
74+
75+ - swin、swout字段:换入和换出内存页数
5876
59- swin、swout字段:换入和换出内存页数
77+ ### DSK列
6078
61- ** DSK列 ** : 该列指示磁盘使用情况,每一个磁盘设备对应一列,如果有sdb设备,那么增多一列DSK信息
79+ 该列指示磁盘使用情况,每一个磁盘设备对应一列,如果有sdb设备,那么增多一列DSK信息:
6280
6381- sda字段:磁盘设备标识
6482- busy字段:磁盘忙时比例
6583- read、write字段:读、写请求数量
6684
67- ** NET列** :多列NET展示了网络状况,包括传输层(TCP和UDP)、IP层以及各活动的网口信息
85+ ### NET列
6886
69- - XXXi 字段指示各层或活动网口收包数目
70- - XXXo 字段指示各层或活动网口发包数目
87+ 多列NET展示了网络状况,包括传输层(TCP和UDP)、IP层以及各活动的网口信息:
7188
72- ## atop日志
89+ - XXXi字段指示各层或活动网口收包数目
90+ - XXXo字段指示各层或活动网口发包数目
7391
74- 每个时间点采样页面组合起来就形成了一个atop日志文件,我们可以使用"atop -r XXX"命令对日志文件进行查看。那以什么形式保存atop日志文件呢?
92+ ## atop日志
7593
76- 对于atop日志文件的保存方式,我们可以这样 :
94+ 每个时间点采样页面组合起来就形成了一个atop日志文件,我们可以使用 ` atop -r XXX ` 命令对日志文件进行查看。日志文件的保存方式如下 :
7795
7896- 每天保存一个atop日志文件,该日志文件记录当天信息
79- - 日志文件以" atop_YYYYMMDD" 的方式命名
97+ - 日志文件以` atop_YYYYMMDD ` 的方式命名
8098- 设定日志失效期限,自动删除一段时间前的日志文件
8199
82- 其实atop开发者已经提供了以上日志保存方式,相应的atop.daily脚本可以在源码目录下找到。在atop.daily脚本中,我们可以通过修改INTERVAL变量改变atop信息采样周期 (默认为10分钟);通过修改以下命令中的数值改变日志保存天数(默认为28天):
100+ atop开发者提供了以上日志保存方式,相应的 ` atop.daily ` 脚本可以在源码目录下找到。在 ` atop.daily ` 脚本中,我们可以通过修改 ` INTERVAL ` 变量改变atop信息采样周期 (默认为10分钟);通过修改以下命令中的数值改变日志保存天数(默认为28天):
83101
84102``` shell
85103(sleep 3; find $LOGPATH -name ' atop_*' -mtime +28 -exec rm {} \; )&
86104```
87105
88- 最后,我们修改cron文件,每天凌晨执行atop.daily脚本 :
106+ 最后,我们修改cron文件,每天凌晨执行 ` atop.daily ` 脚本 :
89107
90108``` shell
911090 0 * * * root /etc/cron.daily/atop.daily
92110```
93111
94112## 相关资料
95113
96- - [ 官方手册] ( http://www.atoptool.nl/download/man_atop-1.pdf )
114+ - [ 官方手册] ( http://www.atoptool.nl/download/man_atop-1.pdf )
0 commit comments