atop命令详解
liebian365 2024-11-20 18:27 20 浏览 0 评论
atop 命令安装:
atop 官网:ATopTool.nl
-bash: atop: command not found #Debianapt-get install atop #Ubuntuapt-get install atop #Alpineapk add atop #Arch Linuxpacman -S atop #Kali Linuxapt-get install atop #Fedoradnf install atop #Raspbianapt-get install atop #Dockerdocker run cmd.cat/atop atop
atop 命令补充说明:
它以一定的频率记录系统的运行状态,所采集的数据包含系统资源(CPU、内存、磁盘和网络)使用情况和进程运行情况,并能以日志文件的方式保存在磁盘中,服务器出现问题后,我们可获取相应的atop日志文件进行分析。atop是一款开源软件,我们可以从这里获得其源码和rpm安装包。
atop 命令语法:
atop(选项)(参数)
atop 命令选项:
#atop 进程视图: g —— 默认输出m —— 内存相关输出d —— 磁盘相关输出n —— 网络相关输出c —— 命令行输出u 查看对应的用户资源使用情况p 显示所有每个进程的所有信息占用情况(disk、mem、io)P(大写) 正则匹配,显示所有匹配到的进程 退出atop:q
atop 命令运行效果
ATOP - Dev_Test 2018/12/18 15:59:32 --------- 138d2h18m47s elapsedPRC | sys 42d19h | user 143h00m | #proc 340 | #zombie 0 | #exit 0 |CPU | sys 33% | user 13% | irq 0% | idle 737% | wait 15% |cpu | sys 10% | user 0% | irq 0% | idle 89% | cpu003 w 0% |cpu | sys 2% | user 3% | irq 0% | idle 84% | cpu000 w 10% |cpu | sys 3% | user 2% | irq 0% | idle 93% | cpu001 w 1% |cpu | sys 5% | user 1% | irq 0% | idle 93% | cpu002 w 1% |cpu | sys 4% | user 1% | irq 0% | idle 95% | cpu007 w 0% |cpu | sys 4% | user 1% | irq 0% | idle 95% | cpu006 w 0% |cpu | sys 2% | user 2% | irq 0% | idle 93% | cpu004 w 2% |cpu | sys 3% | user 1% | irq 0% | idle 95% | cpu005 w 0% |CPL | avg1 0.58 | avg5 0.73 | avg15 0.72 | csw 482214e5 | intr 18905e6 |MEM | tot 15.5G | free 731.8M | cache 2.0G | buff 37.9M | slab 196.2M |SWP | tot 8.0G | free 4.1G | | vmcom 16.3G | vmlim 15.7G |PAG | scan 16655e6 | steal 1211e7 | stall 2524e3 | swin 27736e3 | swout 2464e4 |DSK | sda | busy 12% | read 23631e4 | write 1739e5 | avio 3.54 ms |NET | transport | tcpi 17705e6 | tcpo 15930e6 | udpi 1932377 | udpo 3568950 |NET | network | ipi 177079e5 | ipo 159353e5 | ipfrw 0 | deliv 1771e7 |NET | eth0 7% | pcki 36801e5 | pcko 77944e5 | si 177 Kbps | so 7043 Kbps |NET | vnet0 0% | pcki 3709287 | pcko 6439543 | si 0 Kbps | so 0 Kbps |NET | br0 ---- | pcki 36786e5 | pcko 66666e5 | si 132 Kbps | so 6982 Kbps |NET | lo ---- | pcki 14041e6 | pcko 14041e6 | si 1224 Kbps | so 1224 Kbps | *** system and process activity since boot *** PID SYSCPU USRCPU VGROW RGROW RDDSK WRDSK ST EXC S CPUNR CPU CMD 1/9 126 990h07m 0.00s 0K 0K 0K 0K N- - S 2 30% ksmd15338 347m43s 80h24m 10.8G 6.9G 4.6T 345.1G N- - S 0 3% mysqld16879 529m17s 52h12m 3.6G 2260K 196.3G 76.8G N- - S 6 2% qemu-kvm 2871 724m50s 455m02s 4.0G 2.9G 4.3G 46.3T N- - S 6 1% redis-server 722 114m15s 0.00s 0K 0K 0K 15.9T N- - S 0 0% jbd2/sda2-8 125 113m06s 0.00s 0K 0K 0K 2.1T N- - S 5 0% kswapd0 4871 35m39s 41m40s 742.2M 128.7M 571.6M 173.4G N- - S 6 0% redis-server 2911 38m32s 27m52s 162.2M 25536K 17820K 16K N- - S 5 0% redis-server 2901 38m48s 27m34s 138.2M 4100K 2596K 2340K N- - S 6 0% redis-server 3008 38m18s 27m58s 134.2M 2996K 788K 12K N- - S 3 0% redis-server 997 64m04s 0.00s 0K 0K 435.9M 1.6T N- - S 0 0% flush-8:028446 37m54s 3m13s 16084K 1256K 0K 0K N- - S 1 0% zabbix_agentd 82 32m53s 0.00s 0K 0K 0K 0K N- - S 0 0% kblockd/0 36 20m08s 0.00s 0K 0K 0K 0K N- - S 1 0% events/1 35 16m35s 0.00s 0K 0K 0K 0K N- - S 0 0% events/0 39 10m14s 0.00s 0K 0K 0K 0K N- - S 4 0% events/4 2713 5m03s 2m24s 106.0M 1104K 5.4G 24K N- - S 0 0% ksmtuned 40 6m11s 0.00s 0K 0K 0K 0K N- - S 5 0% events/5 1910 1m45s 4m20s 221.8M 1072K 8K 4K N- - S 6 0% php-fpm 37 5m57s 0.00s 0K 0K 0K 0K N- - S 2 0% events/2 42 5m44s 0.00s 0K 0K 0K 0K N- - S 7 0% events/7 41 5m25s 0.00s 0K 0K 0K 0K N- - S 6 0% events/6 2917 83.81s 3m26s 352.3M 28260K 1520K 0K N- - S 5 0% memcached 38 4m21s 0.00s 0K 0K 0K 0K N- - S 3 0% events/328450 1m54s 91.87s 16096K 872K 1.2G 8008K N- - S 0 0% zabbix_agentd 1656 1m57s 43.73s 93156K 704K 37920K 4.1G N- - S 3 0% auditd 2735 2m11s 16.52s 114.2M 1020K 12.8T 4.7T N- - S 0 0% crond28447 88.15s 30.48s 16084K 976K 4.5G 8K N- - S 0 0% zabbix_agentd28449 87.57s 30.60s 16084K 972K 4.7G 16K N- - S 0 0% zabbix_agentd28448 86.63s 30.23s 16084K 1004K 4.5G 16K N- - S 0 0% zabbix_agentd 6287 6.76s 1m49s 286.6M 9092K 124K 0K N- - S 4 0% php722093 46.71s 62.16s 208.2M 21520K 39388K 380K N- - S 0 0% php-fpm22079 45.72s 62.51s 208.4M 22592K 44364K 10648K N- - S 2 0% php-fpm22083 44.79s 59.30s 208.1M 21528K 42528K 444K N- - S 0 0% php-fpm22098 44.42s 57.63s 208.2M 22600K 41828K 7200K N- - S 0 0% php-fpm22090 42.89s 56.97s 208.2M 20752K 48004K 392K N- - S 0 0% php-fpm22087 44.15s 54.94s 208.1M 22808K 46068K 19560K N- - S 1 0% php-fpm22096 43.09s 52.90s 208.2M 21952K 32864K 576K N- - S 0 0% php-fpm26832 40.60s 55.15s 208.2M 22376K 30436K 396K N- - S 0 0% php-fpm22086 42.86s 52.70s 208.2M 21200K 33388K 392K N- - S 0 0% php-fpm 3 93.17s 0.00s 0K 0K 0K 0K N- - S 0 0% migration/022091 38.75s 53.28s 208.2M 21860K 37836K 432K N- - S 0 0% php-fpm
ATOP列:该列显示了主机名、信息采样日期和时间点
PRC列:该列显示进程整体运行情况
- sys、usr字段分别指示进程在内核态和用户态的运行时间
- #proc字段指示进程总数
- #zombie字段指示僵死进程的数量
- #exit字段指示atop采样周期期间退出的进程数量
CPU列:该列显示CPU整体(即多核CPU作为一个整体CPU资源)的使用情况,我们知道CPU可被用于执行进程、处理中断,也可处于空闲状态(空闲状态分两种,一种是活动进程等待磁盘IO导致CPU空闲,另一种是完全空闲)
- sys、usr字段指示CPU被用于处理进程时,进程在内核态、用户态所占CPU的时间比例
- irq字段指示CPU被用于处理中断的时间比例
- idle字段指示CPU处在完全空闲状态的时间比例
- wait字段指示CPU处在“进程等待磁盘IO导致CPU空闲”状态的时间比例
CPU列各个字段指示值相加结果为N00%,其中N为cpu核数。
cpu列:该列显示某一核cpu的使用情况,各字段含义可参照CPU列,各字段值相加结果为100%
CPL列:该列显示CPU负载情况
- avg1、avg5和avg15字段:过去1分钟、5分钟和15分钟内运行队列中的平均进程数量
- csw字段指示上下文交换次数
- intr字段指示中断发生次数
MEM列:该列指示内存的使用情况
- tot字段指示物理内存总量
- free字段指示空闲内存的大小
- cache字段指示用于页缓存的内存大小
- buff字段指示用于文件缓存的内存大小
- slab字段指示系统内核占用的内存大小
SWP列:该列指示交换空间的使用情况
- tot字段指示交换区总量
- free字段指示空闲交换空间大小
PAG列:该列指示虚拟内存分页情况
swin、swout字段:换入和换出内存页数
DSK列:该列指示磁盘使用情况,每一个磁盘设备对应一列,如果有sdb设备,那么增多一列DSK信息
- sda字段:磁盘设备标识
- busy字段:磁盘忙时比例
- read、write字段:读、写请求数量
NET列:多列NET展示了网络状况,包括传输层(TCP和UDP)、IP层以及各活动的网口信息
- XXXi 字段指示各层或活动网口收包数目
- XXXo 字段指示各层或活动网口发包数目
atop 日志:
每个时间点采样页面组合起来就形成了一个atop日志文件,我们可以使用"atop -r XXX"命令对日志文件进行查看。那以什么形式保存atop日志文件呢?
对于atop日志文件的保存方式,我们可以这样:
- 每天保存一个atop日志文件,该日志文件记录当天信息
- 日志文件以"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
相关推荐
- “版本末期”了?下周平衡补丁!国服最强5套牌!上分首选
-
明天,酒馆战棋就将迎来大更新,也聊了很多天战棋相关的内容了,趁此机会,给兄弟们穿插一篇构筑模式的卡组推荐!老规矩,我们先来看10职业胜率。目前10职业胜率排名与一周前基本类似,没有太多的变化。平衡补丁...
- VS2017 C++ 程序报错“error C2065:“M_PI”: 未声明的标识符"
-
首先,程序中头文件的选择,要选择头文件,在文件中是没有对M_PI的定义的。选择:项目——>”XXX属性"——>配置属性——>C/C++——>预处理器——>预处理器定义,...
- 东营交警实名曝光一批酒驾人员名单 88人受处罚
-
齐鲁网·闪电新闻5月24日讯酒后驾驶是对自己和他人生命安全极不负责的行为,为守护大家的平安出行路,东营交警一直将酒驾作为重点打击对象。5月23日,东营交警公布最新一批饮酒、醉酒名单。对以下驾驶人醉酒...
- Qt界面——搭配QCustomPlot(qt platform)
-
这是我第一个使用QCustomPlot控件的上位机,通过串口精确的5ms发送一次数据,再将读取的数据绘制到图表中。界面方面,尝试卡片式设计,外加QSS简单的配了个色。QCustomPlot官网:Qt...
- 大话西游2分享赢取种族坐骑手办!PK趣闻录由你书写
-
老友相聚,仗剑江湖!《大话西游2》2021全民PK季4月激燃打响,各PK玩法鏖战齐开,零门槛参与热情高涨。PK季期间,不仅各种玩法奖励丰厚,参与PK趣闻录活动,投稿自己在PK季遇到的趣事,还有机会带走...
- 测试谷歌VS Code AI 编程插件 Gemini Code Assist
-
用ClaudeSonnet3.7的天气测试编码,让谷歌VSCodeAI编程插件GeminiCodeAssist自动编程。生成的文件在浏览器中的效果如下:(附源代码)VSCode...
- 顾爷想知道第4.5期 国服便利性到底需优化啥?
-
前段时间DNF国服推出了名为“阿拉德B计划”的系列改版计划,截至目前我们已经看到了两项实装。不过关于便利性上,国服似乎还有很多路要走。自从顾爷回归DNF以来,几乎每天都在跟我抱怨关于DNF里面各种各样...
- 掌握Visual Studio项目配置【基础篇】
-
1.前言VisualStudio是Windows上最常用的C++集成开发环境之一,简称VS。VS功能十分强大,对应的,其配置系统较为复杂。不管是对于初学者还是有一定开发经验的开发者来说,捋清楚VS...
- 还嫌LED驱动设计套路深?那就来看看这篇文章吧
-
随着LED在各个领域的不同应用需求,LED驱动电路也在不断进步和发展。本文从LED的特性入手,推导出适合LED的电源驱动类型,再进一步介绍各类LED驱动设计。设计必读:LED四个关键特性特性一:非线...
- Visual Studio Community 2022(VS2022)安装图文方法
-
直接上步骤:1,首先可以下载安装一个VisualStudio安装器,叫做VisualStudioinstaller。这个安装文件很小,很快就安装完成了。2,打开VisualStudioins...
- Qt添加MSVC构建套件的方法(qt添加c++11)
-
前言有些时候,在Windows下因为某些需求需要使用MSVC编译器对程序进行编译,假设我们安装Qt的时候又只是安装了MingW构建套件,那么此时我们该如何给现有的Qt添加一个MSVC构建套件呢?本文以...
- Qt为什么站稳c++GUI的top1(qt c)
-
为什么现在QT越来越成为c++界面编程的第一选择,从事QT编程多年,在这之前做C++界面都是基于MFC。当时为什么会从MFC转到QT?主要原因是MFC开发界面想做得好看一些十分困难,引用第三方基于MF...
- qt开发IDE应该选择VS还是qt creator
-
如果一个公司选择了qt来开发自己的产品,在面临IDE的选择时会出现vs或者qtcreator,选择qt的IDE需要结合产品需求、部署平台、项目定位、程序猿本身和公司战略,因为大的软件产品需要明确IDE...
- Qt 5.14.2超详细安装教程,不会来打我
-
Qt简介Qt(官方发音[kju:t],音同cute)是一个跨平台的C++开库,主要用来开发图形用户界面(GraphicalUserInterface,GUI)程序。Qt是纯C++开...
- Cygwin配置与使用(四)——VI字体和颜色的配置
-
简介:VI的操作模式,基本上VI可以分为三种状态,分别是命令模式(commandmode)、插入模式(Insertmode)和底行模式(lastlinemode),各模式的功能区分如下:1)...
你 发表评论:
欢迎- 一周热门
- 最近发表
-
- “版本末期”了?下周平衡补丁!国服最强5套牌!上分首选
- VS2017 C++ 程序报错“error C2065:“M_PI”: 未声明的标识符"
- 东营交警实名曝光一批酒驾人员名单 88人受处罚
- Qt界面——搭配QCustomPlot(qt platform)
- 大话西游2分享赢取种族坐骑手办!PK趣闻录由你书写
- 测试谷歌VS Code AI 编程插件 Gemini Code Assist
- 顾爷想知道第4.5期 国服便利性到底需优化啥?
- 掌握Visual Studio项目配置【基础篇】
- 还嫌LED驱动设计套路深?那就来看看这篇文章吧
- Visual Studio Community 2022(VS2022)安装图文方法
- 标签列表
-
- wireshark怎么抓包 (75)
- qt sleep (64)
- cs1.6指令代码大全 (55)
- factory-method (60)
- sqlite3_bind_blob (52)
- hibernate update (63)
- c++ base64 (70)
- nc 命令 (52)
- wm_close (51)
- epollin (51)
- sqlca.sqlcode (57)
- lua ipairs (60)
- tv_usec (64)
- 命令行进入文件夹 (53)
- postgresql array (57)
- statfs函数 (57)
- .project文件 (54)
- lua require (56)
- for_each (67)
- c#工厂模式 (57)
- wxsqlite3 (66)
- dmesg -c (58)
- fopen参数 (53)
- tar -zxvf -c (55)
- 速递查询 (52)