Today’s Munin tip: Splitting out a noisy graph from munin

I have more than once found a Munin multi graph set being rendered unreadable by single graph peaking 100 times over the rest of the graphs in the set. The classical example is the Linux (over)committed memory graph on a system leaking memory, peaking in the 100GB area, making the other system memory graphs that are playing along about 1-4GB almost invisible:

Graph 1

One could of course put a hard limit in the RRD file, in my example, at the pysical memory in the machine in question, but this means that I loose oversight by hiding what’s probably a problem. A better solution is to split the graph out, that is, prevent it from graphing in the common memory set, and put it in custom graph. Consider the following munin.conf snipplet:


[my.server.tld]
address my.server.tld
memory.committed.graph no

memory_committed.graph_title Committed Memory
memory_committed.update no
memory_committed.graph_category system
memory_committed.graph_order \
memory=my.server.tld:memory.committed

This produces the following graphs:

Graph 2 Graph 3

Problem solved.

10 Responses to “Today’s Munin tip: Splitting out a noisy graph from munin”

  1. Andrey says:

    Thanks so much! This is exactly what i was looking for.

  2. SirPing says:

    Great tip, works perfectly.
    Thanks!

  3. Thomas says:

    This is exactly what I need. Damn that commited memory graph.

  4. Ryan says:

    Thank you, thank you, thank you.

  5. Adam says:

    Thanks a lot!

    How could i do this with two or more values (for example Coretemp 1,2,etc.)?

  6. ingvar says:

    Adam, you can do this for as many graphs in the plot that you want. Something like this, maybe:

    [my.server.tld]
    address my.server.tld
    foo.something.graph no
    foo.else.graph.no

    foo_something_else.graph_title Something Else
    foo_something_else.update no
    foo_something_else.graph_category somecategory
    foo_something_else.graph_order \
    something=my.server.tld:foo.something \
    else=my.server.tld:foo.else

  7. could anyone help for …unbound graphs splits….

  8. Chetan Sonar says:

    Hi,

    I have added below code in munin.conf, munin shows separate CPU graph for the Virtual Machine but actually their is no graph just graph icon. How can I solve this issue ?

    ——————
    vi /etc/munin/munin.conf
    [xyz.com]
    address 127.0.0.1
    use_node_name yes

    #libvirt-cputime.kvm101_cputime.graph no //Uncomment this so the main Graph does not show kvm101
    libvirt-cputime_kvm101.graph_title kvm101 CPU
    libvirt-cputime_kvm101.update no
    libvirt-cputime_kvm101.graph_args -u 100 //Set the Upper limit to 100%
    libvirt-cputime_kvm101.kvm101.cdef kvm101,8,* //Multiplier for number of cores (Core i7) to show 100% usage on graph at full cpu usage of VM
    libvirt-cputime_kvm101.graph_category Virtual Machines
    libvirt-cputime_kvm101.graph_order kvm101=server.domain.com:libvirt-cputime.kvm101_cputime

  9. Chetan Sonar says:

    It is not generating the png file for the virtual Machine.

    How to solve this ?

  10. Ingvar says:

    Chetan,

    Sorry, this was a very old post, made for munin-1.2 or 1.4. I’m not sure if this trick will work for newer versions of munin (2.x). Please consider posting to the mailing list, see

    http://munin-monitoring.org/wiki/HowToGetHelp
    and
    https://lists.sourceforge.net/lists/listinfo/munin-users

    Ingvar

Leave a Reply