packages icon

 MRTG(1)                           2.16.4                            MRTG(1)
 mrtg                                                                   mrtg


      mrtg - What is MRTG ?

      The Multi Router Traffic Grapher (MRTG) is a tool to monitor the
      traffic load on network links.  MRTG generates HTML pages containing
      PNG images which provide a LIVE visual representation of this traffic.
      Check to see what it does.

      Go to for all the details about mrtg.

          MRTG works on most UNIX platforms and Windows NT.

          MRTG is written in Perl and comes with full source.

      Portable SNMP
          MRTG Uses a highly portable SNMP implementation written entirely
          in Perl (thanks to Simon Leinen). There is no need to install any
          external SNMP package.

      SNMPv2c support
          MRTG can read the new SNMPv2c 64bit counters. No more counter

      Reliable Interface Identification
          Router interfaces can be identified by IP address, description and
          ethernet address in addition to the normal interface number.

      Constant size Logfiles
          MRTG's logfiles do NOT grow thanks to the use of a unique data
          consolidation algorithm.

      Automatic Configuration
          MRTG comes with a set of configuration tools which make
          configuration and setup very simple.

          Time critical routines are written in C (thanks to the initiative
          of Dave Rand my Co-Author).

      GIF free Graphics
          Graphics are generated directly in PNG format using the GD library
          by Thomas Boutell.


                                    - 1 -           Formatted:  July 7, 2022

 MRTG(1)                           2.16.4                            MRTG(1)
 mrtg                                                                   mrtg


          The look of the webpages produced by MRTG is highly configurable.

          MRTG has built-in hooks for using RRDtool. If you are strapped for
          performance this may help.

      MRTG consists of a Perl script which uses SNMP to read the traffic
      counters of your routers and a fast C program which logs the traffic
      data and creates beautiful graphs representing the traffic on the
      monitored network connection. These graphs are embedded into webpages
      which can be viewed from any modern Web-browser.

      In addition to a detailed daily view, MRTG also creates visual
      representations of the traffic seen during the last seven days, the
      last five weeks and the last twelve months. This is possible because
      MRTG keeps a log of all the data it has pulled from the router. This
      log is automatically consolidated so that it does not grow over time,
      but still contains all the relevant data for all the traffic seen over
      the last two years.  This is all performed in an efficient manner.
      Therefore you can monitor 200 or more network links from any halfway
      decent UNIX box.

      MRTG is not limited to monitoring traffic, though.  It is possible to
      monitor any SNMP variable you choose. You can even use an external
      program to gather the data which should be monitored via MRTG. People
      are using MRTG, to monitor things such as System Load, Login Sessions,
      Modem availability and more. MRTG even allows you to accumulate two or
      more data sources into a single graph.

      In 1994 I was working at a site where we had one 64kbit line to the
      outside world. Obviously, everybody was interested in knowing how the
      link was performing. So I wrote a quick hack which created a
      constantly updated graph on the web that showed the traffic load on
      our Internet link. This eventually evolved into a rather configurable
      Perl script called MRTG-1.0 which I released in spring 1995. After a
      few updates, I left my job at DMU to start work at the Swiss Federal
      Institute of Technology. Due to lack of time I had to put MRTG aside.
      One day in January of 1996, I received email from Dave Rand asking if
      I had any ideas why MRTG was so slow. Actually, I did. MRTG's
      programming was not very efficient and it was written entirely in
      Perl. After a week or so, Dave wrote back to me and said he had tried
      what I had suggested for improving MRTG's speed. Since the changes did
      not help much, he had decided to rewrite the time-critical sections of
      MRTG in C. The code was attached to his email. His tool increased the
      speed of MRTG by a factor of 40! This got me out of my 'MRTG
      ignorance' and I started to spend my spare time developing of MRTG-2.

                                    - 2 -           Formatted:  July 7, 2022

 MRTG(1)                           2.16.4                            MRTG(1)
 mrtg                                                                   mrtg


      Soon after MRTG-2 development had begun I started to give beta copies
      to interested parties. In return I got many feature patches, a lot of
      user feedback and bug fixes. The product you are getting now wouldn't
      be in this state if it hadn't been for the great contributions and
      support I received from of many people. I would like to take this
      opportunity to thank them all. (See the files CHANGES for a long list
      of folk people who helped to make MRTG what it is today.)

      Mrtg is also the name of the script you have to run to poll data and
      generate the graphs. Most configuration is set through the
      configuration file; some command-line options exist all the same.

      --user username  and --group groupname
          Run as the given user and/or group. (Unix Only)

      --lock-file filename
          Use an alternate lock-file (the default is to use the
          configuration-file appended with "_l").

      --confcache-file filename
          Use an alternate confcache-file (the default is to use the
          configuration-file appended with ".ok")

      --logging filename|eventlog
          If this is set to writable filename, all output from mrtg
          (warnings, debug messages, errors) will go to filename. If you are
          running on Win32 you can specify eventlog instead of a filename
          which will send all error to the windows event log.

          NOTE:Note, there is no Message DLL for mrtg. This has the side
          effect that the windows event logger will display a nice message
          with every entry in the event log, complaing about the fact that
          mrtg has no message dll. If any of the Windows folks want to
          contribute one, they are welcome.

          Put MRTG into the background, running as a daemon. This works the
          same way as the config file option, but the switch is required for
          proper FHS operation (because /var/run is writable only by root)

          Configure all mrtg paths to conform to the FHS specification;

          Only check the cfg file for errors. Do not do anything.


                                    - 3 -           Formatted:  July 7, 2022

 MRTG(1)                           2.16.4                            MRTG(1)
 mrtg                                                                   mrtg


          Define the name and path of the pid file for mrtg running as a

          Only update the logfile, do not produce graphics or html pages

          Enable debug options. The argument of the debug option is a comma
          separated list of debug values:

           cfg  - watch the config file reading
           dir  - directory mangeling
           base - basic program flow
           tarp - target parser
           snpo - snmp polling
           fork - forking view
           time - some timing info
           log  - logging of data via rateup or rrdtool



      Learn more about MRTG by going to the mrtg home page on:

      Tobias Oetiker <> and many contributors

                                    - 4 -           Formatted:  July 7, 2022