(atop has been updated to 1.26. Get it HERE
Atop is an ASCII full-screen performance monitor that is capable of reporting the activity of all processes (even if processes have finished during the interval), daily logging of system and process activity for long-term analysis, highlighting overloaded system resources by using colors, etc. At regular intervals, it shows system-level activity related to the CPU, memory, swap, disks, and network layers, and for every active process it shows the CPU utilization, the memory growth, priority, username, state, and exit code.
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 atopsar command.
Highlight critical resources
It is able to highlight resources that have (almost) reached a critical load by using colors for system statistics.
Scalable window width
It is able to add or remove columns dynamically at the moment that you enlarge or shrink the width of your window.
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.
Network activity per process
In combination with optional kernel patches it shows process-level counters concerning network activity.
Various system activity reports reports can be generated by the command atopsar similar to the UNIX sar command. Colors and (on request) markers are used to highlight that the utilization of a resource is critical (red) or almost critical (cyan).
With the flag -c in the following example a report is generated about current CPU utilization of the system during 5 minutes (five times with an interval of sixty seconds):
$ atopsar -c 60 5