atop2.9.0源码安装与使用

下载链接

Atoptool.nl

 解压编译安装

tar zxvf atop-2.9.0.tar.gz
cd atop-2.9.0
make
make install

编译依赖 zlib-devel和ncurses-devel,可以提前使用yum安装下

 配置

2.9.0版本配置文件不再是/etc/sysconfig/atop,而是空文件/etc/default/atop,只需配置以下几项即可

LOGINTERVAL=15 # 监控周期,单位为秒,默认600s采集一次数据,建议修改为15s。
LOGGENERATIONS=7 # 日志保留时间,单位为天。默认保留时间28天,建议修改为7天,避免大量占用磁盘空间。
LOGPATH=/var/log/atop/ # 日志保存路径。默认路径为/var/log/atop/

我的配置文件如下

[root@localhost atop-2.9.0]# cat /etc/default/atop
LOGINTERVAL=15
LOGGENERATIONS=7

启动服务

systemctl enable --now atopacct
systemctl enable --now atop
systemctl enable --now atop-rotate.timer

后续改配置,重启atop可以用service atop restart

使用说明

打开文件

        atop -r /var/log/atop/atop_20230815

可操作以下指令

                                                       红色字体为常用指令

显示正在活动的数字:        

        g - 通用信息(默认)         

        m - 显示内存信息         

        d - 磁盘详细信息         

        n - 网络详情         

        s - 调度和线程组信息         

        v - 显示进程详细信息(ppid,用户/组,日期/时间,状态,exitcode)         

        c - 每个进程的完整命令行         

        o - 使用自己的输出行定义

按以下顺序对进程列表排序:         

        C -  cpu活动         

        M - 内存消耗        

        D - 磁盘活动         

        N - 网络活动         

        A - 最活跃的系统资源(自动模式)

累计数字:         

        u - 每个用户的总资源消耗         

        p - 每个程序的总资源消耗(即相同的进程名称)

选择:         

        U - 专注于特定用户名(正则表达式)         

        P - 专注于特定的进程名称(正则表达式)

屏幕处理:         

        ctrl+L  - 重绘屏幕         

        ctrl+F  - 显示进程列表中的下一页(转发)         

        ctrl+B  - 显示进程列表中的上一页(向后)

演示文稿(这些键显示在标题行中):         

        a - 显示所有进程(默认:活动进程)(切换)         

        f - 固定标题行的静态范围(切换)         

        1 - 显示平均每秒i.s.o.总值(切换) 原始文件查看:         

        t - 显示下一个采集数据         

        T - 显示上一个采集数据         

        b - 输入时间点,回车跳转         

        r - 回退到原始文件的开头)

其他命令:         

        i - 更改间隔计时器(0 =仅手动触发器)         

        t - 手动触发强制下一个样本         

        z - 暂停按钮以冻结当前样本(切换)         

        l - 每个CPU,磁盘和接口资源的限制行         

        k - 杀死进程(即发送信号)         

        V - 版本信息         

        ? - 帮助信息         

        h - 帮助信息         

        q - 退出这个程序

字段说明

ATOP 行:主机名、采样日期和时间点。

PRC 行:整个系统的性能情况。

        sys 过去采样周期期间所有的进程在内核态运行的时间总和

        usr 过去采样周期期间所有的进程在用户态的运行时间总和

        #proc 进程总数

        #tslpu 过去采样周期期间uninterruptible sleep状态的线程数(该进程不接收系统信号,不可被系统信号中断,包括kill -9 (SIGKILL 信号)。当一个进程向磁盘读写数据时,为了保证数据的一致性,在得到磁盘回复前,它是不能被其他进程或者中断打断的,这个时候的进程就处于不可中断状态。)

        #zombie 过去采样周期期间的僵尸进程数

        #exit 过去采样周期期间退出的进程数量

CPU 行:CPU使用情况。

        sys、user 处理进程时处于内核态、用户态的所占CPU的时间比例

        irq:CPU 被用于处理中断的时间比例。

        idle:CPU 处在完全空闲状态的时间比例。

        wait:CPU 处在“进程等待磁盘 IO 导致 CPU 空闲”状态的时间比例。

CPL 行:CPU 负载情况。

        avg1、avg5 和 avg15:过去1分钟、5分钟和15分钟内运行队列中的平均进程数量。

        csw:指示上下文交换次数。

        intr:指示中断发生次数。

MEM 行:内存的使用情况。

        tot:物理内存总量。

        free: 空闲内存总量

        cache :文件缓存用量

        buff:块设备缓存用量

        slab:系统内核占用的内存大小

        dirty: 需要写回磁盘的脏页用量,这部分内存使用已包含在cache中

SWP 行:交换空间的使用情况。

        tot:交换区总量。

        free:空闲交换空间大小。

PAG 行:虚拟内存分页情况

        swin 及 swout:换入和换出内存页数。

DSK 行:磁盘使用情况,每一个磁盘设备对应一列。如果有 sdb 设备,那么增加一行 DSK 信息。

        vda: 该列为磁盘设备名,每个设备拥有一行

        busy: 设备处理IO请求的时间占比

        read: 监控周期内读请求数

        write: 监控周期内写请求数

        MBr/s: 每秒读取的数据量

        MBw/s: 每秒写入的数据量

        avio: 单次读写请求需要的毫秒数

NET 行:多列 NET 展示了网络状况,包括传输层(TCP 和 UDP)、IP 层以及各活动的网口信息。

        XXXi:各层或活动网口收包数目。

        XXXo:各层或活动网口发包数目。

进程列表说明

  • PID: 进程ID

  • SYSCPU: 在内核态下使用CPU时间

  • USERCPU: 在用户态下使用CPU时间

  • VGROW: 过去一个监控周期内进程的虚拟内存空间增长,包括malloc()分配内存、使用共享内存以及free()释放内存造成的空间变化

  • RGROW: 过去一个监控周期内进程常驻内存空间(resident memory)增长, 即进程内存空间中驻留在物理内存中未被逐出到SWAP分区的部分。

  • RUID, EUID, SUID: 启动进程的UID

    • RUID: 登录时的用户ID

    • EUID: Effective Uid。通常EUID=RUID, setuid 或 sudo 等指令能以另一个用户身份执行命令,这个被“代理”的用户即为 Effective User。

  • EXC: 进程退出时的返回码

  • THR: 进程中的线程数

  • S: 进程状态,与ps命令的进程描述符相同

 导出文件

atop -r [file] [-b hh:mm] [-e hh:mm] [-flags] > atop.log

generic flags:
  -a  show or log all processes (i.s.o. active processes only)
  -R  calculate proportional set size (PSS) per process
  -P  generate parseable output for specified label(s)
  -L  alternate line length (default 80) in case of non-screen output
  -f  show fixed number of lines with system statistics
  -F  suppress sorting of system resources
  -G  suppress exited processes in output
  -l  show limited number of lines for certain resources
  -y  show individual threads
  -1  show average-per-second i.s.o. total values

  -x  no colors in case of high occupation
  -g  show general process-info (default)
  -m  show memory-related process-info
  -d  show disk-related process-info
  -n  show network-related process-info
  -s  show scheduling-related process-info
  -v  show various process-info (ppid, user/group, date/time)
  -c  show command line per process
  -o  show own defined process-info
  -u  show cumulated process-info per user
  -p  show cumulated process-info per program (i.e. same name)

  -C  sort processes in order of cpu-consumption (default)
  -M  sort processes in order of memory-consumption
  -D  sort processes in order of disk-activity
  -N  sort processes in order of network-activity
  -A  sort processes in order of most active resource (auto mode)

specific flags for raw logfiles:
  -w  write raw data to   file (compressed)
  -r  read  raw data from file (compressed)
      special file: y[y...] for yesterday (repeated)
  -S  finish atop automatically before midnight (i.s.o. #samples)
  -b  begin showing data from specified time
  -e  finish showing data after specified time

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值