Atop is an ASCII full-screen performance monitor, similar to the top command, but atop only shows the active system-resources and processes, and only shows the deviations since the previous interval. At regular intervals, it shows system-level activity related to the CPU, memory, swap, disks and network layers, and it shows for every active process the CPU utilization in system and user mode, the virtual and resident memory growth, priority, username, state, and exit code. The process level activity is also shown for processes which finished during the last interval, to get a complete overview about the consumers of things such as CPU time.
The command atop has some major advantages compared to other performance-monitors:
- Resource consumption by all processes
It shows the resource-consumption by all processes that were active during the interval, so also the resource-consumption by those processes that have finished during the interval.
- Utilization of all relevant resources
Obviously it shows system-level counters concerning cpu-, memory- and swap-utilization, however it also shows disk I/O and network utilization counters on system-level.
- Permanent logging of resource utilization
It is able to store raw counter-data in a file (compressed) for long-term analysis on system- and process-level. By default the daily logfiles are preserved for 28 days.
System activity reports can be generated from a logfile by using the command atopsar.
- Highlight critical resources
It is able to highlight resources that have (almost) reached a critical load by using colors for system statistics.
- Watch activity only
By default, it only shows system-resources and processes that were really active during the last interval (output related to resources or processes that were completely passive during the interval is by default suppressed).
- Watch deviations only
For the active system resources and processes, only the load during the last interval is shown (not the accumulated utilization since boot or process startup).
- Accumulated process activity per user
For each interval it is able to accumulate the resource consumption for all processes per user.
- Accumulated process activity per program
For each interval it is able to accumulate the resource consumption for all processes with the same name.
- Disk and network activity per process
In combination with optional kernel patches it shows process-level counters concerning disk I/O and network activity.
Atop in dafault mode:
Press ‘c’ to see command-line arguments by process:
Press ‘m’ to see memory-specific details by process:
Press ‘v’ to various kinds of details by process:
To monitor system load and write it into a file:
atop -M 5 60 > /home/pavs/test.mem
In this example the system load is being written to a file (test.mem), with an interval of 5 seconds during 1 minutes period with active processes sorted on memory consumption.
Here is a snippet of that log file: