meminfo - Plugin to monitor memory usage.


Do not enable this plugin unless you need it. It alone produces significantly more data than any normal munin-node in sum. Therefore it is not autimatically enabled.


All Linux systems


This plugin show many graphs (on my pc ~90 graphs with total ~750 values). Graph splitted to 8 groups, every group has child graphs:

  Application groups memory usage                  - show applications groups memory using by group (env.) [env.applications_group]
    Group `groupName1` applications memory usage     v
    ...                                            - show applications groups memory using per application in every group
    Group `groupNameX` applications memory usage     ^
    Summary group `groupName1` memory usage          v
    ...                                            - show applications groups memory using as summ of every parametr of application in every group
    Summary group `groupNameX` memory usage          ^
  Application memory usage                         - show memory usage per application [env.applications]
    Application processes                          - show processes count of every application
    Summary `applicationName1` memory usage          v
    ...                                            - Summary application processes memory using
    Summary `applicationNameX` memory usage          ^
  External fragmentation: Buddyinfo                - Buddyinfo/ Nodes and zones summary
     Node X, zone ZZZ                              - Chunks for each zone
  External fragmentation: Page type info           - Page type info, summary node-zone-type pages
    Node X, zone ZZZ, type TTT                     - Free pages per node-zone-page by order
  Physical memory usage                            - Main graph, show phisical memory usage
    Active/Inactive memory                         - subj :)
    Memory usage by cashes and buffers             - subj :)
    mmap                                           - mmapp'ed memory
    HugePages count                                - subj :)
    HugePages size                                 - subj :)
    Kernel memory                                  - subj :)
    Low and high memory                            - subj :)
  Slab objects size                                - subj :)
    Slabs size [GroupName1]                          v
    ...                                            - show slabs size. I try split fields by this types. 
    Slabs size [GroupNameX]                          ^
    Slabs sizes of groups                          - "Groups" sizes
    Slab objects                                   - Active/inactive objects
    Slabs                                          - Active/inactive and shared slabs
    Reclaim                                        - Reclaimed
  Swap usage                                       - subj :)
    First candidates to swap out                   - subj :)
    Writeback                                      - writeback and dirty
  Virtual memory usage                             - subj :)
    Vmalloc                                        - show vmalloc usage
    Vmalloc allocates                              - allocates per object


The plugin automatically selects which graphics drawing. But you can select graphs to draw by enabled_graphs environment. enabled_graphs is a regexp, where you include graphs to draw.

Default: undefined


  env.enabled_graphs meminfo_\w+\.?       # Draw only meminfo graphs
  env.enabled_graphs (meminfo|swapinfo)$  # Draw only meminfo and swapinfo graphs, without 'childs'

Also you can select applications to monitor it by applications environment applications environment is regexp

Default: undefined


  env.applications (firefox|\w{1,3}?sh) # Monitor firefox and shells (bash, zsh, sh, etc...)

Also you can group applications and show memory using of this groups, per application in group and summmary applications in group. Use env.applications_group for this.

Format: env.applications_group regexp:groupName;regexp:groupName;...

where regexp - it applications names regexp, and groupName - on-screen group name

Default: undefined


  env.applications_group ^(firefox|chrome|opera|konqu|arora):Browsers;(^lx|openbox|menu|gnome|slim|^X):X;^(hal|console-kit|syslog|cron|dhcp|udev|dbus|bluetoo|agett|login|automount):System;

And you can select time to display data after application close (all values return as 'NaN'), for this you must used environment env.application_wait Value - secunds

Default: 1800


  env.application_wait 86400 #24h


Please check, can your munin user read files such as


If no access, just write in plugin-config

  user root
  group root


You can set warning and critical levels for *each* of the data series the plugin reports.

Template for limits:

  env.limit_%field% (warning_num:crytical_num|critical_num)[kMG]

where %field% - field name. You can see it in graph view, 'field internal name' field

  warning_num - number, warning value
  crytical_num - number, critical value
  k - kilobytes, M - megabytes, G - gigabytes


  env.limit_apps 300M:500M    # Applications, warning - 300M, critical - 500m
  env.limit_committed_as 700M # Committed AS, critical - 700M


  #%# family=contrib
  #%# capabilities=autoconf




none known


Gorlow Maxim aka Sheridan <> (email and jabber)