MenuMeters is a set of CPU, memory, disk, and network monitoring tools for MacOS X. Although there are numerous other programs which do the same thing, none had quite the feature set I was looking for. Most were windows that sat in a corner or on the desktop, which are inevitably obscured by document windows on a PowerBook’s small screen. Those monitors which used the menubar mostly used the NSStatusItem API, which has the annoying tendency to totally reorder my menubar on every login.
The MenuMeters monitors are true SystemUIServer plugins (also known as Menu Extras). This means they can be reordered using command-drag and remember their positions in the menubar across logins and restarts.
The CPU Meter can display system load both as a total percentage, or broken out as user and system time. It can also graph user and system load and display the load as a “thermometer”. The menu for the CPU Meter contains several pieces of information I like to have a single click away (uptime, load average, open Process Viewer, open Console).
The Disk Activity Meter displays disk activity to local disks on the system (anything that is a IOKit BlockStorage driver). It is hotplug aware, and will show activity on FireWire and USB disks as they are mounted. The Disk Meter menu shows volume space details for local drives (it does not display mounted network volumes for speed reasons).
The Memory Meter can display current memory usage as either a pie chart, thermometer, history graph, or as used/free totals. The Memory Meter menu shows a breakdown of current memory usage and VM statistics. The Memory Meter can optionally display a paging indicator light.
The Net Meter can display network throughput as arrows, bytes per second, and/or as a graph. Both the arrows and the graph are scaled using a user-selected scaling factor and calculation. Scaling can be done on the basis of actual link speed reported by the network interface or peak traffic and can use one of several scaling calculations. The Net Meter menu shows current interfaces and their status. Interface information is gathered from the SystemConfiguraton framework and thus is MacOS X network location aware (to prevent interfaces from appearing in this menu see the FAQ).
MenuMeters comes without warranty or support. That said, if it causes you problems I’d like to hear about it so that I may be able to track down the bug. Even better, since this is open source, you can fix the bug yourself. Patches cheerfully accepted.