Blob Blame History Raw
.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.29)
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" Set up some character translations and predefined strings.  \*(-- will
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
.\" double quote, and \*(R" will give a right double quote.  \*(C+ will
.\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
.\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
.\" nothing in troff, for use with C<>.
.tr \(*W-
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
.ie n \{\
.    ds -- \(*W-
.    ds PI pi
.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
.    ds L" ""
.    ds R" ""
.    ds C` ""
.    ds C' ""
'br\}
.el\{\
.    ds -- \|\(em\|
.    ds PI \(*p
.    ds L" ``
.    ds R" ''
.    ds C`
.    ds C'
'br\}
.\"
.\" Escape single quotes in literal strings from groff's Unicode transform.
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\"
.\" If the F register is turned on, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD.  Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
.\"
.\" Avoid warning from groff about undefined register 'F'.
.de IX
..
.nr rF 0
.if \n(.g .if rF .nr rF 1
.if (\n(rF:(\n(.g==0)) \{
.    if \nF \{
.        de IX
.        tm Index:\\$1\t\\n%\t"\\$2"
..
.        if !\nF==2 \{
.            nr % 0
.            nr F 2
.        \}
.    \}
.\}
.rr rF
.\"
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
.    \" fudge factors for nroff and troff
.if n \{\
.    ds #H 0
.    ds #V .8m
.    ds #F .3m
.    ds #[ \f1
.    ds #] \fP
.\}
.if t \{\
.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
.    ds #V .6m
.    ds #F 0
.    ds #[ \&
.    ds #] \&
.\}
.    \" simple accents for nroff and troff
.if n \{\
.    ds ' \&
.    ds ` \&
.    ds ^ \&
.    ds , \&
.    ds ~ ~
.    ds /
.\}
.if t \{\
.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
.\}
.    \" troff and (daisy-wheel) nroff accents
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
.ds ae a\h'-(\w'a'u*4/10)'e
.ds Ae A\h'-(\w'A'u*4/10)'E
.    \" corrections for vroff
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
.    \" for low resolution devices (crt and lpr)
.if \n(.H>23 .if \n(.V>19 \
\{\
.    ds : e
.    ds 8 ss
.    ds o a
.    ds d- d\h'-1'\(ga
.    ds D- D\h'-1'\(hy
.    ds th \o'bp'
.    ds Th \o'LP'
.    ds ae ae
.    ds Ae AE
.\}
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
.IX Title "MRTG-RRD 1"
.TH MRTG-RRD 1 "2018-07-13" "2.17.7" "mrtg"
.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
mrtg\-rrd \- How to use RRDtool with MRTG
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
After using \s-1MRTG\s0 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
.PP
.Vb 1
\& http://oss.oetiker.ch/rrdtool
.Ve
.SH "RRDTOOL INTEGRATION"
.IX Header "RRDTOOL INTEGRATION"
When using mrtg with RRDtool you are replacing \fIrateup\fR with the
RRDtool perl module \fIRRDs.pm\fR. To enable RRDtool support in mrtg
you have to add the line
.PP
.Vb 1
\& LogFormat: rrdtool
.Ve
.PP
to your mrtg config file.
.PP
\&\s-1MRTG\s0 needs access to both the RRDtool perl module \fBRRDs.pm\fR and to the
\&\fBrrdtool\fR executable.
.PP
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.
.PP
For the location of the \fBrrdtool\fR executable you put
.PP
.Vb 1
\& PathAdd: /usr/local/rrdtool/bin/
.Ve
.PP
or
.PP
.Vb 1
\& PathAdd: c:\errdtool\ebin
.Ve
.PP
For the location of the perl module it would be:
.PP
.Vb 1
\& LibAdd: /usr/local/rrdtool/lib/perl/
.Ve
.PP
or
.PP
.Vb 1
\& LibAdd: c:\errdtool\ebin\elib\eperl
.Ve
.PP
When you have made this modification to the configuration file, several
things will happen when you run mrtg again with the new config file:
.IP "1." 4
mrtg will take all your old \f(CW\*(C`.log\*(C'\fR files and \fBconvert\fR them to \f(CW\*(C`.rrd\*(C'\fR
format. (The \f(CW\*(C`.log\*(C'\fR files don't get touched in the process, so if things
don't work out they are still there.)
.IP "2." 4
mrtg will use \fBrrdtool\fR to update its databases. These will have a new format
called \fIrrd\fR which is totally different than the native \fIlog\fR format of
the classic mrtg.
.IP "3." 4
mrtg will \fBnot\fR create any webpages of graphs anymore.
It will only query the routers for traffic information and update its \fIrrd\fR
databases.
.PP
The advantage of whole thing is that the mrtg will become \fBmuch\fR
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.)
.PP
Mind you, though, while the logging process of RRDtool is \fBvery\fR 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 demand by using a cgi script.
.PP
At the moment there is no \fBofficial\fR script to do this, but two
contributers have created such scripts:
.IP "One4All aka 14all.cgi" 4
.IX Item "One4All aka 14all.cgi"
This was the first program to take over the webpage creation and graphing task.
It has been developed by Rainer Bawidamann
rainer.bawidamann@web.de. You can find a copy 
on Rainers website: http://my14all.sourceforge.net/
The program comes with its own documentation
.IP "\fBrouters2.cgi\fR" 4
.IX Item "routers2.cgi"
This is another \s-1CGI\s0 frontend for mrtg running with rrdtool. The main difference between this and 14all is
that the web pages it creates are much more stylish than the ones from mrtg, plus they support User
Defined summary graphs and different levels of Authentication and Authorisation. This has been written by
Steve Shipway (steve@steveshipway.org). You obtain a copy, and find a forum and demonstration system at
http://www.steveshipway.org/software/
The program comes with its own installation instructions and install script.
.IP "\fBmrtg-rrd\fR" 4
.IX Item "mrtg-rrd"
The mrtg-rrd script is a CGI/FastCGI application by Jan \*(L"Yenya\*(R" Kasprzak for
displaying \s-1MRTG\s0 graphs from data in the RRDtool format. It is an intended
replacement for the 14all.cgi script. It can make your monitoring system
faster because \s-1MRTG\s0 does not have to generate all the \s-1PNG\s0 files with graphs
every 5 minutes or so. Instead of this the graphs are generated on-demand
when the user wants to see them. http://www.fi.muni.cz/~kas/mrtg\-rrd/
.SH "FUTURE"
.IX Header "FUTURE"
Just as a side note: \s-1MRTG\-3\s0 will be based entirely on rrdtool technology.
But don't wait for it ... get going \fBnow\fR!
.SH "AUTHOR"
.IX Header "AUTHOR"
Tobias Oetiker <tobi@oetiker.ch>