I am familiar with several commands like top, htop, free, etc. However, is there a command to see the peak/burst memory usage of the entire server (not individual processes) over, say, the last 30 days/24 hours/etc.?

  • The only solution I am aware of is to use a trending application stack, such as StatsD + Graphite.
    – jayhendren
    Dec 21, 2016 at 20:04

2 Answers 2


You'll need to collect these metrics.

Sysstat may do this assuming you can define a couple crontabs.

Note that tools such as Munin or Collectd are a couple popular solutions that would allow you to do this (while I wouldn't recommend Statsd/Graphite to newcomers, if at all).

Monitoring solutions such as Cacti, Zabbix, Nagios (with perfdata, such as Icinga or Shinken), or SNMP-based would also allow you to generate graphs from collected metrics.

We could also mention Netdata: even though that one won't keep histories, it's still pretty helpful graphing instantaneous resources usages.


atop tracks historical metrics and is command line based.

It's packaged in Debian/Ubuntu and Fedora.


  • 1
    It's not obvious how to use this atop tool to track memory usage OVER TIME. It just shows a big list of processes and their current memory use. Jan 21 at 8:09

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .