######################################################################
# Multi Router Traffic Grapher -- Example Configuration File
######################################################################
#
# * copy this file to ../run and call it mrtg.cfg
# * consider using ../run/cfgmaker to build your initial mrtg.cfg file
#
# This file is for use with mrtg-2.x
#
# Note:
#
# * Keywords must start at the begin of a line.
#
# * Lines which follow a keyword line which do start 
#   with a blank are appended to the keyword line
#
# * Empty Lines are ignored
#
# * Lines starting with a # sign are comments.


# ####################
# Global Configuration 
# ####################

# Where should the logfiles, and webpages be created?

WorkDir: /usr/tardis/pub/www/stats/mrtg
Options[_]: growright,bits

# --------------------------
# Optional Global Parameters
# --------------------------

# How many seconds apart should the browser (Netscape) be 
# instructed to reload the page? If this is not defined, the 
# default is 300 seconds (5 minutes).

# Refresh: 600

# How often do you call mrtg? The default is 5 minutes. If
# you call it less often, you should specify it here. This
# does two things:

# a) the generated HTML page does contain the right
#    information about the calling interval ...

# b) a META header in the generated HTML page will instruct
#    caches about the time to live of this page .....

# In this example we tell mrtg that we will be calling it
# every 10 minutes. If you are calling mrtg every 5
# minutes, you can leave this line commented out.

# Interval: 10

# With this switch mrtg will generate .meta files for CERN
# and Apache servers which contain Expiration tags for the
# html and gif files. The *.meta files will be created in
# the same directory as the other files, so you might have
# to set "MetaDir ." in your srm.conf file for this to work
#
# NOTE: If you are running Apache-1.2 you can use the mod_expire
# to achieve the same effect ... see the file htaccess-dist

#WriteExpires: Yes


# If you want to keep the mrtg icons in some place other than the 
# working directory, use the IconDir varibale to give its url.

# IconDir: /mrtgicons/


# #################################################
# Configuration for each Target you want to monitor
# #################################################

# The configuration keywords "Target" must be followed by a
# unique name. This will also be the name used for the
# webpages, logfiles and gifs created for that target.

# Note that the "Target" sections can be auto-generated with
# the cfgmaker tool. Check readme.html for instructions.
#     ========

##
## Target ----------------------------------------
## 

# With the "Target" keyword you tell mrtg what it should
# monitor. The "Target" keyword takes arguments in a wide
# range of formats:

# * The most basic format is "port:community@router"
#   This will generate a traffic graph for port 'port'
#   of the router 'router' and it will use the community
#   'community' for the snmp query.
 
# Target[ezwf]: 2:public@wellfleet-fddi.ethz.ch

# * Sometimes you are sitting on the wrong side of the
#   link. And you would like to have mrtg report Incoming
#   traffic as outgoing and visa versa. This can be achieved
#   by adding the '-' sign in front of the "Target"
#   description. It flips the in and outgoing traffic rates.

# Target[ezci]: -1:public@ezci-ether.ethz.ch

# * You can also explicitly define the OID to query by using the
#   following syntax 'OID_1&OID_2:community@router'
#   The following example will retrieve error input and output
#   octets/sec on interface 1.  MRTG needs to graph two values, so
#   you need to specify two OID's such as temperature and humidity
#   or error input and error output.

# Target[ezwf]: 1.3.6.1.2.1.2.2.1.14.1&1.3.6.1.2.1.2.2.1.20.1:public@myrouter

# * mrtg knows a number of symbolical SNMP variable
#   names. See the file mibhelp.txt for a list of known
#   names. One example are the ifInErrors and and ifOutErrors
#   names. This means you can specify the above as:

# Target[ezwf]: ifInErrors.1&ifOutErrors.1:public@myrouter

# * if you want to monitor something which does not provide
#   data via snmp you can use some external program to do
#   the data gathering.

#
#   The external command must return 4 lines of output:
#     Line 1 : current state of the 'incoming bytes counter'
#     Line 2 : current state of the 'outgoing bytes counter'
#     Line 3 : string, telling the uptime of the target.
#     Line 4 : string, telling the name of the target. 

#   Depending on the type of data your script returns you
#   might want to use the 'gauge' or 'absolute' arguments
#   for the "Options" keyword.

# Target[ezwf]: `/usr/local/bin/df2mrtg /dev/dsk/c0t2d0s0`

# * You can also use several statements in a mathematical 
#   expression.  This could be used to aggregate both B channels
#   in an ISDN connection or multiple T1's that are aggregated
#   into a single channel for greater bandwidth.
#   Note the whitespace arround the target definitions.

# Target[ezwf]: 2:public@wellfleetA + 1:public@wellfleetA
#              * 4:public@ciscoF

##
## RouterUptime ---------------------------------------
##
#
# In cases where you calculate the used bandwidth from
# several interfaces you normaly don't get the routeruptime
# and routername displayed on the web page.
# If this interface are on the same router and the uptime and
# name should be displayed nevertheless you have to specify
# its community and address again with the RouterUptime keyword.

# Target[kacisco]: 1:public@194.64.66.250 + 2:public@194.64.66.250
# RouterUptime[kacisco]: public@194.64.66.250

##
## RouterName -----------------------------------------
##
#

# If the default name of the router is incorrect/uninformative,
# you can use RouterName to specify a different OID on either the
# same or a different host.

# Use 1.3.6.1.4.1.4779.1.1.3.0 on the same host:
# RouterName[kacisco]: 1.3.6.1.4.1.4779.1.1.3.0

# Use 1.3.6.1.4.1.4779.1.1.3.0 on a differnet host (194.64.66.251):
# RouterName[kacisco]: 1.3.6.1.4.1.4779.1.1.3.0:public@194.64.66.251


##
## MaxBytes -------------------------------------------
##

# How many bytes per second can this port carry. Since most
# links are rated in bits per second, you need to divide
# their maximum bandwidth (in bits) by eight (8) in order to get
# bytes per second.  This is very important to make your
# unscaled graphs display realistic information.  
# T1 = 193000, 56K = 7000, Ethernet = 1250000. The "MaxBytes"
# value will be used by mrtg to decide whether it got a
# valid response from the router. If a number higher than
# "MaxBytes" is returned, it is ignored. Also read the section
# on AbsMax for further info.

# MaxBytes[ezwf]: 1250000

##
## Title -----------------------------------------------
##

# Title for the HTML page which gets generated for the graph.

# Title[ezwf]: Traffic Analysis for ETZ C 95.1

##
## PageTop ---------------------------------------------
##

# Things to add to the top of the generated HTML page.  Note
# that you can have several lines of text as long as the
# first column is empty.
# Note that the continuation lines will all end up on the same
# line in the html page. If you want linebreaks in the generated 
# html use the '\n' sequence.

# PageTop[ezwf]: <H1>Traffic Analysis for ETZ C95.1</H1>
#  Our Campus Backbone runs over an FDDI line\n
#  with a maximum transfer rate of 12.5 Mega Bytes per
#  Second.

##
## PageFoot ---------------------------------------------
##

# Things to add at the very end of the mrtg generated html page

# PageFoot[ezwf]: <HR size=2 noshade>This page is managed by Blubber

# --------------------------------------------------
# Optional Target Configuration Tags
# --------------------------------------------------

##
## AddHead -----------------------------------------
##

# Use this tag like the PageTop header, but its contents
# will be added between </TITLE> and </HEAD>.

# AddHead[ezwf]: <!-- Just a comment for fun -->

##
## AbsMax ------------------------------------------
##

# If you are monitoring a link which can handle more traffic
# than the MaxBytes value. Eg, a line which uses compression
# or some frame relay link, you can use the AbsMax keyword
# to give the absolute maximum value ever to be reached. We
# need to know this in order to sort out unrealistic values
# returned by the routers. If you do not set absmax, rateup
# will ignore values higher then MaxBytes.

# AbsMax[ezwf]: 2500000

##
## Unscaled ------------------------------------------
##

# By default each graph is scaled vertically to make the
# actual data visible even when it is much lower than
# MaxBytes.  With the "Unscaled" variable you can suppress
# this.  It's argument is a string, containing one letter
# for each graph you don't want to be scaled: d=day w=week
# m=month y=year.  In the example I suppress scaling for the
# yearly and the monthly graph.

# Unscaled[ezwf]: ym

##
## WithPeak ------------------------------------------
##

# By default the graphs only contain the average transfer
# rates for incoming and outgoing traffic. The
# following option instructs mrtg to display the peak
# 5 minute transfer rates in the [w]eekly, [m]onthly and
# [y]early graph. In the example we define the monthly
# and the yearly graph to contain peak as well as average
# values.

# WithPeak[ezwf]: ym

##
## Supress ------------------------------------------
##

# By Default mrtg produces 4 graphs. With this option you
# can suppress the generation of selected graphs.  The format
# is analog to the above option. In this example we suppress
# the yearly graph as it is quite empty in the beginning.

# Suppress[ezwf]: y

##
## Directory
##

# By default, mrtg puts all the files that it generates for each
# router (the GIFs, the HTML page, the log file, etc.) in WorkDir.
# If the "Directory" option is specified, the files are instead put
# into a directory under WorkDir.  (For example, given the options in
# this mrtg.cfg-dist file, the "Directory" option below would cause all
# the ezwf files to be put into /usr/tardis/pub/www/stats/mrtg/ezwf .)
#
# The directory must already exist; mrtg will not create it.

# Directory[ezwf]: ezwf

##
## XSize and YSize ------------------------------------------
##

# By Default mrtgs graphs are 100 by 400 pixels wide (plus
# some more for the labels. In the example we get almost
# square graphs ...
# Note: XSize must be between 20 and 600
#       YSize must be larger than 20

# XSize[ezwf]: 300
# YSize[ezwf]: 300

##
## XZoom YZoom -------------------------------------------------
##

# If you want your graphs to have larger pixels, you can
# "Zoom" them.

#XZoom[ezwf]: 2.0
#YZoom[ezwf]: 2.0

##
## XScale YScale -------------------------------------------------
##

# If you want your graphs to be actually scaled use XScale 
# and YScale. (Beware while this works, the results look ugly 
# (to be frank) so if someone wants fix this: patches are 
# welcome.

# XScale[ezwf]: 1.5
# YScale[ezwf]: 1.5


## 
## Step -----------------------------------------------------------
##

# Change the default step with from 5 * 60 seconds to 
# something else I have not tested this well ...

# Step[ezwf]: 60

##
## Options ------------------------------------------
##

# The "Options" Keyword allows you to set some boolean 
# switches:
#
# growright - The graph grows to the left by default.
#
# bits -      All the numbers printed are in bits instead 
#             of bytes ... looks much more impressive :-)
#
# noinfo -    Supress the information about uptime and
#             device name in the generated webpage.
#
# absolute -  This is for data sources which reset their 
#             value when they are read. This means that 
#             rateup has not to build the difference between 
#             this and the last value read from the data
#             source. Useful for external data gatherers.
#
# gauge -     Treat the values gathered from target as absolute
#             and not as counters. This would be useful to
#             monitor things like diskspace, load and so
#             on ....
#
# nopercent   Don't print usage percentages
#
# integer     Print only integers in the summary 
#             below the graph (No Kilo, Mega, Gigas) ... 
#

# Options[ezwf]: growright, bits

##
## Colours ------------------------------------------
##

# The "Colours" tag allows you to override the default colour
# scheme.  Note: All 4 of the required colours must be
# specified here The colour name ('Colourx' below) is the
# legend name displayed, while the RGB value is the real
# colour used for the display, both on the graph and n the
# html doc.

# Format is: Colour1#RRGGBB,Colour2#RRGGBB,Colour3#RRGGBB,Colour4#RRGGBB
#    where: Colour1 = Input on default graph
#           Colour2 = Output on default graph
#           Colour3 = Max input
#           Colour4 = Max output
#           RRGGBB  = 2 digit hex values for Red, Green and Blue

# Colours[ezwf]: GREEN#00eb0c,BLUE#1000ff,DARK GREEN#006600,VIOLET#ff00ff

##
## Background ------------------------------------------
##

# With the "Background" tag you can configure the background
# colour of the generated HTML page

# Background[ezwf]: #a0a0a0a

##
## YLegend, ShortLegend, Legend[1234] ------------------
##

# The following keywords allow you to override the text
# displayed for the various legends of the graph and in the
# HTML document
#
# * YLegend : The Y-Axis of the graph
# * ShortLegend: The 'b/s' string used for Max, Average and Current
# * Legend[1234IO]: The strings for the colour legend
#
#YLegend[ezwf]: Bits per Second
#ShortLegend[ezwf]: b/s
#Legend1[ezwf]: Incoming Traffic in Bits per Second
#Legend2[ezwf]: Outgoing Traffic in Bits per Second
#Legend3[ezwf]: Maximal 5 Minute Incoming Traffic
#Legend4[ezwf]: Maximal 5 Minute Outgoing Traffic
#LegendI[ezwf]: &nbsp;In:
#LegendO[ezwf]: &nbsp;Out:
# Note, if LegendI or LegendO are set to an empty string with
# LegendO[ezwf]:
# The corresponding line below the graph will not be printed at all.

# If you live in an international world, you might want to 
# generate the graphs in different timezones. This is set in the 
# TZ variable. Under certain operating systems like Solaris, 
# this will provoke the localtime call to giv the time in 
# the selected timezone ...

# Timezone[ezwf]: Japan

# The Timezone is the standard Solaris timezone, ie Japan, Hongkong,
# GMT, GMT+1 etc etc.

# By default, mrtg (actually rateup) uses the strftime(3) '%W' option
# to format week numbers in the monthly graphs.  The exact semantics
# of this format option vary between systems.  If you find that the
# week numbers are wrong, and your system's strftime(3) routine
# supports it, you can try another format option.  The POSIX '%V'
# option seems to correspond to a widely used week numbering
# convention.  The week format character should be specified as a
# single letter; either W, V, or U.

# Weekformat[ezwf]: V
 
# #############################
# Two very special Target names
# #############################

# To save yourself some typing you can define a target
# called '^'. The text of every Keyword you define for this
# target will be PREPENDED to the corresponding Keyword of
# all the targets defined below this line. The same goes for
# a Target called '$' but its options will be APPENDED.
#
# The example will make mrtg use a common header and a
# common contact person in all the pages generated from
# targets defined later in this file.
#
#PageTop[^]: <H1>NoWhere Unis Traffic Stats</H1><HR>
#PageTop[$]: Contact Peter Norton if you have any questions<HR>


##################################################################
##################################################################
##################################################################
#
# Now some example mrtg.cfg files
#
##################################################################
##################################################################
##################################################################

# Minimal mrtg.cfg
#--------------------

#WorkDir: /usr/tardis/pub/www/stats/mrtg
#Target[r1]: 2:public@myrouter.somplace.edu
#MaxBytes[r1]: 64000
#Title[r1]: Traffic Analysis ISDN
#PageTop[r1]: <H1>Stats for our ISDN Line</H1>


# Minimal Cfg for several Routers.
#---------------------------------
#WorkDir: /usr/tardis/pub/www/stats/mrtg
#
#Title[^]: Traffic Analysis for
#PageTop[^]: <H1>Stats for our
#PageTop[$]: Contact The Chief if you notice anybody<HR>
#
#Title[isdn]: our ISDN Line
#PageTop[isdn]: our ISDN Line </H1>
#Target[isdn]: 2:public@router.somplace.edu
#MaxBytes[isdn]: 64000
#
#Title[backb]: our Campus Backbone
#PageTop[backb]: our Campus Backbone </H1>
#Target[backb]: 1:public@router.somplace.edu
#MaxBytes[backb]: 1250000

# the following line removes the default prepend value
# defined above
#Title[^]:
#Title[isdn2]: Traffic for the Backup ISDN Line
#PageTop[isdn2]: our ISDN Line </H1>
#Target[isdn2]: 3:public@router.somplace.edu
#MaxBytes[isdn2]: 64000
#----------------------------------------------------------------------

#host pc1, cfgfile cfg/192.168.10.1.cfg, port serial0

Target[192.168.10.1.1]: 1:public@192.168.10.1
MaxBytes[192.168.10.1.1]: 1250000
Title[192.168.10.1.1]: : Serial0
PageTop[192.168.10.1.1]: <H1>Traffic Analysis for Serial0
 </H1>
 <TABLE>
   <TR><TD>System:</TD><TD>local-gw in </TD></TR>
   <TR><TD>Maintainer:</TD><TD></TD></TR>
   <TR><TD>Interface:</TD><TD>Serial0 (1)</TD></TR>
   <TR><TD>IP:</TD><TD>local-gw (192.168.10.1)</TD></TR>
   <TR><TD>Max Speed:</TD>
       <TD>1250.0 kBytes/s</TD></TR>
  </TABLE>

#----------------------------------------------------------------------

#host pc2, cfgfile cfg/192.168.10.1.cfg, port serial2

Target[192.168.10.1.3]: 3:public@192.168.10.1
MaxBytes[192.168.10.1.3]: 1250000
Title[192.168.10.1.3]: : Serial2
PageTop[192.168.10.1.3]: <H1>Traffic Analysis for Serial2
 </H1>
 <TABLE>
   <TR><TD>System:</TD><TD>local-gw in </TD></TR>
   <TR><TD>Maintainer:</TD><TD></TD></TR>
   <TR><TD>Interface:</TD><TD>Serial2 (3)</TD></TR>
   <TR><TD>IP:</TD><TD>local-gw (192.168.10.1)</TD></TR>
   <TR><TD>Max Speed:</TD>
       <TD>1250.0 kBytes/s</TD></TR>
  </TABLE>

#----------------------------------------------------------------------

#host pc3, cfgfile cfg/192.168.10.1.cfg, port serial3

Target[192.168.10.1.4]: 4:public@192.168.10.1
MaxBytes[192.168.10.1.4]: 1250000
Title[192.168.10.1.4]: : Serial3
PageTop[192.168.10.1.4]: <H1>Traffic Analysis for Serial3
 </H1>
 <TABLE>
   <TR><TD>System:</TD><TD>local-gw in </TD></TR>
   <TR><TD>Maintainer:</TD><TD></TD></TR>
   <TR><TD>Interface:</TD><TD>Serial0 (1)</TD></TR>
   <TR><TD>IP:</TD><TD>local-gw (192.168.10.1)</TD></TR>
   <TR><TD>Max Speed:</TD>
       <TD>1250.0 kBytes/s</TD></TR>
  </TABLE>

#----------------------------------------------------------------------
