如何安装“atop”来监控 Linux 系统进程的日志活动
Atop是一款全屏性能监视器,可以报告所有进程的活动,甚至包括已完成的进程。Atop 还允许您保存系统活动的每日日志。它可用于不同的目的,包括分析、调试、查明系统过载的原因等。
Atop 功能
- 检查所有进程的总体资源消耗
- 检查已利用了多少可用资源
- 记录资源利用率
- 检查各个线程的资源消耗
- 监控每个用户或每个程序的进程活动
- 监控每个进程的网络活动
Atop 的最新版本是2.1,包含以下功能
- 新的日志机制
- 新的关键标志
- 新字段(计数器)
- 错误修复
- 可配置颜色
在 Linux 上安装 Atop 监控工具
1.在本文中,我将向您展示如何在 RHEL/CentOS/Fedora 和基于 Debian/Ubuntu 的衍生产品等 Linux 系统上安装和配置 atop,以便您可以轻松监控系统进程。
在 RHEL/CentOS/Fedora 上
首先,您需要在 RHEL/CentOS/ 系统下启用 epel 存储库,以便安装 atop 监控工具。
启用 epel 存储库后,您可以简单地使用 yum 包管理器来安装顶部包,如下所示。
# yum install atop
或者,您可以使用以下wget命令直接下载 atop rpm 包,然后使用以下命令继续安装 atop。
------------------ For 32-bit Systems ------------------ # wget http://www.atoptool.nl/download/atop-2.1-1.i586.rpm # rpm -ivh atop-2.1-1.i586.rpm ------------------ For 64-bit Systems ------------------ # wget http://www.atoptool.nl/download/atop-2.1-1.x86_64.rpm # rpm -ivh atop-2.1-1.x86_64.rpm
在 Debian/Ubuntu
在基于 Debian 的系统下,可以使用 apt-get 命令从默认存储库安装 atop。
$ sudo apt-get install atop
2.安装atop后,确保atop随系统启动,运行以下命令:
------------------ Under RedHat based systems ------------------ # chkconfig --add atop # chkconfig atop on --level 235
$ sudo update-rc.d atop defaults [Under Debian based systems]
3.默认情况下,atop将每600秒记录一次所有活动。由于这可能不太有用,我将更改 atop 的配置,以便所有活动将以60秒的间隔记录。为此,请运行以下命令:
# sed 's/600/60/' /etc/atop/atop.daily -i [Under RedHat based systems] $ sudo sed 's/600/60/' /etc/default/atop -i [Under Debian based systems]
现在您已经安装并配置了 atop,下一个合乎逻辑的问题是“如何使用它? ”。实际上有几种方法:
4.如果您在终端中运行atop,您将获得类似 top 的界面,它将每 10 秒更新一次。
# atop
您应该会看到类似这样的屏幕:
您可以在atop中使用不同的键来按不同的标准对信息进行排序。以下是一些示例:
5.调度信息 -“s”
键 - 显示每个进程主线程的调度信息。还指示有多少进程处于“正在运行”状态:
# atop -s
6.内存消耗 -“m”
关键 - 显示所有正在运行的进程的内存相关信息VSIZE列表示总虚拟内存,RSIZE显示每个进程使用的驻留大小。
VGROW和RGROW表示上一个间隔内的增长情况。MEM列表示进程的驻留内存使用情况。
# atop -m
7.显示磁盘利用率 –“d”
关键 – 显示系统级别的磁盘活动(LVM和DSK列)。磁盘活动显示为读取/写入传输的数据量(RDDSK / WRDSK列)。
# atop -d
8.显示变量信息 -“v”
关键 - 此选项显示有关正在运行的进程的更多具体数据,如 uid、pid、gid、cpu 使用情况等:
# atop -v
9.显示进程命令 –“c”
键:
# atop -c
10.每个程序的累计 –“p”
键 – 此窗口中显示的信息是每个程序的累计信息。最右侧的列显示哪些程序处于活动状态(在间隔期间),最左侧的列显示它们产生了多少个进程。
# atop -p
11.每个用户的累计 -“u”
关键 - 此屏幕显示在最近的间隔内哪些用户处于活动状态,并指示每个用户运行了多少个进程。
# atop -u
12.网络使用情况 -“n”
键(需要netatop内核模块)显示每个进程的网络活动。
要安装和激活netatop内核模块,您需要从分销商的存储库在您的系统上安装以下依赖包。
# yum install kernel-devel zlib-devel [Under RedHat based systems] $ sudo apt-get install zlib1g-dev [Under Debian based systems]
接下来下载netatop tarball 并构建模块和守护进程。
# wget http://www.atoptool.nl/download/netatop-0.3.tar.gz # tar -xvf netatop-0.3.tar.gz # cd netatop-0.3
转到“ netatop-0.3 ”目录并运行以下命令来安装和构建模块。
# make # make install
netatop模块安装成功后,加载模块并启动守护进程。
# service netatop start OR $ sudo service netatop start
如果您想在启动后自动加载模块,请根据发行版运行以下命令之一。
# chkconfig --add netatop [Under RedHat based systems] $ sudo update-rc.d netatop defaults [Under Debian based systems]
现在使用密钥检查网络使用情况“n”
。
# atop -n
13. atop 保存其历史文件的目录。
# /var/log/atop/atop_YYYYMMDD
其中YYYY为年份,MM为月份,DD为当月的当前日期。例如:
atop_20150423
atop创建的所有文件都是二进制文件。它们不是日志或文本文件,只有 atop 可以读取它们。但请注意,Logrotate可以读取和旋转这些文件。
假设您希望查看从服务器时间05:05开始的今日日志。只需运行以下命令。
# atop -r -b 05:05 -l 1
atop选项相当多,您可能希望查看帮助菜单。为此,在atop窗口中,只需使用“ ? ”字符即可查看 atop 可以使用的参数列表。以下是最常用选项的列表:
我希望你觉得我的文章有用,并帮助你缩小或防止 Linux 系统出现问题。如果你有任何疑问或想了解atop的用法,请在下面的评论部分发表评论。