mrtg-rrd - How to use RRDtool with MRTG


After using MRTG for some time you may find some limitations. Mostly in the areas of performance and graphing flexibility. These are exactly the areas addressed by rrdtool. To learn more about RRDtool check out its website on


When using mrtg with RRDtool you are replacing rateup with the RRDtool perl modlue To enable RRDtool support in mrtg you have to add the line

 LogFormat: rrdtool

MRTG needs access to both the RRDtool perl module and to the rrdtool executable.

If these two items are not installed in locations where perl can find them on its own, then you can use the following two parameters to supply the appropriate directories.

For the location of the rrdtool executable you put

 PathAdd: /usr/local/rrdtool/bin/


 PathAdd: c:\rrdtool\bin

For the location of the perl module it would be:

 LibAdd: /usr/local/rrdtool/lib/perl/


 LibAdd: c:\rrdtool\bin\lib\perl

When you have made this modification to the configuration file, several things will happen when you run mrtg again with the new config file:

  1. mrtg will take all your old .log files and convert them to .rrd format. (The .log files don't get touched in the process, so if things don't work out they are still there.)

  2. mrtg will use rrdtool to update its databases. These will have a new format called rrd which is totally different than the native log format of the classic mrtg.

  3. mrtg will not create any webpages of graphs anymore. It will only query the routers for traffic information and update its rrd databases.

The advantage of whole thing is that the mrtg will become much faster. Expect the runtime to drop to 20% of the previous value. (I would like to get some feedback on this from folks with large installations)

Mind you though, while the logging process of RRDtool is very fast, you are also gaining some time by neither creating graphs nor updating webpages. The idea behind this is that it is more efficient to create graphs and webpages on demmand. Using a cgi script.

At the moment there is no official script to do this, but two contributers have created such scripts:

  1. 14all.cgi
    Was the first program to take over the webpage creation and graphing task. It has been developed by Rainer Bawidamann <>. You can find a copy on Rainers website:

    The program comes with its own documentation

    Is another cgi frontend to mrtg running with rrdtool. Its main difference to 14all is that the web pages it creates are much more stylish than the ones from mrtg. routers.cgi has been written by Steve Shipway <>. You can find a copy in

    The script comes with its own installation instructions.

    A sample website showing off routers.cgi can be found on


Just as a side note: MRTG-3 will be based entirely on rrdtool technology. But don't wait for it ... get going now!


Tobias Oetiker <>