From 69890bc63e856ae264dd02fafd926a3d3821dac8 Mon Sep 17 00:00:00 2001 From: jaywcjlove <398188662@qq.com> Date: Sat, 21 Dec 2024 19:20:18 +0800 Subject: [PATCH] doc: update command/atop.md --- command/atop.md | 62 +++++++++++++++++++++++++++++++------------------ 1 file changed, 40 insertions(+), 22 deletions(-) diff --git a/command/atop.md b/command/atop.md index a33cf5ab340..0b5535f1f10 100644 --- a/command/atop.md +++ b/command/atop.md @@ -5,26 +5,32 @@ atop ## 补充说明 -[非内部程序,需要安装]它以一定的频率记录系统的运行状态,所采集的数据包含系统资源(CPU、内存、磁盘和网络)使用情况和进程运行情况,并能以日志文件的方式保存在磁盘中,服务器出现问题后,我们可获取相应的atop日志文件进行分析。atop是一款开源软件,我们可以从这里获得其[源码](https://github.com/Atoptool/atop)和[rpm安装包](https://pkgs.org/download/atop)。 +**atop命令** 是一款开源的系统监控工具,它以一定的频率记录系统的运行状态,采集的数据包含系统资源(CPU、内存、磁盘和网络)使用情况和进程运行情况,并能以日志文件的方式保存在磁盘中。服务器出现问题后,我们可获取相应的atop日志文件进行分析。atop是一款开源软件,我们可以从这里获得其[源码](https://github.com/Atoptool/atop)和[rpm安装包](https://pkgs.org/download/atop)。 ## 语法 ```shell -atop(选项)(参数) +atop [选项] [参数] ``` ## 说明 -**ATOP列**:该列显示了主机名、信息采样日期和时间点 +### ATOP列 -**PRC列**:该列显示进程整体运行情况 +该列显示了主机名、信息采样日期和时间点。 + +### PRC列 + +该列显示进程整体运行情况: - sys、usr字段分别指示进程在内核态和用户态的运行时间 - #proc字段指示进程总数 - #zombie字段指示僵尸进程的数量 - #exit字段指示atop采样周期期间退出的进程数量 -**CPU列**:该列显示CPU整体(即多核CPU作为一个整体CPU资源)的使用情况,我们知道CPU可被用于执行进程、处理中断,也可处于空闲状态(空闲状态分两种,一种是活动进程等待磁盘IO导致CPU空闲,另一种是完全空闲) +### CPU列 + +该列显示CPU整体(即多核CPU作为一个整体CPU资源)的使用情况: - sys、usr字段指示CPU被用于处理进程时,进程在内核态、用户态所占CPU的时间比例 - irq字段指示CPU被用于处理中断的时间比例 @@ -33,15 +39,21 @@ atop(选项)(参数) CPU列各个字段指示值相加结果为N00%,其中N为cpu核数。 -cpu列:该列显示某一核cpu的使用情况,各字段含义可参照CPU列,各字段值相加结果为100% +### cpu列 -**CPL列**:该列显示CPU负载情况 +该列显示某一核cpu的使用情况,各字段含义可参照CPU列,各字段值相加结果为100%。 + +### CPL列 + +该列显示CPU负载情况: - avg1、avg5和avg15字段:过去1分钟、5分钟和15分钟内运行队列中的平均进程数量 - csw字段指示上下文交换次数 - intr字段指示中断发生次数 -**MEM列**:该列指示内存的使用情况 +### MEM列 + +该列指示内存的使用情况: - tot字段指示物理内存总量 - free字段指示空闲内存的大小 @@ -49,43 +61,49 @@ cpu列:该列显示某一核cpu的使用情况,各字段含义可参照CPU - buff字段指示用于文件缓存的内存大小 - slab字段指示系统内核占用的内存大小 -**SWP列**:该列指示交换空间的使用情况 +### SWP列 + +该列指示交换空间的使用情况: - tot字段指示交换区总量 - free字段指示空闲交换空间大小 -**PAG列**:该列指示虚拟内存分页情况 +### PAG列 + +该列指示虚拟内存分页情况: + +- swin、swout字段:换入和换出内存页数 -swin、swout字段:换入和换出内存页数 +### DSK列 -**DSK列**:该列指示磁盘使用情况,每一个磁盘设备对应一列,如果有sdb设备,那么增多一列DSK信息 +该列指示磁盘使用情况,每一个磁盘设备对应一列,如果有sdb设备,那么增多一列DSK信息: - sda字段:磁盘设备标识 - busy字段:磁盘忙时比例 - read、write字段:读、写请求数量 -**NET列**:多列NET展示了网络状况,包括传输层(TCP和UDP)、IP层以及各活动的网口信息 +### NET列 -- XXXi 字段指示各层或活动网口收包数目 -- XXXo 字段指示各层或活动网口发包数目 +多列NET展示了网络状况,包括传输层(TCP和UDP)、IP层以及各活动的网口信息: -## atop日志 +- XXXi字段指示各层或活动网口收包数目 +- XXXo字段指示各层或活动网口发包数目 -每个时间点采样页面组合起来就形成了一个atop日志文件,我们可以使用"atop -r XXX"命令对日志文件进行查看。那以什么形式保存atop日志文件呢? +## atop日志 -对于atop日志文件的保存方式,我们可以这样: +每个时间点采样页面组合起来就形成了一个atop日志文件,我们可以使用`atop -r XXX`命令对日志文件进行查看。日志文件的保存方式如下: - 每天保存一个atop日志文件,该日志文件记录当天信息 -- 日志文件以"atop_YYYYMMDD"的方式命名 +- 日志文件以`atop_YYYYMMDD`的方式命名 - 设定日志失效期限,自动删除一段时间前的日志文件 -其实atop开发者已经提供了以上日志保存方式,相应的atop.daily脚本可以在源码目录下找到。在atop.daily脚本中,我们可以通过修改INTERVAL变量改变atop信息采样周期(默认为10分钟);通过修改以下命令中的数值改变日志保存天数(默认为28天): +atop开发者提供了以上日志保存方式,相应的`atop.daily`脚本可以在源码目录下找到。在`atop.daily`脚本中,我们可以通过修改`INTERVAL`变量改变atop信息采样周期(默认为10分钟);通过修改以下命令中的数值改变日志保存天数(默认为28天): ```shell (sleep 3; find $LOGPATH -name 'atop_*' -mtime +28 -exec rm {} \; )& ``` -最后,我们修改cron文件,每天凌晨执行atop.daily脚本: +最后,我们修改cron文件,每天凌晨执行`atop.daily`脚本: ```shell 0 0 * * * root /etc/cron.daily/atop.daily @@ -93,4 +111,4 @@ swin、swout字段:换入和换出内存页数 ## 相关资料 -- [官方手册](http://www.atoptool.nl/download/man_atop-1.pdf) +- [官方手册](http://www.atoptool.nl/download/man_atop-1.pdf) \ No newline at end of file