├── docs └── hello ├── src ├── doc │ ├── .gitignore │ ├── mrtg-l.gif │ ├── mrtg-l.png │ ├── mrtg-m.gif │ ├── mrtg-m.png │ ├── mrtg-r.gif │ ├── mrtg-r.png │ ├── mrtg-ti.png │ └── mrtg-squid.pod ├── INSTALL ├── bootstrap ├── contrib │ ├── mrtgmk │ │ ├── src │ │ │ ├── mkm │ │ │ ├── parse.ftbl │ │ │ ├── parsen.ftbl │ │ │ ├── html.c │ │ │ ├── parse0.c │ │ │ ├── mrtgmk.c │ │ │ ├── parse.c │ │ │ ├── txte.h │ │ │ ├── txtro.h │ │ │ ├── util.c │ │ │ ├── parse0.ftbl │ │ │ ├── parsen.c │ │ │ └── fnctn.c │ │ ├── cfg │ │ │ ├── EXAMPLE1 │ │ │ ├── alias.cfg │ │ │ ├── hosts.cfg │ │ │ ├── misc.cfg │ │ │ ├── page1.cfg │ │ │ ├── links.cfg │ │ │ ├── page2.cfg │ │ │ ├── convert.cfg │ │ │ ├── page1.html │ │ │ ├── a.cfg │ │ │ ├── page2.html │ │ │ └── today.html │ │ ├── smrtgmk │ │ ├── doc │ │ │ └── commands │ │ └── readme.1st │ ├── ovmrtg │ │ ├── ovtgts │ │ ├── installov │ │ ├── ovin │ │ ├── buildht │ │ ├── installov.cmds │ │ ├── oveval.txt │ │ ├── newrtrov.txt │ │ ├── ovsho │ │ ├── buildrtov │ │ ├── ovsysnms │ │ ├── ovtst │ │ └── ovcols │ ├── whodo │ │ ├── README │ │ ├── GIFgraph │ │ │ └── GIFgraph │ │ │ │ ├── samples │ │ │ │ ├── logo.gif │ │ │ │ ├── sample42.dat │ │ │ │ ├── sample11.htm │ │ │ │ ├── sample12.htm │ │ │ │ ├── sample13.htm │ │ │ │ ├── sample14.htm │ │ │ │ ├── sample15.htm │ │ │ │ ├── sample21.htm │ │ │ │ ├── sample51.htm │ │ │ │ ├── sample52.htm │ │ │ │ ├── sample53.htm │ │ │ │ ├── sample54.htm │ │ │ │ ├── sample61.htm │ │ │ │ ├── sample62.htm │ │ │ │ ├── sample91.htm │ │ │ │ ├── sample92.htm │ │ │ │ ├── sample93.htm │ │ │ │ ├── sample93.pl │ │ │ │ ├── sample41.htm │ │ │ │ ├── sample31.htm │ │ │ │ ├── sample16.htm │ │ │ │ ├── sample92.pl │ │ │ │ ├── sample91.pl │ │ │ │ ├── sample42.htm │ │ │ │ ├── sample94.pl │ │ │ │ ├── sample11.pl │ │ │ │ ├── sample13.pl │ │ │ │ ├── sample21.pl │ │ │ │ ├── Makefile │ │ │ │ ├── sample41.pl │ │ │ │ ├── sample12.pl │ │ │ │ ├── sample51.pl │ │ │ │ ├── sample15.pl │ │ │ │ ├── sample31.pl │ │ │ │ ├── sample52.pl │ │ │ │ ├── sample62.pl │ │ │ │ ├── sample14.pl │ │ │ │ ├── sample42.pl │ │ │ │ ├── sample16.pl │ │ │ │ ├── index.htm │ │ │ │ ├── sample53.pl │ │ │ │ └── sample54.pl │ │ │ │ ├── t │ │ │ │ ├── ff.pl │ │ │ │ ├── colour.t │ │ │ │ ├── pie.t │ │ │ │ ├── lines.t │ │ │ │ ├── linespoints.t │ │ │ │ └── colour_rgb.txt │ │ │ │ └── install │ │ │ │ └── Makefile.PL │ │ ├── sources │ │ ├── networks │ │ └── sources.cfg │ ├── apc_ups │ │ ├── ups.cfg │ │ ├── README │ │ └── upsdata01.pl │ ├── TTrafic │ │ ├── readme.txt │ │ └── TTraffic.asp │ ├── jm │ │ ├── mrtg-jm.tar.gz │ │ ├── README │ │ ├── news-mrtg.pl │ │ ├── finger-mrtg.pl │ │ └── quake-mrtg.pl │ ├── monitor │ │ ├── config.asp │ │ ├── login.asp │ │ ├── Monitor.mdb │ │ ├── default.asp │ │ ├── monitor.html │ │ ├── images │ │ │ ├── msie.gif │ │ │ ├── mrtg-l.gif │ │ │ ├── mrtg-m.gif │ │ │ ├── mrtg-r.gif │ │ │ ├── msprod.gif │ │ │ ├── spacer.gif │ │ │ └── mrtg-ti.gif │ │ └── global.asa │ ├── mrtgrq │ │ ├── cubprev.gif │ │ ├── grnball.gif │ │ ├── redball.gif │ │ ├── Net-Telnet-3.02.tar.gz │ │ ├── getreport.pl │ │ └── mrtgrq.css │ ├── rdlog2 │ │ └── readme.html │ ├── iptables_acc │ │ └── README │ ├── cisco_ipaccounting │ │ ├── TODO │ │ ├── CHANGELOG │ │ └── networks │ ├── net-hosts │ │ ├── cubprev.gif │ │ ├── grnball.gif │ │ ├── redball.gif │ │ ├── net-hosts.css │ │ └── net-hosts │ ├── iptables_acc_snmp │ │ └── README │ ├── TotalControlModem │ │ └── example.txt │ ├── nt_n_cisco │ │ ├── RUN_builder.bat │ │ ├── queryone.bat │ │ ├── cisco_devices_to_poll.txt │ │ ├── make_all_cisco_configs.bat │ │ ├── RunCcfgs.cmd │ │ ├── builder.bat │ │ └── default.asp │ ├── mrtg-mail │ │ ├── services-dist │ │ ├── inetd.conf-dist │ │ ├── smtp-stats │ │ ├── mqueue │ │ ├── mqueue.cfg │ │ ├── mailstats.cfg │ │ └── mailstats-alternate │ ├── ircstats │ │ └── README │ ├── IxDisk │ │ ├── README │ │ ├── ixdisk.cfg │ │ └── ixdisk.pl │ ├── exim-stats │ │ ├── email-queue1 │ │ ├── email-totals1 │ │ ├── check-email │ │ └── email-count1 │ ├── stat │ │ ├── dns_mrtg │ │ ├── dns.named │ │ └── mrtg.cfg │ ├── 14all │ │ └── README │ ├── routers │ │ └── README │ ├── snmpping │ │ ├── README │ │ └── snmpping.pl │ ├── linux_stat │ │ └── readme │ ├── get-equi │ │ └── README │ ├── gentcucci-1.0.0 │ │ ├── nmcs.list │ │ ├── mrtg_autorun │ │ └── README │ ├── meminfo │ │ └── README │ ├── diskmon │ │ ├── showdisk.pl │ │ ├── getdisk.pl │ │ └── sample.cfg │ ├── cpuinfo │ │ ├── sample.cfg │ │ └── README │ ├── GetSNMPLinesUP │ │ ├── INSTALL │ │ ├── sample.cfg │ │ ├── ModemTable.dial-machine │ │ ├── COPYRIGHT │ │ ├── Makefile │ │ └── README │ ├── cfgmaker_ATM │ │ └── README │ ├── mrtg-archiver-script │ │ ├── index.html │ │ └── to-crontab │ ├── TCH │ │ └── README │ ├── accesslistmon │ │ ├── examplescript │ │ ├── mrtg.cfg │ │ └── README │ ├── get-active │ │ └── README │ ├── mrtg-ipget │ │ └── README │ ├── mrtg_php_portal │ │ ├── update.pl │ │ ├── www │ │ │ ├── admin.php │ │ │ └── index.php │ │ └── conf │ │ │ └── config.inc.php │ ├── rumb-stat │ │ ├── README │ │ └── gethttpstats │ ├── ciscoindex │ │ └── README │ ├── ipfilter │ │ ├── fw.pl │ │ └── ip-filter.readme │ ├── debian-systemd │ │ ├── mrtg.service │ │ └── README │ ├── mrtg-blast │ │ ├── README │ │ └── COPYRIGHT │ ├── mrtgindex.cgi │ │ └── README │ ├── iptables-accounting │ │ └── README │ ├── procmem │ │ ├── getmem.pl │ │ └── getproc.pl │ ├── mrtg-dynip │ │ └── Install │ ├── ipchainacc │ │ └── README │ ├── portmasters │ │ └── README │ ├── switchmaker │ │ └── README │ ├── mrtg-startup-script │ │ └── README │ ├── ping-probe │ │ └── README │ ├── mrtglog │ │ ├── README │ │ └── mrtglog.h │ ├── get-multiserial │ │ └── get-modems.pl │ ├── cpumon │ │ └── README │ ├── mrtg-archiver │ │ └── mrtg.archive.conf │ ├── PMLines │ │ ├── mrtg.cfg-demo │ │ └── README │ ├── ipchains │ │ └── ipchainacc.rules │ ├── ircstats2 │ │ ├── example.cf │ │ └── README │ └── cfgmaker_cisco │ │ └── README ├── .gitignore ├── bin │ └── rateup.nlm ├── translate │ ├── cn.pmd │ ├── gb.pmd │ ├── big5.pmd │ ├── chinese.pmd │ ├── czech.pmd │ ├── eucjp.pmd │ ├── gb2312.pmd │ ├── greek.pmd │ ├── korean.pmd │ ├── russian.pmd │ ├── serbian.pmd │ ├── slovak.pmd │ ├── swedish.pmd │ ├── turkish.pmd │ ├── bulgarian.pmd │ ├── croatian.pmd │ ├── icelandic.pmd │ ├── norwegian.pmd │ ├── romanian.pmd │ ├── ukrainian.pmd │ ├── lithuanian.pmd │ ├── macedonian.pmd │ ├── russian1251.pmd │ ├── german.pmd.backup │ ├── ukrainian1251.pmd │ ├── README │ ├── fixer │ └── mergelocale.pl ├── images │ ├── favicon.ico │ ├── mrtg-l.gif │ ├── mrtg-l.png │ ├── mrtg-m.gif │ ├── mrtg-m.png │ ├── mrtg-r.gif │ ├── mrtg-r.png │ ├── mrtg-ti.gif │ └── mrtg-ti.png ├── lib │ └── mrtg2 │ │ └── Pod │ │ └── Checker.pm ├── t │ └── translation.t ├── get_ver.awk ├── src │ └── strftime.h ├── THANKS ├── README ├── mkinstalldirs └── COPYRIGHT ├── web ├── bin │ ├── lib │ │ ├── Pod │ │ │ ├── .exists │ │ │ └── Simple │ │ │ │ ├── Transcode.pm │ │ │ │ └── TranscodeSmart.pm │ │ └── auto │ │ │ └── Pod │ │ │ ├── Escapes │ │ │ └── .exists │ │ │ └── Simple │ │ │ └── .exists │ ├── headfix.pl │ ├── fix-hrefs.pl │ └── htmlfix.sh ├── doc │ ├── .gitignore │ ├── index.wml │ ├── build.sh │ └── navbar.inc ├── .gitignore ├── 3party.wml ├── fb-logo.png ├── mrtg-l.gif ├── mrtg-l.png ├── mrtg-m.gif ├── mrtg-m.png ├── mrtg-r.gif ├── mrtg-r.png ├── images │ ├── px.gif │ ├── minus.gif │ ├── plus.gif │ ├── foot_px.gif │ ├── spacer.gif │ ├── arr_black.gif │ ├── arr_white.gif │ ├── foot_logo.gif │ ├── mrtg_logo.gif │ └── arr_black_right.gif ├── logos │ ├── psw.jpg │ ├── nagios.png │ ├── zenoss.png │ ├── kanetix.png │ ├── terreactive.png │ ├── serverscheck.png │ ├── mrtg_sensorgateway.png │ ├── opennmscolorgroup.png │ ├── logo_plixer_blue101x51.gif │ └── poweradmin_server_monitor.png ├── mrtgbook.jpg ├── support │ ├── navbar.inc │ ├── index.inc │ └── build.sh ├── award-white.png ├── cast │ ├── contrib.inc │ ├── build.sh │ └── index.wml ├── inc │ ├── IE7 │ │ ├── ie7.gif │ │ ├── blank.gif │ │ ├── test-trans.png │ │ ├── ie7-load.htc │ │ ├── ie7-base64.php │ │ ├── ie7-xml-extras.js │ │ ├── ie7-css-strict.js │ │ ├── README.txt │ │ ├── ie7-dynamic-attributes.js │ │ └── ie7-object.htc │ ├── button.png │ ├── button.xar │ ├── favicon.ico │ ├── template.inc │ ├── happy-tobi.png │ ├── silver-logo.png │ ├── trac.css │ └── html.inc ├── snmpv1-is-too-slow.png ├── 192.33.92.249_fa4_1-day.png ├── trac.wml ├── .wmkrc ├── site-sync ├── 404.wml ├── build.sh ├── nabble-mrtg.wml ├── .wmlrc ├── download.wml ├── hoster.html ├── license.wml └── navbar.inc ├── .github ├── CODEOWNERS └── workflows │ └── build-linux.yml ├── .gitignore └── README.md /docs/hello: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/doc/.gitignore: -------------------------------------------------------------------------------- 1 | *.txt -------------------------------------------------------------------------------- /web/bin/lib/Pod/.exists: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.github/CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @oetiker 2 | -------------------------------------------------------------------------------- /web/bin/lib/auto/Pod/Escapes/.exists: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /web/bin/lib/auto/Pod/Simple/.exists: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/INSTALL: -------------------------------------------------------------------------------- 1 | read the readme.html ... 2 | -------------------------------------------------------------------------------- /web/doc/.gitignore: -------------------------------------------------------------------------------- 1 | *.pod 2 | *.wml 3 | *.tmp -------------------------------------------------------------------------------- /src/bootstrap: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | autoreconf -fivm 3 | -------------------------------------------------------------------------------- /web/.gitignore: -------------------------------------------------------------------------------- 1 | *.var 2 | *.en.html 3 | *.tmp 4 | *.pod -------------------------------------------------------------------------------- /src/contrib/mrtgmk/src/mkm: -------------------------------------------------------------------------------- 1 | gcc -o mrtgmk mrtgmk.c -Wall 2 | -------------------------------------------------------------------------------- /src/.gitignore: -------------------------------------------------------------------------------- 1 | libs-i386-mingw32msvc 2 | /configure 3 | /Makefile 4 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/cfg/EXAMPLE1: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | ../mrtgmk convert.cfg 4 | -------------------------------------------------------------------------------- /web/3party.wml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/3party.wml -------------------------------------------------------------------------------- /web/fb-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/fb-logo.png -------------------------------------------------------------------------------- /web/mrtg-l.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/mrtg-l.gif -------------------------------------------------------------------------------- /web/mrtg-l.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/mrtg-l.png -------------------------------------------------------------------------------- /web/mrtg-m.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/mrtg-m.gif -------------------------------------------------------------------------------- /web/mrtg-m.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/mrtg-m.png -------------------------------------------------------------------------------- /web/mrtg-r.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/mrtg-r.gif -------------------------------------------------------------------------------- /web/mrtg-r.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/mrtg-r.png -------------------------------------------------------------------------------- /web/images/px.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/images/px.gif -------------------------------------------------------------------------------- /web/logos/psw.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/logos/psw.jpg -------------------------------------------------------------------------------- /web/mrtgbook.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/mrtgbook.jpg -------------------------------------------------------------------------------- /web/support/navbar.inc: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/bin/rateup.nlm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/bin/rateup.nlm -------------------------------------------------------------------------------- /src/doc/mrtg-l.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/doc/mrtg-l.gif -------------------------------------------------------------------------------- /src/doc/mrtg-l.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/doc/mrtg-l.png -------------------------------------------------------------------------------- /src/doc/mrtg-m.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/doc/mrtg-m.gif -------------------------------------------------------------------------------- /src/doc/mrtg-m.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/doc/mrtg-m.png -------------------------------------------------------------------------------- /src/doc/mrtg-r.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/doc/mrtg-r.gif -------------------------------------------------------------------------------- /src/doc/mrtg-r.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/doc/mrtg-r.png -------------------------------------------------------------------------------- /src/doc/mrtg-ti.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/doc/mrtg-ti.png -------------------------------------------------------------------------------- /src/translate/cn.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/cn.pmd -------------------------------------------------------------------------------- /src/translate/gb.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/gb.pmd -------------------------------------------------------------------------------- /web/award-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/award-white.png -------------------------------------------------------------------------------- /web/cast/contrib.inc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/cast/contrib.inc -------------------------------------------------------------------------------- /web/images/minus.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/images/minus.gif -------------------------------------------------------------------------------- /web/images/plus.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/images/plus.gif -------------------------------------------------------------------------------- /web/inc/IE7/ie7.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/inc/IE7/ie7.gif -------------------------------------------------------------------------------- /web/inc/button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/inc/button.png -------------------------------------------------------------------------------- /web/inc/button.xar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/inc/button.xar -------------------------------------------------------------------------------- /web/inc/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/inc/favicon.ico -------------------------------------------------------------------------------- /web/inc/template.inc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/inc/template.inc -------------------------------------------------------------------------------- /web/logos/nagios.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/logos/nagios.png -------------------------------------------------------------------------------- /web/logos/zenoss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/logos/zenoss.png -------------------------------------------------------------------------------- /src/doc/mrtg-squid.pod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/doc/mrtg-squid.pod -------------------------------------------------------------------------------- /src/images/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/images/favicon.ico -------------------------------------------------------------------------------- /src/images/mrtg-l.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/images/mrtg-l.gif -------------------------------------------------------------------------------- /src/images/mrtg-l.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/images/mrtg-l.png -------------------------------------------------------------------------------- /src/images/mrtg-m.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/images/mrtg-m.gif -------------------------------------------------------------------------------- /src/images/mrtg-m.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/images/mrtg-m.png -------------------------------------------------------------------------------- /src/images/mrtg-r.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/images/mrtg-r.gif -------------------------------------------------------------------------------- /src/images/mrtg-r.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/images/mrtg-r.png -------------------------------------------------------------------------------- /src/images/mrtg-ti.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/images/mrtg-ti.gif -------------------------------------------------------------------------------- /src/images/mrtg-ti.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/images/mrtg-ti.png -------------------------------------------------------------------------------- /src/translate/big5.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/big5.pmd -------------------------------------------------------------------------------- /web/images/foot_px.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/images/foot_px.gif -------------------------------------------------------------------------------- /web/images/spacer.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/images/spacer.gif -------------------------------------------------------------------------------- /web/inc/IE7/blank.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/inc/IE7/blank.gif -------------------------------------------------------------------------------- /web/inc/happy-tobi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/inc/happy-tobi.png -------------------------------------------------------------------------------- /web/logos/kanetix.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/logos/kanetix.png -------------------------------------------------------------------------------- /src/contrib/ovmrtg/ovtgts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/ovmrtg/ovtgts -------------------------------------------------------------------------------- /src/contrib/whodo/README: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/whodo/README -------------------------------------------------------------------------------- /src/translate/chinese.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/chinese.pmd -------------------------------------------------------------------------------- /src/translate/czech.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/czech.pmd -------------------------------------------------------------------------------- /src/translate/eucjp.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/eucjp.pmd -------------------------------------------------------------------------------- /src/translate/gb2312.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/gb2312.pmd -------------------------------------------------------------------------------- /src/translate/greek.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/greek.pmd -------------------------------------------------------------------------------- /src/translate/korean.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/korean.pmd -------------------------------------------------------------------------------- /src/translate/russian.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/russian.pmd -------------------------------------------------------------------------------- /src/translate/serbian.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/serbian.pmd -------------------------------------------------------------------------------- /src/translate/slovak.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/slovak.pmd -------------------------------------------------------------------------------- /src/translate/swedish.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/swedish.pmd -------------------------------------------------------------------------------- /src/translate/turkish.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/turkish.pmd -------------------------------------------------------------------------------- /web/images/arr_black.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/images/arr_black.gif -------------------------------------------------------------------------------- /web/images/arr_white.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/images/arr_white.gif -------------------------------------------------------------------------------- /web/images/foot_logo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/images/foot_logo.gif -------------------------------------------------------------------------------- /web/images/mrtg_logo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/images/mrtg_logo.gif -------------------------------------------------------------------------------- /web/inc/silver-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/inc/silver-logo.png -------------------------------------------------------------------------------- /web/logos/terreactive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/logos/terreactive.png -------------------------------------------------------------------------------- /src/contrib/apc_ups/ups.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/apc_ups/ups.cfg -------------------------------------------------------------------------------- /src/translate/bulgarian.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/bulgarian.pmd -------------------------------------------------------------------------------- /src/translate/croatian.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/croatian.pmd -------------------------------------------------------------------------------- /src/translate/icelandic.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/icelandic.pmd -------------------------------------------------------------------------------- /src/translate/norwegian.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/norwegian.pmd -------------------------------------------------------------------------------- /src/translate/romanian.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/romanian.pmd -------------------------------------------------------------------------------- /src/translate/ukrainian.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/ukrainian.pmd -------------------------------------------------------------------------------- /web/inc/IE7/test-trans.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/inc/IE7/test-trans.png -------------------------------------------------------------------------------- /web/logos/serverscheck.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/logos/serverscheck.png -------------------------------------------------------------------------------- /web/snmpv1-is-too-slow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/snmpv1-is-too-slow.png -------------------------------------------------------------------------------- /src/contrib/TTrafic/readme.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/TTrafic/readme.txt -------------------------------------------------------------------------------- /src/contrib/jm/mrtg-jm.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/jm/mrtg-jm.tar.gz -------------------------------------------------------------------------------- /src/contrib/monitor/config.asp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/monitor/config.asp -------------------------------------------------------------------------------- /src/contrib/monitor/login.asp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/monitor/login.asp -------------------------------------------------------------------------------- /src/contrib/mrtgrq/cubprev.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/mrtgrq/cubprev.gif -------------------------------------------------------------------------------- /src/contrib/mrtgrq/grnball.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/mrtgrq/grnball.gif -------------------------------------------------------------------------------- /src/contrib/mrtgrq/redball.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/mrtgrq/redball.gif -------------------------------------------------------------------------------- /src/contrib/rdlog2/readme.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/rdlog2/readme.html -------------------------------------------------------------------------------- /src/lib/mrtg2/Pod/Checker.pm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/lib/mrtg2/Pod/Checker.pm -------------------------------------------------------------------------------- /src/translate/lithuanian.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/lithuanian.pmd -------------------------------------------------------------------------------- /src/translate/macedonian.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/macedonian.pmd -------------------------------------------------------------------------------- /src/translate/russian1251.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/russian1251.pmd -------------------------------------------------------------------------------- /web/images/arr_black_right.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/images/arr_black_right.gif -------------------------------------------------------------------------------- /src/contrib/TTrafic/TTraffic.asp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/TTrafic/TTraffic.asp -------------------------------------------------------------------------------- /src/contrib/iptables_acc/README: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/iptables_acc/README -------------------------------------------------------------------------------- /src/contrib/monitor/Monitor.mdb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/monitor/Monitor.mdb -------------------------------------------------------------------------------- /src/contrib/monitor/default.asp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/monitor/default.asp -------------------------------------------------------------------------------- /src/contrib/monitor/monitor.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/monitor/monitor.html -------------------------------------------------------------------------------- /src/translate/german.pmd.backup: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/german.pmd.backup -------------------------------------------------------------------------------- /src/translate/ukrainian1251.pmd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/translate/ukrainian1251.pmd -------------------------------------------------------------------------------- /web/192.33.92.249_fa4_1-day.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/192.33.92.249_fa4_1-day.png -------------------------------------------------------------------------------- /web/logos/mrtg_sensorgateway.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/logos/mrtg_sensorgateway.png -------------------------------------------------------------------------------- /web/logos/opennmscolorgroup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/logos/opennmscolorgroup.png -------------------------------------------------------------------------------- /web/trac.wml: -------------------------------------------------------------------------------- 1 | 3 | 4 | __TRAC__ 5 | -------------------------------------------------------------------------------- /src/contrib/cisco_ipaccounting/TODO: -------------------------------------------------------------------------------- 1 | TODO - cisco_ip_acc_collect.pl 2 | 3 | * Make the script multi router capable 4 | -------------------------------------------------------------------------------- /src/contrib/monitor/images/msie.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/monitor/images/msie.gif -------------------------------------------------------------------------------- /src/contrib/net-hosts/cubprev.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/net-hosts/cubprev.gif -------------------------------------------------------------------------------- /src/contrib/net-hosts/grnball.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/net-hosts/grnball.gif -------------------------------------------------------------------------------- /src/contrib/net-hosts/redball.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/net-hosts/redball.gif -------------------------------------------------------------------------------- /src/contrib/iptables_acc_snmp/README: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/iptables_acc_snmp/README -------------------------------------------------------------------------------- /src/contrib/monitor/images/mrtg-l.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/monitor/images/mrtg-l.gif -------------------------------------------------------------------------------- /src/contrib/monitor/images/mrtg-m.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/monitor/images/mrtg-m.gif -------------------------------------------------------------------------------- /src/contrib/monitor/images/mrtg-r.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/monitor/images/mrtg-r.gif -------------------------------------------------------------------------------- /src/contrib/monitor/images/msprod.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/monitor/images/msprod.gif -------------------------------------------------------------------------------- /src/contrib/monitor/images/spacer.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/monitor/images/spacer.gif -------------------------------------------------------------------------------- /src/contrib/mrtgmk/smrtgmk: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | #this is an example of using mrtgmk 4 | 5 | clear 6 | ./mrtgmk cfg/a.cfg 7 | -------------------------------------------------------------------------------- /web/logos/logo_plixer_blue101x51.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/logos/logo_plixer_blue101x51.gif -------------------------------------------------------------------------------- /web/support/index.inc: -------------------------------------------------------------------------------- 1 |
mrtg-forum
Interactive Help for MRTG users 2 |
3 | -------------------------------------------------------------------------------- /src/contrib/monitor/images/mrtg-ti.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/monitor/images/mrtg-ti.gif -------------------------------------------------------------------------------- /web/inc/IE7/ie7-load.htc: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /web/logos/poweradmin_server_monitor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/web/logos/poweradmin_server_monitor.png -------------------------------------------------------------------------------- /src/contrib/TotalControlModem/example.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/TotalControlModem/example.txt -------------------------------------------------------------------------------- /src/contrib/cisco_ipaccounting/CHANGELOG: -------------------------------------------------------------------------------- 1 | CHANGELOG cisco_ip_acc_collect.pl 2 | 3 | - V0.9 20-Sep-1999 Initial Public Release 4 | -------------------------------------------------------------------------------- /src/contrib/mrtgrq/Net-Telnet-3.02.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/mrtgrq/Net-Telnet-3.02.tar.gz -------------------------------------------------------------------------------- /src/contrib/ovmrtg/installov: -------------------------------------------------------------------------------- 1 | perl installov.pl installov.cmds ovsho ovadd ovdel ovtst ovcvtfile ovcullfile mrtgmenu cfgmakerov 2 | -------------------------------------------------------------------------------- /web/.wmkrc: -------------------------------------------------------------------------------- 1 | -o LANG_VAR:%BASE.var 2 | -o (ALL-LANG_*)+LANG_EN:%BASE.en.html@ug+x 3 | #-o (ALL-LANG_*)+LANG_DE:%BASE.de.html@ug+x 4 | -------------------------------------------------------------------------------- /src/contrib/cisco_ipaccounting/networks: -------------------------------------------------------------------------------- 1 | 192.168.3.0/28 Dummy 2 | 192.168.2.12/32 Dummy 3 | 10.10.1.0/27 Sample 4 | 172.1.0.1/32 Test 5 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/logo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oetiker/mrtg/HEAD/src/contrib/whodo/GIFgraph/GIFgraph/samples/logo.gif -------------------------------------------------------------------------------- /src/contrib/mrtgmk/cfg/alias.cfg: -------------------------------------------------------------------------------- 1 | 0 CHECK4ALIAS yes 2 | 0 ALIAS date 07/12/1999 3 | 0 ALIAS time 12:25 am 4 | 0 ALIAS author Iulian Radu (iulian_r@starnets.ro) -------------------------------------------------------------------------------- /src/contrib/nt_n_cisco/RUN_builder.bat: -------------------------------------------------------------------------------- 1 | REM should look like this : builder.bat you-devicename-here public 10.0.0.2 2 | 3 | builder.bat %1 %2 %3 4 | 5 | exit -------------------------------------------------------------------------------- /src/contrib/mrtgmk/cfg/hosts.cfg: -------------------------------------------------------------------------------- 1 | 0 CFGDIR cfg 2 | 0 DEFHOST pc1 192.168.10.1.cfg serial0 3 | 0 DEFHOST pc2 192.168.10.1.cfg serial2 4 | 0 DEFHOST pc3 192.168.10.1.cfg serial3 5 | -------------------------------------------------------------------------------- /src/contrib/mrtg-mail/services-dist: -------------------------------------------------------------------------------- 1 | # You can add this simply by doing "cat services-dist >> /etc/services" 2 | 3 | smtp-stats 7256/tcp # smtp-stats 4 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/cfg/misc.cfg: -------------------------------------------------------------------------------- 1 | 0 MSG cfg file made by %author% 2 | 0 BASE traffic.isp.ro 3 | 4 | 0 MSG pc1 is %HOST_pc1% 5 | 0 MSG pc2 is %HOST_pc2% 6 | 0 MSG pc3 is %HOST_pc3% 7 | -------------------------------------------------------------------------------- /web/doc/index.wml: -------------------------------------------------------------------------------- 1 | 3 | 4 |

MRTG Documentation

5 | 6 |
7 | #include "index.inc" 8 |
9 | -------------------------------------------------------------------------------- /web/site-sync: -------------------------------------------------------------------------------- 1 | rsync --exclude="bin/lib/**" --copy-unsafe-links --verbose --times --delete --exclude pub --exclude='*~' --exclude=".svn" --exclude=".condor" -r . oposs@freddie:public_html/mrtg 2 | -------------------------------------------------------------------------------- /src/contrib/whodo/sources: -------------------------------------------------------------------------------- 1 | 203.167.223.13[456] Exchange 2 | 203.167.216.32 Exchange 3 | 203.167.216.(25|48|5[56]|199) PlOps_Monitoring 4 | 172 DFAT_Addresses 5 | 192.168.[23][0-9] Test_Nets 6 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | DEADJOE 2 | *~ 3 | autom4te.cache 4 | rateup.exe 5 | config.h 6 | config.log 7 | config.status 8 | install-sh 9 | *.1 10 | *.3 11 | *.gz 12 | *.o 13 | *.zip 14 | *.md5 15 | rateup 16 | -------------------------------------------------------------------------------- /src/contrib/ircstats/README: -------------------------------------------------------------------------------- 1 | ircstats.pl is the simple perl script I use to monitor client 2 | loads and such on various EFnet IRC servers. 3 | 4 | - Matt Ramsey (MR227) mjr@geeks.org, mjr@nin.com 5 | 6 | 7 | -------------------------------------------------------------------------------- /src/contrib/ovmrtg/ovin: -------------------------------------------------------------------------------- 1 | mv cwdrtr1.cfg cwdrtr1.$1 2 | mv sydrtr2.cfg sydrtr2.$1 3 | mv sydrtr3.cfg sydrtr3.$1 4 | mv cwdrtr1.$2 cwdrtr1.cfg 5 | mv sydrtr2.$2 sydrtr2.cfg 6 | mv sydrtr3.$2 sydrtr3.cfg 7 | -------------------------------------------------------------------------------- /src/contrib/IxDisk/README: -------------------------------------------------------------------------------- 1 | From: Miroslaw.Maczka@bze.com.pl 2 | 3 | This is my script for monitoring database activity, database is Informix 4 | version 5, system is Hewlett-Packard unix (hp-ux), versions 9,10,11. 5 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/src/parse.ftbl: -------------------------------------------------------------------------------- 1 | /* 2 | Iulian Radu [v2.0@07.1999] 3 | */ 4 | 5 | typedef void (*fnct)(char* buf); 6 | 7 | struct fncttbl{ 8 | char* cmd; 9 | fnct func; 10 | }; 11 | 12 | -------------------------------------------------------------------------------- /src/contrib/nt_n_cisco/queryone.bat: -------------------------------------------------------------------------------- 1 | 2 | e: 3 | 4 | cd\ 5 | cd\mrtg\run 6 | sleep.exe 5 7 | 8 | %perlbin%\perl.exe %mrtgbin%\mrtg %mrtgcfgbin%\%1.cfg 9 | 10 | cd\mrtg\prod\bats 11 | 12 | EXIT -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample42.dat: -------------------------------------------------------------------------------- 1 | 1st,undef,60 2 | 2nd,52,61 3 | 3rd,53,61 4 | 4th,54,undef 5 | 5th,55,68 6 | 6th,56,66 7 | 7th,undef,65 8 | 8th,58,61 9 | 9th,59,undef 10 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/cfg/page1.cfg: -------------------------------------------------------------------------------- 1 | 0 HTMLFILE cfg/page1.html 2 | 1 HTMLCODE

PC from local network - links

3 | 1 DATA pc1 PC1 Trafic analyses 4 | 1 DATA pc2 PC2 Trafic analyses 5 | 1 DATA pc3 PC3 Trafic analyses 6 | -------------------------------------------------------------------------------- /src/contrib/ovmrtg/buildht: -------------------------------------------------------------------------------- 1 | #This file builds the HTML for each device being monitored 2 | cd /opt/mrtg/run/ 3 | #perl index sydrtr1.cfg "Router sydrtr1" sydrtr1 > /var/opt/ns-fasttrack/docs/mrtg/sydrtr1/sydrtr1.html 4 | -------------------------------------------------------------------------------- /src/contrib/exim-stats/email-queue1: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | QUEUELEN=`finger @$1 | grep 'Number of messages currently in the queue:' | awk '{print $8}'` 4 | echo $QUEUELEN 5 | echo 0 6 | echo sometime 7 | echo $1-email-queue 8 | 9 | -------------------------------------------------------------------------------- /src/contrib/stat/dns_mrtg: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # $Id: dns_mrtg,v 1.1.1.1 2002/02/26 10:16:37 oetiker Exp $ 3 | #thnis file should be run by cron 4 | DIRECTORY/TO/THIS/SCRIPT/dns.named 5 | /PATH/TO/MRTG/mrtg PATH/TO/MRTG.CFG/mrtg.cfg 6 | -------------------------------------------------------------------------------- /web/inc/IE7/ie7-base64.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/contrib/mrtg-mail/inetd.conf-dist: -------------------------------------------------------------------------------- 1 | # smtp stats for mrtg 2 | # you can add this simply by doing "cat inetd.conf-dist >>/etc/inetd.conf" 3 | 4 | smtp-stats stream tcp nowait root /opt/local/bin/smtp-stats smtp-stats 5 | 6 | -------------------------------------------------------------------------------- /src/contrib/nt_n_cisco/cisco_devices_to_poll.txt: -------------------------------------------------------------------------------- 1 | routername1 public 127.0.0.2 2 | routername2 public 127.0.0.3 3 | routername3 public 127.0.0.4 4 | routername4 public 127.0.0.5 5 | routername5 public 127.0.0.6 6 | routername6 public 127.0.0.7 7 | -------------------------------------------------------------------------------- /src/translate/README: -------------------------------------------------------------------------------- 1 | If you want to translate mrtg into a new language, use the file 2 | german.pmd as a sample ... you can then integrate your translation 3 | into locales_mrtg.pm by running 4 | 5 | ./mergelocale.pl skeleton.pm0 *.pmd 6 | 7 | 8 | -------------------------------------------------------------------------------- /src/contrib/14all/README: -------------------------------------------------------------------------------- 1 | Because Rainer is very active in fixing bugs and enhancing 14all.cgi. 2 | Please go to his website to fetch the latest version of his cool 3 | tool: 4 | 5 | http://my14all.sourceforge.net/ 6 | 7 | 8 | cheers 9 | tobi 10 | -------------------------------------------------------------------------------- /src/contrib/mrtg-mail/smtp-stats: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # smtp-stats: invoke mailstats from a wrapper for use in inetd. 4 | # 5 | PATH=/bin:/sbin 6 | if [ -x "/bin/mailstats" ] 7 | then 8 | exec /bin/mailstats -f/etc/mail/sendmail.st 9 | fi 10 | -------------------------------------------------------------------------------- /web/cast/build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | perl -n -e 's/Tobi//;s/\s*[&+]\s*//;s/\s+and\s+//; /^From:\s*(\S+\s\S+)/i && do { $x=$1; $x =~ s/\s*<.+//;$x =~ s/"//g; $x=~ s/\s*location\s*$//; print "$x;\n"}' /home/oetiker/checkouts/mrtg/src/CHANGES | sort -u >contrib.inc 3 | -------------------------------------------------------------------------------- /src/translate/fixer: -------------------------------------------------------------------------------- 1 | $x=' 2 | foreach $i (keys %translations) 3 | { 4 | my $trans = $translations{$i}; 5 | $trans =~ s/\|/\\|/; 6 | return $string if eval " \$string =~ s|\${i}|${trans}| "; 7 | }; 8 | 9 | %wday'; 10 | 11 | s/foreach.+?wday/$x/s; 12 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/cfg/links.cfg: -------------------------------------------------------------------------------- 1 | # use the same directory like the one defined in mrtg_cfg 2 | 0 MKLINK cfg/link_pc1 pc1 /usr/tardis/pub/www/stats/mrtg 3 | 0 MKLINK cfg/link_pc2 pc2 /usr/tardis/pub/www/stats/mrtg 4 | 0 MKLINK cfg/link_pc3 pc3 /usr/tardis/pub/www/stats/mrtg 5 | -------------------------------------------------------------------------------- /src/contrib/routers/README: -------------------------------------------------------------------------------- 1 | Folks, 2 | 3 | Steve is much faster with putting out new versions of his great tools, than 4 | I can release new versions of mrtg ... so please fetch hist stuff from 5 | 6 | http://www.steveshipway.org/software/ 7 | 8 | cheers 9 | tobi 10 | -------------------------------------------------------------------------------- /src/contrib/snmpping/README: -------------------------------------------------------------------------------- 1 | From: x 2 | 3 | 4 | I came up with a diagnostic tool called snmpping.pl to make sure I have the 5 | right information on a device. I have posted it bellow. It just goes out 6 | and grabs a gid and displays it on the screen. 7 | 8 | -------------------------------------------------------------------------------- /web/404.wml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 |

Sorry this page does not exist

6 | 7 |

The MRTG website has been restructured. 8 | Most things are still around, but probably under a new address.

9 | 10 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/src/parsen.ftbl: -------------------------------------------------------------------------------- 1 | /* 2 | Iulian Radu [v2.0@07.1999] 3 | */ 4 | 5 | struct fncttbl parsen_ftbl[]={ 6 | {"HTMLCODE",fhtmlcoden}, 7 | {"HTMLLINK",fhtmllinkn}, 8 | {"LINK2DH",flink2dhn}, 9 | {"DATA",fdata} 10 | }; 11 | 12 | #define NEFTBLn 4 13 | -------------------------------------------------------------------------------- /src/contrib/nt_n_cisco/make_all_cisco_configs.bat: -------------------------------------------------------------------------------- 1 | 2 | Set hostsfile=e:\cisco_devices_to_poll.txt 3 | 4 | Set PARSEARG="eol=; tokens=1,2,3* delims=:, " 5 | 6 | 7 | For /F %PARSEARG% %%i in (%hostsfile%) Do START /BELOWNORMAL e:\mrtg\prod\bats\RUN_builder.bat %%i %%j %%k 8 | 9 | 10 | exit 11 | -------------------------------------------------------------------------------- /src/contrib/linux_stat/readme: -------------------------------------------------------------------------------- 1 | 2 | I could not find a simple script to get the current traffic off a linux 3 | machine, so in open source sprit, I wrote my own. Here it is to share with 4 | all those looking for such a tool. 5 | 6 | Mike Machado 7 | mike@innercite.com 8 | InnerCite 9 | Network Specialist 10 | -------------------------------------------------------------------------------- /src/contrib/nt_n_cisco/RunCcfgs.cmd: -------------------------------------------------------------------------------- 1 | @ECHO OFF 2 | @set lDir=e:\mrtg\prod\bats 3 | @Set hostsfile=e:\cisco_devices_to_poll.txt 4 | 5 | @Set PARSEARG="eol=; tokens=1,2,3* delims=:, " 6 | 7 | 8 | @For /F %PARSEARG% %%i in (%hostsfile%) Do START /BELOWNORMAL %lDir%\queryone.bat %%i 9 | 10 | 11 | @exit 12 | -------------------------------------------------------------------------------- /src/contrib/get-equi/README: -------------------------------------------------------------------------------- 1 | From: Mike Gaertner 2 | Date: Tue, 25 Apr 2000 19:06:52 +0700 (ICT) 3 | 4 | The Equinox SST card does not provide SNMP support. Therefor I wrote a 5 | small perl script which reads out the byte counter from the Equinox SST 6 | board. 7 | 8 | Regards Mike Gaertner 9 | 10 | -------------------------------------------------------------------------------- /web/build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | SITEROOT=`pwd` 3 | PODPATH=`ls */build.sh | sed -e 's|/.*||g' | perl -0777 -e 'print join ":", map {"$_"} split /\n/, <>'` 4 | export SITEROOT PODPATH 5 | rm */pod*tmp 6 | for x in `ls */build.sh | sed 's|/.*||g'`; do 7 | echo '****' $x '****' 8 | (cd $x;./build.sh) 9 | done 10 | 11 | 12 | -------------------------------------------------------------------------------- /web/nabble-mrtg.wml: -------------------------------------------------------------------------------- 1 | 3 | MRTG Mailinglists 4 | {#H1#: 5 | MRTG Mailinglists 6 | 7 | :#H1#} 8 | 9 | -------------------------------------------------------------------------------- /src/contrib/gentcucci-1.0.0/nmcs.list: -------------------------------------------------------------------------------- 1 | # NMC's for Temperature monitoring. 2 | # 3 | # format 4 | # 5 | # ip_name:description 6 | # 7 | # example 8 | # 9 | # tc1b.i40:Coshocton 1 (tc1b.i40) 10 | # tc1.i40 Ping host 11 | # Coshocton 1 (tc1b.i40) Title for device 12 | # 13 | tc1b.i40:Coshocton TC (tc1.i40) 14 | tc1b.nwk:Newark TC (tc1.nwk) 15 | -------------------------------------------------------------------------------- /src/contrib/apc_ups/README: -------------------------------------------------------------------------------- 1 | From: Klaus_Klein@mckinsey.com 2 | Date: Thu, 3 May 2001 16:31:45 +0200 3 | 4 | Hi tobias, 5 | 6 | As suggested, I send you some of my configuration files: these ones are 7 | using a PERL script to extract the load % and remaining battery time from 8 | APC UPS systems. 9 | prerequisite: have PERL and an SNMP suite installed. 10 | -------------------------------------------------------------------------------- /src/contrib/exim-stats/email-totals1: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | finger @$1 > /tmp/$1 4 | 5 | IN=`grep "Number of messages received so far today:" /tmp/$1 | awk '{print $8}'` 6 | OUT=`grep "Number of messages delivered so far today:" /tmp/$1 | awk '{print $8}'` 7 | 8 | echo $IN 9 | echo $OUT 10 | date "+%H hours and %M minutes" 11 | echo $1-email-totals 12 | 13 | -------------------------------------------------------------------------------- /src/contrib/mrtg-mail/mqueue: -------------------------------------------------------------------------------- 1 | #!/store/bin/perl 2 | # simple mqueue done with find2perl 3 | 4 | $hostname = "apollo"; 5 | 6 | require "find.pl"; 7 | # Traverse desired filesystems 8 | $counter = 0; 9 | &find('/var/spool/mqueue/'); 10 | sub wanted { 11 | /^qf.*$/ && 12 | $counter++; 13 | } 14 | chomp $counter; 15 | print "0\n$counter\n1\n$hostname\n"; 16 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/cfg/page2.cfg: -------------------------------------------------------------------------------- 1 | 0 HTMLFILE cfg/page2.html 2 | 0 HTMLCODE

PC from local network - overview

3 | 0 HTMLCODE PC1 Trafic analyses
4 | 0 GIFD # pc1 5 | 0 HTMLCODE

6 | 0 HTMLCODE PC2 Trafic analyses
7 | 0 GIFD # pc2 8 | 0 HTMLCODE

9 | 0 HTMLCODE PC3 Trafic analyses
10 | 0 GIFD # pc3 11 | 0 HTMLCODE

12 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/cfg/convert.cfg: -------------------------------------------------------------------------------- 1 | # We have here cfg/ appended in front of each file path because 2 | # all this files are relative to the directory from where we 3 | # start the mrtgmk. 4 | 5 | 0 MRTG.CFG mrtg.cfg mrtg_cfg 6 | 0 MSG 7 | 0 MSG I change the files name 8 | 0 CONVIP2NAME /usr/tardis/pub/www/stats/mrtg/ 9 | 0 CHNGTRGNAME yes 10 | 0 INCLUDE hosts.cfg 11 | 0 MSG 12 | -------------------------------------------------------------------------------- /src/t/translation.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use warnings; 3 | 4 | use Test::More tests => 1; 5 | 6 | use FindBin; 7 | use lib "${FindBin::Bin}/../lib/mrtg2"; 8 | use locales_mrtg "0.08"; 9 | 10 | my $LOC = $lang2tran::LOCALE{"brazilian"}; 11 | unlike( &$LOC("The statistics were last updated Terça, 26 de Outubro"), 12 | qr/Saíubro/, "Issue #74"); 13 | 14 | -------------------------------------------------------------------------------- /web/.wmlrc: -------------------------------------------------------------------------------- 1 | -DROOT~. 2 | 3 | ############################### 4 | # Language setup 5 | -DLANGS="en" 6 | 7 | ############################### 8 | 9 | #-I/home/eedesign/public_html 10 | # last has priority 11 | -I. 12 | 13 | -E $(ROOT)/bin/htmlfix.sh 14 | -P $(ROOT)/bin/headfix.pl 15 | 16 | # tune mp4h behaviour (expansion 0 means complain about everything) 17 | -W "2,--expansion=0" 18 | -------------------------------------------------------------------------------- /src/contrib/gentcucci-1.0.0/mrtg_autorun: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # Should be run every n minutes (generally either 5 or 10) in cron as in the 4 | # crontab example below... 5 | # 6 | # */5 * * * * /home/autorun/bin/mrtg_autorun 7 | # 8 | # Edit the paths for your system's needs. 9 | # 10 | cd /usr/local/mrtg/local-config 11 | 12 | gentcucci 13 | ../run/mrtg mrtg.tcusercount.cfg 14 | ../run/mrtg mrtg.tcdegree.cfg 15 | -------------------------------------------------------------------------------- /src/contrib/meminfo/README: -------------------------------------------------------------------------------- 1 | From: Colin Tinker 2 | Date: Sat, 15 Jan 2000 20:23:32 -0000 3 | 4 | You may like to include the perl script below in the next 5 | release someone may find it useful. It checks /proc/meminfo for the used 6 | and free memory parsing it out for MRTG. it is my first attempt at a perl 7 | program so if any one can suggest any improvements feel free. 8 | 9 | Colin Tinker 10 | -------------------------------------------------------------------------------- /web/bin/headfix.pl: -------------------------------------------------------------------------------- 1 | #!/usr/sepp/bin/perl-5.8.8 2 | undef $/; #slurp alll 3 | $_ = <>; 4 | while (s/]+))/|#include PAGE="$VAL{PAGE}" AUTHOR="$VAL{AUTHOR}" TYPE="$VAL{TYPE}"\n|si; 13 | 14 | print; 15 | 16 | -------------------------------------------------------------------------------- /src/contrib/apc_ups/upsdata01.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | # 3 | # Script to convert runtime MIB variable for UPS into minutes 4 | 5 | $a=`/usr/bin/snmpget .1.3.6.1.4.1.318.1.1.1.2.2.3.0`; 6 | chomp $a; 7 | @b=split(/ /,$a); 8 | @c=split(/:/,$b[4]); 9 | @d=split(/ /,`/usr/bin/snmpget .1.3.6.1.4.1.318.1.1.1.4.2.3.0`); 10 | chomp $d; 11 | print eval($c[0] * 60 + $c[1]),"\n"; 12 | print $d[3]; -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample11.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 1-1 4 | 5 | 6 | 7 |

GIFgraph.pm - example 1-1

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample12.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 1-2 4 | 5 | 6 | 7 |

GIFgraph.pm - example 1-2

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample13.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 1-3 4 | 5 | 6 | 7 |

GIFgraph.pm - example 1-3

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample14.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 1-4 4 | 5 | 6 | 7 |

GIFgraph.pm - example 1-4

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample15.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 1-4 4 | 5 | 6 | 7 |

GIFgraph.pm - example 1-5

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample21.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 2-1 4 | 5 | 6 | 7 |

GIFgraph.pm - example 2-1

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample51.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 5-1 4 | 5 | 6 | 7 |

GIFgraph.pm - example 5-1

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample52.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 5-2 4 | 5 | 6 | 7 |

GIFgraph.pm - example 5-2

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample53.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 5-3 4 | 5 | 6 | 7 |

GIFgraph.pm - example 5-3

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample54.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 5-4 4 | 5 | 6 | 7 |

GIFgraph.pm - example 5-4

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample61.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 6-1 4 | 5 | 6 | 7 |

GIFgraph.pm - example 6-1

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample62.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 6-2 4 | 5 | 6 | 7 |

GIFgraph.pm - example 6-2

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample91.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 9-1 4 | 5 | 6 | 7 |

GIFgraph.pm - example 9-1

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample92.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 9-2 4 | 5 | 6 | 7 |

GIFgraph.pm - example 9-2

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample93.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 9-3 4 | 5 | 6 | 7 |

GIFgraph.pm - example 9-3

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/contrib/diskmon/showdisk.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | # Displays disk info to the hosts that connect to it. 3 | # 4 | # No command line options, just put it in /etc/inetd.conf as shown in 5 | # the README file. 6 | # 7 | # By Steven Micallef on the 24/4/1999. 8 | 9 | foreach $_ (`df -k | grep -v "Filesystem"`) 10 | { 11 | ($device, $size, $used, $free, $percent, $mount) = split(/\s+/); 12 | chop($percent); 13 | print "$percent\n"; 14 | } 15 | -------------------------------------------------------------------------------- /src/contrib/jm/README: -------------------------------------------------------------------------------- 1 | From: joeym@inficad.com 2 | Date: Tue, 9 Feb 1999 16:51:50 -0700 3 | 4 | 5 | Enclosed are a few perl scripts I wrote to collect stats on: # of users 6 | logged into a given shell machine, # of players on a quake server, and # of 7 | users currently reading news. 8 | 9 | They each have a little blurb in the header describing their use. 10 | 11 | -- 12 | Joey Miller 13 | Lead Programmer 14 | Inficad Communications 15 | 602.265.4423 / 888.265.4423 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/contrib/stat/dns.named: -------------------------------------------------------------------------------- 1 | #!/usr/bin/expect 2 | # $Id: dns.named,v 1.1.1.1 2002/02/26 10:16:37 oetiker Exp $ 3 | spawn ftp HOST.YOURE.DOMAIN 4 | expect "Name" 5 | send "USER\r" 6 | expect "^Password:" 7 | send "PASSWORD\r" 8 | expect "ftp>" 9 | send "cd /var/tmp\r" 10 | expect "ftp>" 11 | send "ascii\r" 12 | expect "ftp>" 13 | send "lcd DIRECTORY/WICH/STAT.pl/WILL/USE/TO/GET/NAMED.STATS\r" 14 | expect "ftp>" 15 | send "get named.stats\r" 16 | expect "ftp>" 17 | send "quit\r" 18 | sleep 4 19 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample93.pl: -------------------------------------------------------------------------------- 1 | use GIFgraph::pie; 2 | 3 | print STDERR "Processing sample 9-3\n"; 4 | 5 | @data = ( 6 | [ qw( 1st 2nd 3rd 4th 5th 6th 7th ) ], 7 | [ sort { $b <=> $a} (5.6, 2.1, 3.03, 4.05, 1.34, 0.2, 2.56) ] 8 | ); 9 | 10 | $my_graph = new GIFgraph::pie( 200, 200 ); 11 | 12 | $my_graph->set( 13 | start_angle => 90, 14 | '3d' => 0 15 | ); 16 | 17 | $my_graph->plot_to_gif( "sample93.gif", \@data ); 18 | 19 | exit; 20 | 21 | -------------------------------------------------------------------------------- /src/contrib/cpuinfo/sample.cfg: -------------------------------------------------------------------------------- 1 | Target[machine]: `./cpuinfo.pl machine os` 2 | MaxBytes[machine]: 100 3 | Options[machine]: gauge, nopercent 4 | Unscaled[machine]: dwym 5 | YLegend[machine]: % of CPU used 6 | ShortLegend[machine]: % 7 | LegendO[machine]:  CPU System: 8 | LegendI[machine]:  CPU User: 9 | Title[machine]: Machine name 10 | PageTop[machine]:

CPU usage for Machine name 11 |

12 | 13 | 14 |
System:Machine name
15 | 16 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/cfg/page1.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | Traffic analyses 5 |
6 | 7 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /src/contrib/mrtg-mail/mqueue.cfg: -------------------------------------------------------------------------------- 1 | Interval: 5 2 | #--------------------------------------------------------------- 3 | Target[mq]: `/opt/mrtg/bin/mqueue` 4 | MaxBytes[mq]: 32000 5 | AbsMax[mq]: 64000 6 | Options[mq]: gauge 7 | Title[mq]: Sendmail Statistics 8 | PageTop[mq]:

Sendmail MailQueue Statistics

9 | XSize[mq]: 500 10 | Supress[mq]: y 11 | YSize[mq]: 128 12 | WithPeak[mq]: my 13 | YLegend[mq]: No. of messages in mailq 14 | ShortLegend[mq]: Mailq 15 | LegendO[mq]:  Mailq: 16 | LegendI[mq]: 17 | -------------------------------------------------------------------------------- /src/get_ver.awk: -------------------------------------------------------------------------------- 1 | # fetch rateup version number from input file and write them to STDOUT 2 | BEGIN { 3 | while ((getline < ARGV[1]) > 0) { 4 | if (match ($0, /VERSION = "[^"]+"/)) { 5 | rateup_ver_str = substr($4, 2, length($4) - 3); 6 | split(rateup_ver_str, v, "."); 7 | gsub("[^0-9].*$", "", v[3]); 8 | rateup_ver = v[1] "," v[2] "," v[3]; 9 | } 10 | } 11 | print "RATEUP_VERSION = " rateup_ver ""; 12 | print "RATEUP_VERSION_STR = " rateup_ver_str ""; 13 | } 14 | -------------------------------------------------------------------------------- /src/contrib/IxDisk/ixdisk.cfg: -------------------------------------------------------------------------------- 1 | IconDir: /MRTG/mrtgicons/ 2 | WorkDir: /opt/hppd/etc/NCSAhttpd/MRTG/ixdisk 3 | 4 | Target[ix]: `/opt/MRTG/run/IxDisk/ixdisk.pl` 5 | Title[ix]: Informix reads and writes from disk 6 | PageTop[ix]:

Informix reads and writes from disk

7 | MaxBytes1[ix]: 2000000000 8 | MaxBytes2[ix]: 2000000000 9 | LegendI[ix]: reads  10 | LegendO[ix]: writes  11 | Legend1[ix]: reads  12 | Legend2[ix]: writes  13 | YLegend[ix]: Informix 14 | ShortLegend[ix]: # 15 | 16 | -------------------------------------------------------------------------------- /src/contrib/GetSNMPLinesUP/INSTALL: -------------------------------------------------------------------------------- 1 | 2 | Read the docs from MRTG :). Learn to use MRTG :). 3 | 4 | Change "ADMINDIR" in the Makefile to where you want to put the 5 | executable and the tables. 6 | 7 | Change "$SNMPGet", "$TableBase" and "$Community" in GetSNMPLinesUP.pl 8 | for your correct values. 9 | 10 | See sample.cfg for a sample configuration entry of a machine with some 11 | modems connected. 12 | 13 | See ModemTable.dial-machine for the corresponding variables to check 14 | in this sample. 15 | 16 | -------------------------------------------------------------------------------- /src/contrib/cfgmaker_ATM/README: -------------------------------------------------------------------------------- 1 | From: Henry Steinhauer 2 | Date: Tue, 15 Jun 1999 17:00:07 -0500 3 | 4 | This is gutted code from the other CFGmaker_ATM.pl code. 5 | 6 | This will pull the information from the Bay MIB for the SVC ATM setup and 7 | then create a target for each channel in the ATM that is defined. 8 | 9 | The Targets created can be sorted in the Indexmaker such that the Named ATM 10 | channel will have all the Subchannels grouped together. 11 | 12 | Enjoy. 13 | Henry Steinhauer 14 | -------------------------------------------------------------------------------- /src/src/strftime.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** STRFTIME.H - For older compilers which lack strftime() 3 | ** 4 | ** Note: To avoid name collision with newer compilers, the function name 5 | ** strftime_() is used. 6 | */ 7 | 8 | #ifndef STRFTIME__H 9 | #define STRFTIME__H 10 | 11 | #include /* for size_t */ 12 | #include /* for struct tm */ 13 | 14 | size_t strftime_(char *s, size_t maxs, const char *f, const struct tm *t); 15 | 16 | extern char * tzname_[2]; 17 | 18 | #endif /* STRFTIME__H */ 19 | -------------------------------------------------------------------------------- /src/contrib/nt_n_cisco/builder.bat: -------------------------------------------------------------------------------- 1 | set target=%1 2 | set snmpStr=%2 3 | set targetIP=%3 4 | set NewDir=%mrtgwebroot%\%target% 5 | set mrtgcurr=e:\mrtg\prod\bats 6 | 7 | e: 8 | cd\ 9 | MD %NewDir% 10 | if not exist %mrtgwebroot%\%target%\default.asp copy %mrtgcurr%\default.asp %mrtgwebroot%\%target%\default_fixme.asp 11 | 12 | cd %mrtgbin% 13 | %perlbin%\perl %mrtgbin%\cfgmaker --workdir %mrtgwebroot%\%target% %snmpstr%@%targetIP% > %Mrtgcfgbin%\%target%.cfg 14 | 15 | 16 | 17 | e: 18 | cd\mrtg\prod\bats 19 | exit -------------------------------------------------------------------------------- /src/contrib/mrtg-archiver-script/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | MRTG Statistics Archive 4 | 5 | 6 |

MRTG Statistics Archive

7 | 13 |
14 | MRTG Statistics Archiver by Krot. 15 | 16 | 17 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample41.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 4-1 4 | 5 | 6 | 7 |

GIFgraph.pm - example 4-1

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 |
NOTES
20 | Note that both data sets have a point missing. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample31.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 3-1 4 | 5 | 6 | 7 |

GIFgraph.pm - example 3-1

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 |
NOTE
20 | Notice that the green set doesn't have an entry for the 7th point. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /src/contrib/TCH/README: -------------------------------------------------------------------------------- 1 | Date: Tue, 16 Feb 1999 16:44:12 -0700 2 | From: Eric Billeter 3 | 4 | Here are some scripts i modified to monitor the modem utilization 5 | of my USR Total control racks. They work great even though I am 6 | not a programmer. If there is anything you see that would work 7 | more efficiently it would be appreciated. 8 | The files are as follows 9 | 10 | dualt1.pl - TCH with dual t1 card. 11 | dualpri.pl - TCH with dual pri card. 12 | hiperdsp.pl - TCH with hiperdsp cards. 13 | mrtg-cfg.txt - snippet of cfg file 14 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample16.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 1-6 4 | 5 | 6 | 7 |

GIFgraph.pm - example 1-3

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 |
NOTES
20 | There was no data for the credits on the third and the debets on the 7th day. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample92.pl: -------------------------------------------------------------------------------- 1 | use GIFgraph::pie; 2 | 3 | print STDERR "Processing sample 9-2\n"; 4 | 5 | @data = ( 6 | ["1st","2nd","3rd","4th","5th","6th"], 7 | [ 4, 2, 3, 4, 3, 3.5] 8 | ); 9 | 10 | $my_graph = new GIFgraph::pie( 250, 200 ); 11 | 12 | $my_graph->set( 13 | title => 'A Pie Chart', 14 | label => 'Label', 15 | axislabelclr => 'white', 16 | dclrs => [ 'lblue' ], 17 | accentclr => 'lgray', 18 | ); 19 | 20 | $my_graph->plot_to_gif( "sample92.gif", \@data ); 21 | 22 | exit; 23 | 24 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample91.pl: -------------------------------------------------------------------------------- 1 | use GIFgraph::pie; 2 | 3 | print STDERR "Processing sample 9-1\n"; 4 | 5 | @data = ( 6 | ["1st","2nd","3rd","4th","5th","6th"], 7 | [ 4, 2, 3, 4, 3, 3.5] 8 | ); 9 | 10 | $my_graph = new GIFgraph::pie( 250, 200 ); 11 | #$my_graph = new GIFgraph::pie( ); 12 | 13 | $my_graph->set( 14 | title => 'A Pie Chart', 15 | label => 'Label', 16 | axislabelclr => 'black', 17 | pie_height => 36, 18 | ); 19 | 20 | $my_graph->plot_to_gif( "sample91.gif", \@data ); 21 | 22 | exit; 23 | 24 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample42.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | GIFgraph.pm - example 4-2 4 | 5 | 6 | 7 |

GIFgraph.pm - example 4-2

8 | 9 |
10 | 11 |

12 | 13 |

14 | 15 |

The code.

16 | 17 |
18 | 19 |
NOTES
20 | This is the same graph as sample41, but this time the data has been read from a CSV file. 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /web/support/build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | sect=doc 3 | src=/home/oetiker/checkouts/mrtg/src/ 4 | . ../bin/pod2wml.sh 5 | 6 | pod2descr() { 7 | pod=$1.pod 8 | descr=`egrep "$1 *- " $pod|head -1|sed 's/.*- //'` 9 | menu=`egrep "$1 *- " $pod|head -1|sed 's/ -.*//'` 10 | } 11 | 12 | 13 | # build probe list 14 | rm -f navbar.inc 15 | rm -f index.inc 16 | 17 | for pod in mrtg-forum.pod; do 18 | base=`echo $pod |sed 's,.pod,,'` 19 | echo $base 20 | cat $src/doc/$pod > $base.pod 21 | pod2descr $base 22 | pod2wml $base 23 | done 24 | 25 | mv mrtg-forum.wml index.wml 26 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample94.pl: -------------------------------------------------------------------------------- 1 | use GIFgraph::pie; 2 | 3 | print STDERR "Processing sample 9-4\n"; 4 | 5 | @data = ( 6 | [ qw( 1st 2nd 3rd 4th 5th 6th 7th ) ], 7 | [ sort { $b <=> $a} (5.6, 2.1, 3.03, 4.05, 1.34, 0.2, 2.56) ] 8 | ); 9 | 10 | $my_graph = new GIFgraph::pie( 260, 300 ); 11 | 12 | $my_graph->set( 13 | start_angle => 90, 14 | '3d' => 0 15 | ); 16 | 17 | $my_graph->set_legend( 'Alpha', 'Beta', 'Gamma', 'Delta', 'Epsilon', 'Forget', 'Rest'); 18 | 19 | $my_graph->plot_to_gif( "sample94.gif", \@data ); 20 | 21 | exit; 22 | 23 | -------------------------------------------------------------------------------- /src/contrib/mrtg-archiver-script/to-crontab: -------------------------------------------------------------------------------- 1 | 19 0 * * * /usr/local/lib/mrtg/mrtg-archiver -d --conf=/usr/local/lib/mrtg/mrtg.cfg --arch=/usr/lib/apache/htdocs/mrtg/archive --back=1200 2 | 19 0 * * mon /usr/local/lib/mrtg/mrtg-archiver -w --conf=/usr/local/lib/mrtg/mrtg.cfg --arch=/usr/lib/apache/htdocs/mrtg/archive --back=1200 3 | 19 0 1 * * /usr/local/lib/mrtg/mrtg-archiver -m --conf=/usr/local/lib/mrtg/mrtg.cfg --arch=/usr/lib/apache/htdocs/mrtg/archive --back=1200 4 | 19 0 1 Jan * /usr/local/lib/mrtg/mrtg-archiver -y --conf=/usr/local/lib/mrtg/mrtg.cfg --arch=/usr/lib/apache/htdocs/mrtg/archive --back=1200 -------------------------------------------------------------------------------- /web/bin/fix-hrefs.pl: -------------------------------------------------------------------------------- 1 | #!/usr/sepp/bin/perl-5.8.8 -w 2 | 3 | use strict; 4 | use HTML::Parser; 5 | 6 | my $p = HTML::Parser->new(api_version => 3); 7 | $p->handler(start => \&startsub, 'tagname, text'); 8 | #$p->handler(end => \&endsub, 'tagname, text'); 9 | $p->handler(default => sub { print shift() }, 'text'); 10 | $p->parse_file(shift||"-") or die("parse: $!"); 11 | 12 | sub startsub { 13 | my $tag = shift; 14 | my $text = shift; 15 | 16 | if ($tag eq "a") { 17 | $text =~ s,".*?/web/doc/,",; 18 | $text =~ /^http/ || $text =~ s,\.html,.en.html,; 19 | } 20 | print $text; 21 | } 22 | -------------------------------------------------------------------------------- /src/contrib/accesslistmon/examplescript: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | rsh x.x.x.x sh access-list 102 | grep icmp | grep matches | grep x.x.x.x | awk ' { print $8 }' | sed s/\(// 3 | echo "0" 4 | 5 | #The first line will rsh into the router and display access-list number 102 (this will change 6 | #depending on your config), it will grep the access-list entry type in this case 'icmp', it 7 | #will also grep the ip of the machine in question, and output the relevant information. 8 | 9 | Eg: 10 | 11 | 10 12 | 0 13 | 14 | 10 = the number of times the ACL has matched. 15 | 16 | Remember you can change this to whatever you want. 17 | -------------------------------------------------------------------------------- /src/contrib/get-active/README: -------------------------------------------------------------------------------- 1 | From leewm@hpsgmx18.sgp.hp.com Mon Nov 3 09:19:59 1997 2 | Date: Sat, 01 Nov 1997 23:03:45 SGP 3 | From: Wee-Meng LEE 4 | To: oetiker@ee.ethz.ch 5 | Subject: get-active.pl 6 | 7 | Hi Tobi, 8 | 9 | A collegue and I did some improvements in the get-active.pl 10 | script written by Russ Wright in the contrib directory. 11 | 12 | get-active2.pl does a summary page of all the router interfaces 13 | being monitored and it proved to be very useful. 14 | 15 | I'm not able to contact Russ but feel free to pass the code 16 | around. 17 | 18 | Rgds, 19 | weemeng 20 | 21 | 22 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/cfg/a.cfg: -------------------------------------------------------------------------------- 1 | # We have here cfg/ appended in front of each file path because 2 | # all this files are relative to the directory from where we 3 | # start the mrtgmk. 4 | 5 | 0 MRTG.CFG cfg/mrtg.cfg cfg/mrtg_cfg 6 | 0 INCLUDE cfg/alias.cfg 7 | 0 INCLUDE cfg/misc.cfg 8 | 0 MKD 192.168.10.1.cfg cfg/today.html 9 | 0 INCLUDE cfg/hosts.cfg 10 | 11 | 0 MSG 12 | 0 MSG I create the thml pages 13 | 0 INCLUDE cfg/page1.cfg 14 | 0 INCLUDE cfg/page2.cfg 15 | 16 | 0 MSG 17 | 0 MSG I create a special directory in cfg, 18 | 0 MSG with links through pcn's graphs for admin of pcn 19 | 0 INCLUDE cfg/links.cfg 20 | 21 | 0 MSG 22 | -------------------------------------------------------------------------------- /src/contrib/mrtg-ipget/README: -------------------------------------------------------------------------------- 1 | Date: Fri, 17 Jan 1997 21:39:06 -0500 2 | From: Jim Willette 3 | 4 | Again I must state that this does no error checking what so ever. Just a 5 | quick hack to get me the results I needed. 6 | 7 | I have modified mrtgV2 to record stats based on interface ip address instead 8 | of Interface number. It does not do all the great errorchecking and no OS 9 | testing but it is functional for my needs. 10 | 11 | applie the patch by typing 12 | 13 | patch 2 | 3 | 4 | 5 | 6 | 7 | MRTG remove switch: 8 | 9 | 10 | 11 | 12 |

Configuration:

13 | 18 |
Back to index 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/THANKS: -------------------------------------------------------------------------------- 1 | MRTG as it is distributed contains several perl modules created by other 2 | people. 3 | 4 | The Plain Perl SNMP Code from Simon Leinen 5 | 6 | SNMP_Session.pm 7 | BER.pm 8 | 9 | --> http://www.switch.ch/misc/leinen/snmp/perl/ 10 | 11 | The SNMP Utilities module from Mike Mitchell 12 | 13 | SNMP_util.pm 14 | 15 | --> this is distributed together with SNMP_Session.pm 16 | 17 | The PodParser Module from Brad Appleton 18 | 19 | Pod/*.pm 20 | 21 | --> CPAN/modules/by-module/Pod/BRADAPP/ (Included with perl 5.6) 22 | 23 | Thanks very much 24 | tobi 25 | -------------------------------------------------------------------------------- /src/contrib/rumb-stat/README: -------------------------------------------------------------------------------- 1 | From anthonyr@ce.com.au Wed Feb 26 16:29:59 1997 2 | Date: Mon, 24 Feb 1997 11:17:36 +1100 (EST) 3 | From: Anthony Rumble 4 | To: mrtg@list.ee.ethz.ch 5 | Subject: Some handy scripts 6 | Resent-Date: Mon, 24 Feb 1997 01:19:13 +0100 (MET) 7 | Resent-From: mrtg@list.ee.ethz.ch 8 | 9 | 10 | Heres some handy scripts to get byte stats from apache (web server) 1.1.1 11 | and better and squid (proxy server) 1.1.1 and better. 12 | 13 | -- 14 | Anthony Rumble - Online Ordering Systems 15 | Corporate Express Australia Limited 16 | Phone 02-9335-0669 Fax 02-9335-0753 Mobile 015-955-042 Pager 016-634-997 17 | -------------------------------------------------------------------------------- /web/download.wml: -------------------------------------------------------------------------------- 1 | 3 | 4 |

MRTG Download

5 | 6 | You can download MRTG from several places: 7 | 8 |

Primary Distribution Point

9 | 10 |

If you are running Unix, look for the *.tar.gz files, if you work with 11 | Windows, you will be happier with the *.zip files.

12 | 13 | 17 | 18 |

You might want to read the documentation for inspiration on 19 | how to install and configure it.

20 | 21 | -------------------------------------------------------------------------------- /src/README: -------------------------------------------------------------------------------- 1 | Welcome to MRTG 2 | ================================================================== 3 | 4 | I bet you are eager to get going with the program. 5 | 6 | All documentation is stored in the doc sub directory. 7 | 8 | For installing on UNIX, follow the instructions in 9 | 10 | doc/mrtg-unix-guide.txt 11 | 12 | If you want to setup MRTG on NT, read 13 | 14 | doc/mrtg-nt-guide.txt 15 | 16 | There are many more documents in the doc directory. Look 17 | at the 18 | 19 | doc/mrtg.txt 20 | 21 | file for an overview. 22 | 23 | ------------------------------------------------------------------ 24 | Tobias Oetiker 25 | -------------------------------------------------------------------------------- /src/contrib/ciscoindex/README: -------------------------------------------------------------------------------- 1 | # 2 | # ciscoindex.pl 3 | # 4 | # Written 1/20/99 by Tim Cimarusti 5 | # 6 | # This PERL script will read in the a Cisco router config file 7 | # created by the "write network" command and create a HTML index 8 | # for it's interfaces that corresponds with MRTG. 9 | # It sorts the output by interface type and adds descriptions, 10 | # IP addresses, DLCI numbers, and bandwidth to the HTML. 11 | # 12 | # usage : ciscoindex.pl 13 | # 14 | # Note: The HTML document will be named .html 15 | # where is whatever is in the router config. 16 | # 17 | # Feedback : cimarust@mercernet.com 18 | # 19 | -------------------------------------------------------------------------------- /src/contrib/ipfilter/fw.pl: -------------------------------------------------------------------------------- 1 | #!/usr/local/bin/perl 2 | # reads stats and uptime from ip-filter for mrtg 3 | # ron@rosie.18james.com, 2 Jan 2000 4 | 5 | my $firewall = "IP Filter v3.3.3"; 6 | my($in_pkts,$out_pkts) = (0,0); 7 | 8 | open(FW, "/sbin/ipfstat -hio|") || die "cannot open ipfstat\n"; 9 | while () { 10 | $in_pkts += $1 if (/^(\d+)\s+pass\s+in\s+quick.*group\s+1\d0/); 11 | $out_pkts += $1 if (/^(\d+)\s+pass\s+out\s+quick.*group\s+1\d0/); 12 | } 13 | print "$in_pkts\n", 14 | "$out_pkts\n"; 15 | my $uptime = `/usr/bin/uptime`; 16 | $uptime =~ /^\s+(\d{1,2}:\d{2}..)\s+up\s+(\d+)\s+(......),/; 17 | print "$2 $3\n", 18 | "$firewall\n"; 19 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample11.pl: -------------------------------------------------------------------------------- 1 | use GIFgraph::bars; 2 | use GIFgraph::colour; 3 | 4 | print STDERR "Processing sample 1-1\n"; 5 | 6 | @data = ( 7 | ["1st","2nd","3rd","4th","5th","6th","7th", "8th", "9th"], 8 | [ 1, 2, 5, 6, 3, 1.5, 1, 3, 4], 9 | ); 10 | 11 | $my_graph = new GIFgraph::bars(); 12 | 13 | $my_graph->set( 14 | x_label => 'X Label', 15 | y_label => 'Y label', 16 | title => 'A Simple Bar Chart', 17 | y_max_value => 8, 18 | y_tick_number => 8, 19 | y_label_skip => 2, 20 | ); 21 | 22 | $my_graph->plot_to_gif( "sample11.gif", \@data ); 23 | 24 | exit; 25 | 26 | -------------------------------------------------------------------------------- /src/contrib/whodo/networks: -------------------------------------------------------------------------------- 1 | # Networks 2 | # 3 | loopback 127 4 | Sydney 203.167.218 # /23 5 | Melbourne 203.167.220 6 | Perth 203.167.221 # /25 7 | Brisbane 203.167.222 # /26 8 | CbrExportOffice 203.167.223.192 # /28 9 | SAP 194.39.139 10 | Almaty 172.20.197 11 | Ankara 172.20.81 12 | Auckland 172.20.53 13 | Bangkok 172.20.225 14 | Beijing 172.20.88 15 | Brunei 172.20.56 16 | Budapest 172.20.104.64 # /26 17 | Buenos_Aires 172.20.209 18 | Cairo 172.20.29 19 | Dubai 172.20.16.128 # /25 20 | Guangzhou 172.20.201 21 | DfatInternal 172.16 # /14 22 | DfatInternal 172.21 23 | DfatInternal 172.22 # /15 24 | NetworkLinks 192.168 -------------------------------------------------------------------------------- /web/hoster.html: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 17 | 18 | 19 |
20 | bandwidth by Init7 21 |
22 | 23 | 24 | -------------------------------------------------------------------------------- /src/contrib/debian-systemd/mrtg.service: -------------------------------------------------------------------------------- 1 | # Systemd config for MRTG on Debian 2 | # 2021 Joao Eriberto Mota Filho 3 | 4 | [Unit] 5 | Description=Multi Router Traffic Grapher 6 | Documentation=https://oss.oetiker.ch/mrtg/doc/index.en.html 7 | 8 | [Service] 9 | Environment=LANG=C 10 | ExecStart=/usr/bin/mrtg --daemon --fhs --user=mrtg 11 | KillMode=process 12 | LogsDirectory=mrtg 13 | LogsDirectoryMode=0750 14 | PIDFile=/run/mrtg/mrtg.pid 15 | PrivateTmp=yes 16 | ReadOnlyDirectories=/etc 17 | RuntimeDirectory=mrtg 18 | StateDirectory=mrtg 19 | StateDirectoryMode=0750 20 | Type=forking 21 | User=mrtg 22 | 23 | [Install] 24 | WantedBy=multi-user.target 25 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/cfg/page2.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | Traffic analyses 5 |
6 | 7 |

PC from local network - overview

8 | PC1 Trafic analyses
9 | 10 |

11 | PC2 Trafic analyses
12 | 13 |

14 | PC3 Trafic analyses
15 | 16 |

17 | 18 | 19 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample13.pl: -------------------------------------------------------------------------------- 1 | use GIFgraph::bars; 2 | 3 | print STDERR "Processing sample 1-3\n"; 4 | 5 | @data = ( 6 | ["1st","2nd","3rd","4th","5th","6th","7th", "8th", "9th"], 7 | [ 5, 12, 24, 33, 19, 8, 6, 15, 21], 8 | [ 1, 2, 5, 6, 3, 1.5, 1, 3, 4] 9 | ); 10 | $my_graph = new GIFgraph::bars(); 11 | 12 | $my_graph->set( 13 | x_label => 'X Label', 14 | y_label => 'Y label', 15 | title => 'Bars in front of each other', 16 | y_tick_number => 8, 17 | y_label_skip => 2, 18 | overwrite => 1, 19 | ); 20 | 21 | $my_graph->plot_to_gif( "sample13.gif", \@data ); 22 | 23 | exit; 24 | 25 | -------------------------------------------------------------------------------- /src/contrib/mrtg-mail/mailstats.cfg: -------------------------------------------------------------------------------- 1 | # 2 | # Mail.cfg: Mailstats plotting with MRTG 3 | # 4 | 5 | WorkDir: /usr/local/etc/httpd/htdocs/stats/mrtg 6 | Interval: 10 7 | #--------------------------------------------------------------- 8 | Target[mail]: `/usr/local/bin/mrtg/mailstats` 9 | MaxBytes[mail]: 150 10 | # AbsMax[mail]: 1800 11 | #Unscaled[mail]: dwmy 12 | Options[mail]: gauge 13 | Title[mail]: Juno Sendmail Statistics 14 | PageTop[mail]: Juno Sendmail Statistics 15 | XSize[mail]: 500 16 | #Supress[mail]: my 17 | YSize[mail]: 200 18 | WithPeak[mail]: dwmy 19 | YLegend[mail]: No. of messages 20 | ShortLegend[mail]: messages 21 | LegendI[mail]:  Incoming: 22 | LegendO[mail]:  Outgoing: 23 | -------------------------------------------------------------------------------- /src/contrib/ovmrtg/installov.cmds: -------------------------------------------------------------------------------- 1 | s~^my \$webdir .*~my $webdir = "/var/opt/ns-fasttrack/docs/mrtg/";~ 2 | s~^my \$rundir .*~my $rundir = "/opt/mrtg/run";~ 3 | s~^my \$company .*~my $company = "Company";~ 4 | s~^my \$cronfile .*~my $cronfile = "mrtgc";~ 5 | s~^my \$roothtml .*~my $roothtml = "routers.html";~ 6 | s~^my \$buildhtf .*~my $buildhtf = "buildht";~ 7 | s~^my \$dnsfile .*~my $dnsfile = "ovmrtgc.csv";~ 8 | s~^my \$ov_db .*~my $ov_db = "/var/opt/OV/share/databases";~ 9 | s~^my \$ov_conf .*~my $ov_conf = "/etc/opt/OV/share/conf";~ 10 | s~Command ".*ovadd~Command "perl /opt/mrtg/run/ovadd~ 11 | s~Command ".*ovdel~Command "perl /opt/mrtg/run/ovdel~ 12 | s~Command ".*ovsho~Command "perl /opt/mrtg/run/ovsho~ 13 | -------------------------------------------------------------------------------- /src/contrib/whodo/sources.cfg: -------------------------------------------------------------------------------- 1 | WorkDir: D:\www\mrtg\whodo 2 | IconDir: /mrtg/ 3 | Interval: 30 4 | 5 | 6 | Title[Miscellaneous]: Traffic from Miscellaneous 7 | PageTop[Miscellaneous]:

Traffic from Miscellaneous

8 | MaxBytes[Miscellaneous]: 12500000 9 | Options[Miscellaneous]: growright, bits, absolute, nopercent 10 | Colours[Miscellaneous]: w#ffffff,blue#0000e0,w#ffffff,r#ff0000 11 | Target[Miscellaneous]: `perl -e "print \"0\n27945056\""` 12 | YLegend[Miscellaneous]: Bits per Second 13 | ShortLegend[Miscellaneous]: bps 14 | Legend1[Miscellaneous]: 15 | Legend2[Miscellaneous]: Traffic from Miscellaneous 16 | LegendI[Miscellaneous]: 17 | LegendO[Miscellaneous]:  Traffic: 18 | 19 | -------------------------------------------------------------------------------- /src/contrib/exim-stats/check-email: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | #/usr/local/bin/mailq -v 3 | echo "Working." 4 | LOGFILE=/var/spool/exim/log/mainlog 5 | 6 | DAY=`date "+19%y-%m-%d"` 7 | 8 | QUE=`ls /var/spool/exim/input/*-H | wc -l | sed -e "s/ //g"` 9 | DAYDEL=`/usr/local/bin/grep -c " [=-]> " $LOGFILE` 10 | DAYREC=`/usr/local/bin/grep -c " <= " $LOGFILE` 11 | 12 | cat << EOM 13 | ====================================================================== 14 | E-mail status information for `hostname` 15 | 16 | Current Date/Time is: `date "+%A, %D %R %Z"` 17 | 18 | Number of messages currently in the queue: $QUE 19 | 20 | Number of messages received so far today: $DAYREC 21 | Number of messages delivered so far today: $DAYDEL 22 | EOM 23 | -------------------------------------------------------------------------------- /src/contrib/exim-stats/email-count1: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | INFILE=/home/rcsmith/mrtg/aux/$1.infile 4 | OUTFILE=/home/rcsmith/mrtg/aux/$1.outfile 5 | 6 | finger @$1 > /tmp/$1 7 | 8 | NEWIN=`grep "Number of messages received so far today:" /tmp/$1 | awk '{print $8}'` 9 | NEWOUT=`grep "Number of messages delivered so far today:" /tmp/$1 | awk '{print $8}'` 10 | OLDIN=`cat $INFILE` 11 | OLDOUT=`cat $OUTFILE` 12 | 13 | 14 | if [ $NEWIN -lt $OLDIN ] ; then 15 | IN=$NEWIN 16 | OUT=$NEWOUT 17 | else 18 | IN=`expr $NEWIN - $OLDIN` 19 | OUT=`expr $NEWOUT - $OLDOUT` 20 | fi 21 | 22 | echo $IN 23 | echo $OUT 24 | date "+%H hours and %M minutes" 25 | echo $1-email-count 26 | 27 | echo $NEWIN > $INFILE 28 | echo $NEWOUT > $OUTFILE 29 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/src/html.c: -------------------------------------------------------------------------------- 1 | /* 2 | Iulian Radu [v2.0@07.1999] 3 | */ 4 | 5 | void mkhtmlh(){ /*use fh global*/ 6 | if(!fh) return; 7 | fprintf(fh,"\n"); 8 | fprintf(fh,"
\n"); 9 | fprintf(fh,"\n"); 10 | if(title[0]) fprintf(fh,title); 11 | else fprintf(fh,btxt[0]); 12 | fprintf(fh,"\n"); 13 | fprintf(fh,"
\n"); 14 | if(body[0]) fprintf(fh,"\n",body); 15 | else fprintf(fh,"\n"); 16 | } 17 | 18 | void closehtml(){ /*use fh global*/ 19 | int i; 20 | if(!fh) return; 21 | for(;identl;identl--){ 22 | for(i=1;i\n");} 24 | fprintf(fh,"\n"); 25 | fprintf(fh,"\n"); 26 | fclose(fh); 27 | fh=NULL; 28 | } 29 | 30 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/t/ff.pl: -------------------------------------------------------------------------------- 1 | use strict; 2 | 3 | $::WRITE = 1 if (defined($ARGV[0]) and $ARGV[0] eq '--write'); 4 | $::WARN = 0; 5 | 6 | sub get_test_data 7 | { 8 | my $fn = shift; 9 | 10 | local($/); 11 | undef $/; 12 | 13 | open(GIF, $fn) or die "Cannot open $fn: $!\n"; 14 | binmode(GIF); 15 | my $im = ; 16 | close (GIF); 17 | 18 | return defined($im) ? $im : ""; 19 | } 20 | 21 | sub write_file 22 | { 23 | my $fn = shift; 24 | my $im = shift; 25 | 26 | local($/); 27 | undef $/; 28 | 29 | print "writing\n"; 30 | open(GIF, '>' . $fn) or die "Cannot open $fn: $!\n"; 31 | binmode(GIF); 32 | print GIF $im; 33 | close (GIF); 34 | } 35 | 36 | 1; 37 | 38 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/cfg/today.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | Traffic analyses - day 5 |
6 | 7 |

day .gifs for hosts in the .cfg file 192.168.10.1.cfg

8 |



Traffic analysis for pc1


9 |
10 |

Traffic analysis for pc2


11 |
12 |

Traffic analysis for pc3


13 |
14 | 15 | 16 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/src/parse0.c: -------------------------------------------------------------------------------- 1 | /* 2 | Iulian Radu [v2.0@07.1999] 3 | */ 4 | 5 | #include "html.c" 6 | #include "defhost.c" 7 | #include "alias.c" 8 | #include "gif.c" 9 | #include "fnct0.c" 10 | #include "parse0.ftbl" 11 | 12 | void parse0(char* buf){ 13 | char cmd[129],*ebuf; 14 | int i; 15 | ltrim(buf); 16 | sscanf(buf,"%s",cmd); 17 | if(!strcmp(cmd,parse0_ftbl[0].cmd)){ 18 | comment=0; 19 | return;} 20 | if(comment) return; 21 | for(i=1;iset( 14 | x_label => 'X Label', 15 | y_label => 'Y label', 16 | title => 'An Area Graph', 17 | y_max_value => 40, 18 | y_tick_number => 8, 19 | y_label_skip => 2, 20 | ); 21 | 22 | $my_graph->set_legend( 'one', 'two' ); 23 | 24 | $my_graph->plot_to_gif( "sample21.gif", \@data ); 25 | 26 | exit; 27 | 28 | -------------------------------------------------------------------------------- /web/inc/IE7/ie7-xml-extras.js: -------------------------------------------------------------------------------- 1 | /* 2 | IE7, version 0.9 (alpha) (2005-08-19) 3 | Copyright: 2004-2005, Dean Edwards (http://dean.edwards.name/) 4 | License: http://creativecommons.org/licenses/LGPL/2.1/ 5 | */ 6 | function XMLHttpRequest(){var l=(ScriptEngineMajorVersion()>=5)?"Msxml2":"Microsoft";return new ActiveXObject(l+".XMLHTTP")};function DOMParser(){};DOMParser.prototype={toString:function(){return"[object DOMParser]"},parseFromString:function(s,c){var x=new ActiveXObject("Microsoft.XMLDOM");x.loadXML(s);return x},parseFromStream:new Function,baseURI:""};function XMLSerializer(){};XMLSerializer.prototype={toString:function(){return"[object XMLSerializer]"},serializeToString:function(r){return r.xml||r.outerHTML},serializeToStream:new Function}; 7 | -------------------------------------------------------------------------------- /src/contrib/mrtg-blast/README: -------------------------------------------------------------------------------- 1 | Please read the INSTALL file after finishing this. 2 | 3 | I would like to express my thanks to 4 | 5 | Tobias Oetiker and Dave Rand 6 | for writing MRTG. It's people like them that make me believe 7 | all software designed for hazardous environments such as 8 | missile and aircraft guidance systems should be run under GNU 9 | and Copyleft. This would have spared many lost lives and many 10 | to come. 11 | 12 | Many thanks also to Daniel Karrenberg for porting 13 | tcpblast to Linux! 14 | 15 | And last - but definitely not least - Peter W. Osel 16 | who wrote mrtg-ping-probe which inspired me and helped 17 | getting along with perl regex syntax ;) 18 | 19 | -------------------------------------------------------------------------------- /src/contrib/mrtgindex.cgi/README: -------------------------------------------------------------------------------- 1 | Date: Fri, 14 Mar 1997 14:40:56 +0000 2 | From: Mick Ghazey 3 | 4 | My program, mrtgindex.cgi, is similar to indexmaker. There are 5 | some signficant differences however. 6 | 7 | Mrtgindex.cgi graphs update every 5 minutes. 8 | 9 | Mrtgindex.cgi *graphs* are clickable. Indexmaker's *text* is 10 | clickable. 11 | 12 | Mrtgindex.cgi supports multiple config files. 13 | 14 | Mrtgindex.cgi graphs are in the same order as targets in config 15 | files. Indexmaker graphs are ordered alphabetically by title. 16 | 17 | Perhaps mrtgindex.cgi will run on more servers because it doesn't 18 | require SSI. OTOH, it requires CGI.pm. Between the two we should 19 | have a program that works on all servers. :=) 20 | -------------------------------------------------------------------------------- /web/doc/build.sh: -------------------------------------------------------------------------------- 1 | 2 | #!/bin/sh 3 | sect=doc 4 | src=/home/oetiker/checkouts/mrtg/src/ 5 | . ../bin/pod2wml.sh 6 | 7 | pod2descr() { 8 | pod=$1.pod 9 | descr=`egrep "$1 *- " $pod|head -1|sed 's/.*- //'` 10 | menu=`egrep "$1 *- " $pod|head -1|sed 's/ -.*//'` 11 | } 12 | 13 | 14 | # build probe list 15 | rm -f navbar.inc 16 | rm -f index.inc 17 | 18 | for pod in mrtg.pod mrtg-unix-guide.pod mrtg-nt-guide.pod mrtg-nw-guide.pod mrtg-reference.pod cfgmaker.pod indexmaker.pod mrtg-contrib.pod mrtg-faq.pod mrtg-ipv6.pod mrtg-logfile.pod mrtg-mibhelp.pod mrtg-rrd.pod mrtg-webserver.pod; do 19 | base=`echo $pod |sed 's,.pod,,'` 20 | echo $base 21 | cat $src/doc/$pod > $base.pod 22 | pod2descr $base 23 | pod2wml $base 24 | done 25 | 26 | -------------------------------------------------------------------------------- /web/inc/trac.css: -------------------------------------------------------------------------------- 1 | @import url(/mrtg/design.css); 2 | 3 | body, th, td { 4 | font-family: sans-serif; 5 | } 6 | 7 | #navbar_container a { 8 | border-style: none; 9 | } 10 | 11 | #navbar_container a:hover { 12 | background-color: inherit; 13 | } 14 | 15 | div#header { 16 | display:none; 17 | } 18 | 19 | div#banner { 20 | position:absolute; 21 | top: 105px; 22 | left: 0px; 23 | width: 100%; 24 | max-width: 80em; 25 | padding-right: 70px; 26 | } 27 | 28 | #content_container h1 { 29 | margin-top: 10px; 30 | margin-right: 0px; 31 | } 32 | 33 | #pagepath { 34 | font-size: 10px; 35 | } 36 | 37 | #pagepath .pathentry { 38 | float: left; 39 | } 40 | 41 | #pagepath *:link, #pagepath *:visited { 42 | margin: 0 0.2em; 43 | } 44 | -------------------------------------------------------------------------------- /src/contrib/cpuinfo/README: -------------------------------------------------------------------------------- 1 | This script allows mrtg to monitor cpu usage for both system and user on linux 2 | and sun solaris. 3 | 4 | All of the information you need to set it up, including a sample cfg file 5 | is documented in the header of the script itself. If you have any questions, 6 | you can email me at schu@schu.net and I'll try to get back to you. 7 | 8 | Hope it works for you as well as it does for me :) 9 | 10 | schu 11 | 12 | PLEASE NOTE THAT I NO LONGER WORK FOR 7X. DO *NOT* SEND EMAIL TO SCHU@7X.COM. 13 | THAT ADDRESS IS NOW ALIASED TO THE 7X GENERAL MANAGER. ANY MAIL SENT THERE WILL 14 | GO TO THE WRONG PERSON. Apparently 7x is to lame to remove my old address and let 15 | the server bounce it. 16 | 17 | Matthew Schumacher 18 | -------------------------------------------------------------------------------- /src/contrib/ovmrtg/oveval.txt: -------------------------------------------------------------------------------- 1 | OVMRTG evaluation questions: 2 | ============================ 3 | 4 | 5 | What is your name: 6 | 7 | What is your company name: 8 | 9 | Your E-mail address: 10 | 11 | What HPOV platform do you run (Unix/NT & Version): 12 | 13 | What types of systems are you monitoring (Manufacturer & Router/Hub..): 14 | 15 | How many systems are you monitoring with OVMRTG: 16 | 17 | Can you comment on the resource utilisation from OVMRTG and the original MRTG? 18 | 19 | Any suggestions for OVMRTG improvements? 20 | 21 | What other details might be useful in understanding problems with OVMRTG? 22 | 23 | 24 | =================================== 25 | 26 | Please E-mail this page to : 27 | 28 | net_improvement@hotmail.com 29 | 30 | -------------------------------------------------------------------------------- /src/contrib/stat/mrtg.cfg: -------------------------------------------------------------------------------- 1 | # this is a mrtg test setup 2 | #im gonna try using some fine examples (hopefully) to make this work. 3 | # this is gonna be a DNS graph (when if ever im ready). 4 | # $Id: mrtg.cfg,v 1.1.1.1 2002/02/26 10:16:37 oetiker Exp $ 5 | 6 | WorkDir: WWW/PATH/TO/SITE/ 7 | ## Intervall set to 5 min 8 | Interval: 10 9 | # now lets set up a Target to get stats from 10 | Target[bn]: `PATH/stat.pl` 11 | MaxBytes[bn]: 32000 12 | AbsMax[bn]: 64000 13 | Options[bn]: gauge 14 | Title[bn]: DNS statististics 15 | PageTop[bn]:

DNS1 statistic

\n 16 | XSize[bn]: 500 17 | Supress[bn]: y 18 | Ysize[bn]: 200 19 | YLegend[bn]: No. Questions asked/10 min 20 | ShortLegend[bn]: q/10 min 21 | LegendO[bn]:   dnsqueries: 22 | LegendI[bn]: 23 | WithPeak[bn]: ym 24 | -------------------------------------------------------------------------------- /src/contrib/iptables-accounting/README: -------------------------------------------------------------------------------- 1 | From: "Gill, Vern" 2 | Date: Fri, 9 Mar 2001 18:43:30 -0800 3 | Subject: New Module for MRTG 4 | 5 | -----BEGIN PGP SIGNED MESSAGE----- 6 | Hash: SHA1 7 | 8 | I have "hacked" together a module for iptables. I used the ipchainacc 9 | 1.1.0 from the contrib directory. Here's the scoop; 10 | Requires Perl 11 | 12 | There is one argument required, and it can be any of the following; 13 | filter 14 | nat 15 | mangle 16 | You may extend the functionality, but it also requires editing the 17 | script. To use, place the following in your mrtg.cfg; 18 | Target[iptables]: `/path-to/iptables-accounting argument` 19 | 20 | The script is probably ugly to perl gurus, but for a guy who has 21 | never used perl, I think it's pretty good. 22 | -------------------------------------------------------------------------------- /src/contrib/mrtg-mail/mailstats-alternate: -------------------------------------------------------------------------------- 1 | # use this method if you think it is better... 2 | # I did this one after I learnt a bit more perl! 3 | 4 | 5 | ## 6 | # munge the output data 7 | # 8 | while () { 9 | $line = $_; 10 | ($a, $curfrm, $b, $curto, $c, $d) = split(' ',$line); 11 | } 12 | if ($a = "T") { 13 | # do some sums 14 | $msgsfrm = $curfrm - $oldfrm; 15 | $msgsto = $curto - $oldto; 16 | chomp $msgsfrm; 17 | chomp $msgsto; 18 | 19 | # open the old file for overwrite 20 | open (OLD,">/tmp/mailstat.old") or die "can't open file!\n"; 21 | # print the data for mrtg 22 | print "$msgsfrm\n$msgsto\n1\n$remote\n"; 23 | 24 | # print the data to the old file 25 | print OLD "$curfrm $curto\n"; 26 | } #endif 27 | 28 | close (SOCK) or die "close: $!"; 29 | exit; 30 | -------------------------------------------------------------------------------- /src/contrib/snmpping/snmpping.pl: -------------------------------------------------------------------------------- 1 | #!/usr/sepp/bin/perl 2 | use lib qw(../../run); 3 | use BER; 4 | require 'SNMP_Session.pm'; 5 | 6 | my $host = @ARGV[0]; 7 | my $community = @ARGV[1]; 8 | my $port = 161; 9 | 10 | $session = SNMP_Session->open ($host, $community, $port) 11 | || die "couldn't open SNMP session to $host"; 12 | 13 | $oid1 = encode_oid (1, 3, 6, 1, 2, 1, 1, 1, 0); 14 | 15 | if ($session->get_request_response ($oid1)) { 16 | ($bindings) = $session->decode_get_response($session->{pdu_buffer}); 17 | while ($bindings ne '') { 18 | ($binding,$bindings) = &decode_sequence ($bindings); 19 | ($oid,$value) = &decode_by_template ($binding, "%O%@"); 20 | print $pretty_oids{$oid}," => ", 21 | &pretty_print ($value), "\n"; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /src/contrib/procmem/getmem.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | 3 | #----------------------------------------------- 4 | # Return memory usage for a specific Cisco memory pool 5 | # 6 | # Author: Dimitrios Stergiou , 25/10/00 7 | # Version : 1.0 8 | # 9 | # Usage: ./getmem.pl cisco_hostname memory_pool 10 | # 11 | # 1.0 Initial version, basic functionality 12 | #----------------------------------------------- 13 | 14 | # Import libraries 15 | use lib "/usr/local/mrtg/lib/mrtg2"; 16 | use MRTG_lib "2.090006"; 17 | use SNMP_Session "0.77"; 18 | use BER "0.77"; 19 | use SNMP_util "0.77"; 20 | use locales_mrtg "0.07"; 21 | 22 | # Query public community on router, return memory used in current pool 23 | @command = snmpget($ARGV[0], "enterprises.9.9.48.1.1.1.5.$ARGV[1]"); 24 | print @command[0]; 25 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/Makefile: -------------------------------------------------------------------------------- 1 | PERL = perl 2 | .SUFFIXES: .gif .pl 3 | .SILENT: 4 | LIB = .. 5 | OPTIONS = -Tw 6 | 7 | GIFS = sample11.gif sample12.gif sample13.gif sample14.gif \ 8 | sample15.gif sample16.gif \ 9 | sample21.gif \ 10 | sample31.gif \ 11 | sample41.gif sample42.gif\ 12 | sample51.gif sample52.gif sample53.gif sample54.gif \ 13 | sample61.gif sample62.gif \ 14 | sample91.gif sample92.gif sample93.gif 15 | 16 | all: $(GIFS) 17 | 18 | .pl.gif: 19 | $(PERL) $(OPTIONS) -I$(LIB) $< 20 | 21 | clean: 22 | rm -f $(GIFS) 23 | 24 | test: 25 | $(PERL) $(OPTIONS) -I$(LIB) -M$(MODULE) sample91.pl 26 | 27 | # Dependencies 28 | 29 | sample14.gif: logo.gif 30 | sample42.gif: sample42.dat 31 | sample54.gif: sample54.dat 32 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample41.pl: -------------------------------------------------------------------------------- 1 | use GIFgraph::linespoints; 2 | 3 | print STDERR "Processing sample 4-1\n"; 4 | 5 | @data = ( 6 | ["1st","2nd","3rd","4th","5th","6th","7th", "8th", "9th"], 7 | [undef, 52, 53, 54, 55, 56, undef, 58, 59], 8 | [60, 61, 61, undef, 68, 66, 65, 61, undef], 9 | ); 10 | 11 | $my_graph = new GIFgraph::linespoints( ); 12 | 13 | $my_graph->set( 14 | x_label => 'X Label', 15 | y_label => 'Y label', 16 | title => 'A Lines and Points Graph', 17 | y_max_value => 80, 18 | y_tick_number => 6, 19 | y_label_skip => 2, 20 | markers => [ 1, 5 ], 21 | ); 22 | 23 | $my_graph->set_legend( 'data set 1', 'data set 2' ); 24 | 25 | $my_graph->plot_to_gif( "sample41.gif", \@data ); 26 | 27 | exit; 28 | 29 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample12.pl: -------------------------------------------------------------------------------- 1 | use GIFgraph::bars; 2 | 3 | print STDERR "Processing sample 1-2\n"; 4 | 5 | @data = ( 6 | ["1st","2nd","3rd","4th","5th","6th","7th", "8th", "9th"], 7 | [ 5, 12, 24, 33, 19, 8, 6, 15, 21], 8 | [ 1, 2, 5, 6, 3, 1.5, 1, 3, 4], 9 | ); 10 | 11 | $my_graph = new GIFgraph::bars(); 12 | 13 | $my_graph->set( 14 | x_label => 'X Label', 15 | y_label => 'Y label', 16 | title => 'Two data sets', 17 | long_ticks => 1, 18 | y_max_value => 40, 19 | y_tick_number => 8, 20 | y_label_skip => 2, 21 | bar_spacing => 4, 22 | ); 23 | 24 | $my_graph->set_legend( 'Data set 1', 'Data set 2' ); 25 | 26 | $my_graph->plot_to_gif( "sample12.gif", \@data ); 27 | 28 | exit; 29 | 30 | -------------------------------------------------------------------------------- /web/inc/html.inc: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {#H1#:%body:#H1#} 5 | {#H1_FLAT#:<: $x = <:#H1_FLAT#} 9 | "" 10 | {#Title#:{#H1_FLAT#}:#Title#} 11 | /> 12 | 13 | 14 | 15 | 16 | 17 | {#!Title#:<: $_ = <:#Title#} 21 | 22 | 23 | 24 | %body 25 | 26 | 27 | 28 | %body 29 | 30 | -------------------------------------------------------------------------------- /src/contrib/jm/news-mrtg.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl5 2 | # 3 | # news-mrtg.pl - 4 | # 5 | # 6 | # joey miller, inficad communications, llc 7 | # 1999/02/02 8 | # 9 | 10 | 11 | if ( ! $ARGV[0] ) { exit; } 12 | if ( ! $ARGV[1] ) { $port = 22; } 13 | else { $port = $ARGV[1]; } 14 | 15 | if ( $ARGV[0] =~ /localhost/ ) { 16 | open(NFO, " (uptime ; ps auxw |grep nnrp |grep -v grep) |") || exit -1; 17 | } else { 18 | open(NFO, "ssh -p $port $ARGV[0] 'uptime ; ps auxw |grep nnrp |grep -v grep' |") || exit -1; 19 | } 20 | while () { 21 | if ( ! $count ) { 22 | ($uptime) = $_ =~ /^.*(up.*),\s\d+user/; 23 | } 24 | $count++; 25 | } 26 | close(NFO); 27 | 28 | $count--; 29 | $uptime =~ s/,$//; 30 | 31 | print "$count\n"; 32 | print "$count\n"; 33 | print "$uptime\n"; 34 | print "$ARGV[0]\n"; 35 | -------------------------------------------------------------------------------- /src/contrib/mrtg-dynip/Install: -------------------------------------------------------------------------------- 1 | Installation of the mrtg-dynip contribution to mrtg 2 | 3 | This contribution to mrtg runs independently of an existing running mrtg 4 | installation. 5 | 6 | Only one file is necessary, mrtg-dynip. It is necessary to have mrtg 7 | successfully installed first and to have an snmp daemon, the snmp agent 8 | server, running on target hosts. See the FAQ for information on obtaining 9 | mrtg-dynip and MRTG. 10 | 11 | Instructions for configuring mrtg-dynip are included in the mrtg-dynip file. 12 | To assist with configuration, the actual configuration file used in a live 13 | ISP is included in the mrtg-dynip-sydnet file 14 | 15 | Ensure mrtg-dynip has executable permission (for example, run command chmod 16 | 744 mrtg-dynip) and can write to directories files it is configured to write 17 | to. 18 | -------------------------------------------------------------------------------- /src/contrib/gentcucci-1.0.0/README: -------------------------------------------------------------------------------- 1 | From: Kevin Benton 2 | To: Tobias Oetiker 3 | Date: Tue, 17 Oct 2000 09:42:18 -0400 (EDT) 4 | Subject: MRTG Thanks and a contrib 5 | 6 | 7 | Please find included a nice little package which automatically generates 8 | configs for 3Com Total Control chassis, but also generates a little 9 | colored table to the left of the graph on the index to display usage 10 | history at a glance. 11 | 12 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample51.pl: -------------------------------------------------------------------------------- 1 | use GIFgraph::lines; 2 | 3 | print STDERR "Processing sample 5-1\n"; 4 | 5 | # The reverse is in here, because I thought the falling line was 6 | # depressing, but I was too lazy to retype the data set 7 | 8 | @data = ( 9 | [ qw( Jan Feb Mar Apr May Jun Jul Aug Sep ) ], 10 | [ reverse(4, 3, 5, 6, 3, 1.5, -1, -3, -4)], 11 | ); 12 | 13 | $my_graph = new GIFgraph::lines(); 14 | 15 | $my_graph->set( 16 | x_label => 'Month', 17 | y_label => 'Measure of success', 18 | title => 'A Simple Line Graph', 19 | y_max_value => 8, 20 | y_min_value => -6, 21 | y_tick_number => 14, 22 | y_label_skip => 2, 23 | box_axis => 0, 24 | line_width => 3, 25 | ); 26 | 27 | $my_graph->plot_to_gif( "sample51.gif", \@data ); 28 | 29 | exit; 30 | 31 | -------------------------------------------------------------------------------- /web/bin/lib/Pod/Simple/Transcode.pm: -------------------------------------------------------------------------------- 1 | 2 | require 5; 3 | package Pod::Simple::Transcode; 4 | 5 | BEGIN { 6 | if(defined &DEBUG) {;} # Okay 7 | elsif( defined &Pod::Simple::DEBUG ) { *DEBUG = \&Pod::Simple::DEBUG; } 8 | else { *DEBUG = sub () {0}; } 9 | } 10 | 11 | foreach my $class ( 12 | 'Pod::Simple::TranscodeSmart', 13 | 'Pod::Simple::TranscodeDumb', 14 | '', 15 | ) { 16 | $class or die "Couldn't load any encoding classes"; 17 | DEBUG and print "About to try loading $class...\n"; 18 | eval "require $class;"; 19 | if($@) { 20 | DEBUG and print "Couldn't load $class: $@\n"; 21 | } else { 22 | DEBUG and print "OK, loaded $class.\n"; 23 | @ISA = ($class); 24 | last; 25 | } 26 | } 27 | 28 | sub _blorp { return; } # just to avoid any "empty class" warning 29 | 30 | 1; 31 | __END__ 32 | 33 | 34 | -------------------------------------------------------------------------------- /src/contrib/ipchainacc/README: -------------------------------------------------------------------------------- 1 | From: Ilya Konstantinov 2 | Date: 06 Sep 2000 18:53:33 -0200 3 | 4 | I have tweaked the ipchainacc perl script provided in MRTG's contrib for our 5 | own use at our LUG, and I thought the rest of the users might find my 6 | changes helpful. 7 | 8 | Changes: 9 | 1. Made it account BYTES instead of PACKETS, like it used to do before. 10 | 2. It now accepts (optional) two command-line arguments to make it 11 | return results for the 2nd etc. rules in the chain, so for example, 12 | I can insert rules into the 'acctin' and 'acctout' chains which'll match 13 | traffic with destination and source (respectively) port set to 80, so I 14 | could 15 | see how much traffic passes through HTTP only. 16 | 17 | so: 18 | ipchainacc 1 1 19 | should return counters of 2nd acctin and 2nd acctout rules. 20 | 21 | -------------------------------------------------------------------------------- /src/contrib/monitor/global.asa: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/contrib/mrtg_php_portal/conf/config.inc.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/src/mrtgmk.c: -------------------------------------------------------------------------------- 1 | /* 2 | Iulian Radu [v2.0@07.1999] 3 | */ 4 | 5 | #include 6 | #include 7 | #include 8 | #include 9 | #include 10 | #include 11 | 12 | #include "txte.h" //for english messages 13 | //#include "txtro.h" //pentru mesaje in romaneste 14 | #include "parse.c" 15 | 16 | void intro(char* aname){ 17 | printf("\n%s (mrtgmk) %s Iulian Radu [v2.2@1.2000]\n\n",extractfname(aname),etxt[0]); 18 | } 19 | 20 | void help(char* aname){ 21 | printf("%s \n",aname); 22 | printf(" = %s\n",etxt[3]); 23 | printf(" <> = %s\n",etxt[1]); 24 | printf(" [] = %s\n",etxt[2]); 25 | printf("\n"); 26 | exit(1); 27 | } 28 | 29 | int main(int argc,char** argv){ 30 | intro(argv[0]); 31 | if(argc!=2) help(argv[0]); 32 | parse(argv[1]); 33 | return 0; 34 | } 35 | 36 | -------------------------------------------------------------------------------- /web/bin/lib/Pod/Simple/TranscodeSmart.pm: -------------------------------------------------------------------------------- 1 | 2 | require 5; 3 | use 5.008; 4 | ## Anything before 5.8.0 is GIMPY! 5 | ## This module is to be use()'d only by Pod::Simple::Transcode 6 | 7 | package Pod::Simple::TranscodeSmart; 8 | use strict; 9 | use Pod::Simple; 10 | require Encode; 11 | 12 | sub is_dumb {0} 13 | sub is_smart {1} 14 | 15 | sub all_encodings { 16 | return Encode::->encodings(':all'); 17 | } 18 | 19 | sub encoding_is_available { 20 | return Encode::resolve_alias($_[1]); 21 | } 22 | 23 | sub encmodver { 24 | return "Encode.pm v" .($Encode::VERSION || '?'); 25 | } 26 | 27 | sub make_transcoder { 28 | my($e) = $_[1]; 29 | die "WHAT ENCODING!?!?" unless $e; 30 | my $x; 31 | return sub { 32 | foreach $x (@_) { 33 | $x = Encode::decode($e, $x); 34 | } 35 | return; 36 | }; 37 | } 38 | 39 | 40 | 1; 41 | 42 | 43 | -------------------------------------------------------------------------------- /src/contrib/accesslistmon/mrtg.cfg: -------------------------------------------------------------------------------- 1 | # Add a WorkDir: /some/path line to this file 2 | Refresh: 300 3 | WriteExpires: Yes 4 | 5 | Target[examplescript]: `/usr/local/mrtg/configs/accesslist/examplescript` 6 | Options[examplescript]: gauge 7 | MaxBytes[examplescript]: 1000 8 | Title[examplescript]: Number of Ping attempts on machinename 9 | YLegend[examplescript]: Ping Attempts 10 | ShortLegend[examplescript]: Ping 11 | LegendO[examplescript]: 12 | PageTop[examplescript]:

Number of Ping attempts on machinename 13 |

14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 |
System:machinename
Maintainer:whoever
Interface:Number of Ping attempts on machinename
IP:x.x.x.x
Max Amount:1000
22 | -------------------------------------------------------------------------------- /src/contrib/portmasters/README: -------------------------------------------------------------------------------- 1 | From admin@nantucket.net Mon Mar 10 06:15:36 1997 2 | Date: Wed, 05 Mar 1997 14:22:55 -0500 3 | From: Chris Johnson 4 | Subject: MRTG for portmasters 5 | 6 | Hey Tobias, 7 | 8 | I was fooling around with your wonderful program and I ended up 9 | hacking out a script and config to produce Modem statistics for Livingston 10 | Portmasters. You can see the results at 11 | http://www.nantucket.net/users/admin/pmgraph/ if you're interested . I've 12 | enclosed my work here since, maybe you can post it somewhere and save other 13 | Portmaster owners some work. 14 | 15 | Your Nantucket postcard is on it's way! 16 | 17 | 18 | ===================================================== 19 | Chris Johnson 20 | admin@nantucket.net 21 | ===================================================== 22 | 23 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample15.pl: -------------------------------------------------------------------------------- 1 | use GIFgraph::bars; 2 | 3 | print STDERR "Processing sample 1-5\n"; 4 | 5 | @data = ( 6 | ["1st","2nd","3rd","4th","5th","6th","7th", "8th", "9th"], 7 | [ 11, 12, 15, 16, 3, 1.5, 1, 3, 4], 8 | [ 5, 12, 24, 15, 19, 8, 6, 15, 21], 9 | [ 12, 3, 1, 5, 12, 9, 16, 25, 11], 10 | ); 11 | 12 | $my_graph = new GIFgraph::bars(); 13 | 14 | $my_graph->set( 15 | x_label => 'X Label', 16 | y_label => 'Y label', 17 | title => 'Stacked Bars (incremental)', 18 | y_max_value => 50, 19 | y_tick_number => 10, 20 | y_label_skip => 2, 21 | overwrite => 2, 22 | ); 23 | 24 | $my_graph->set_legend( qw(offset increment more)); 25 | 26 | $my_graph->plot_to_gif( "sample15.gif", \@data ); 27 | 28 | exit; 29 | 30 | -------------------------------------------------------------------------------- /src/contrib/GetSNMPLinesUP/sample.cfg: -------------------------------------------------------------------------------- 1 | Target[dial-machine]: `/home/mrtg/bin/GetSNMPLinesUP.pl dial-machine` 2 | WithPeak[dial-machine]: wym 3 | Directory[dial-machine]: data 4 | Options[dial-machine]: growright, absolute, gauge 5 | MaxBytes[dial-machine]: 32 6 | AbsMax[dial-machine]: 32 7 | Title[dial-machine]: dial-machine : MODEMS/RDIS 8 | Unscaled[dial-machine]: dwyn 9 | YLegend[dial-machine]: Interfaces 10 | Colours[dial-machine]: GOLD1#ffd700,BLUE#1000ff,DARK GREEN#006600,VIOLET#ff00ff 11 | XSize[dial-machine]: 340 12 | YSize[dial-machine]: 100 13 | ShortLegend[dial-machine]: if's 14 | Legend1[dial-machine]: 15 | Legend2[dial-machine]: IF's 16 | Legend3[dial-machine]: 17 | Legend4[dial-machine]: Maximal 5 Minute IF's UP 18 | LegendI[dial-machine]: 19 | LegendO[dial-machine]:   if's: 20 | PageTop[dial-machine]:

Number of Interfaces UP for dial-machine

21 | -------------------------------------------------------------------------------- /src/contrib/accesslistmon/README: -------------------------------------------------------------------------------- 1 | README file for Access-list Monitoring via MRTG 2 | 3 | MRTG can be found at : http://ee-staff.ethz.ch/~oetiker/webtools/mrtg/mrtg.html 4 | 5 | 6 | What this script does : 7 | 8 | Basically I wanted to monitor how many hits I had to a particular access-list for a Cisco 9 | router. Rather than having to login and type the necessary commands, I thought it would be 10 | easier to write a shell script to do it for me. 11 | As MRTG is a graphing program, you can do almost anything with it, it then came into the 12 | equation that it is possible to graph it by feeding it into MRTG. 13 | 14 | 15 | Please see the INSTALL file for further instructions. 16 | 17 | 18 | 19 | N.B Please note I take no responsibility for any damage that is caused (not that it would I 20 | dont think). 21 | Feel free to modify the script any which way you wish. 22 | -------------------------------------------------------------------------------- /src/contrib/switchmaker/README: -------------------------------------------------------------------------------- 1 | From: Markley P. Dykeman 2 | Date: Sun, 21 Nov 1999 15:14:00 -0700 3 | 4 | I have enjoyed using your MRTG program to accomplish my tasks. Thank you 5 | for a wonderful toolbox. 6 | 7 | Attached to this document is a perl program called switchmaker which 8 | will simply make an mrtg config file for a Cisco Catylst 5XXX switch. 9 | Unfortunatly, I had to use the SNMP-Util-1.6 and SNMP-1.8 libraries 10 | because I had trouble getting the libraries distrubuted with 2.7.2 to 11 | work correctly with my code--more of an inadequacy on my part. But, 12 | providing you have those libraries or are willing to port it, it does 13 | work very well. At any rate it does document the MIBS you need to know 14 | to get the correct port information out of the switch... 15 | 16 | Enjoy. 17 | 18 | -- 19 | 20 | Markley Dykeman 21 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample31.pl: -------------------------------------------------------------------------------- 1 | use GIFgraph::points; 2 | 3 | print STDERR "Processing sample 3-1\n"; 4 | 5 | @data = ( 6 | ["1st","2nd","3rd","4th","5th","6th","7th", "8th", "9th"], 7 | [ 5, 12, 24, 33, 19, 8, 6, 15, 21], 8 | [ 1, 2, 5, 6, 3, 1.5, undef, 3, 4], 9 | ); 10 | 11 | $my_graph = new GIFgraph::points(); 12 | 13 | $my_graph->set( 14 | x_label => 'X Label', 15 | y_label => 'Y label', 16 | title => 'A Points Graph', 17 | y_max_value => 40, 18 | y_tick_number => 8, 19 | y_label_skip => 2, 20 | legend_placement => 'RC', 21 | long_ticks => 1, 22 | marker_size => 6, 23 | markers => [ 1, 7, 5 ], 24 | ); 25 | 26 | $my_graph->set_legend( qw( one two ) ); 27 | 28 | $my_graph->plot_to_gif( "sample31.gif", \@data ); 29 | 30 | exit; 31 | 32 | -------------------------------------------------------------------------------- /src/contrib/mrtg-startup-script/README: -------------------------------------------------------------------------------- 1 | From: Stefan 2 | Date: Thu, 3 Aug 2006 14:47:59 +0200 3 | Subject: mrtg startup script 4 | 5 | Hi, 6 | 7 | while discussing on a fedora irc channel about a startup script 8 | (/etc/init.d/mrtg) for the mrtg daemon we came to a conclussion that it 9 | would be the best to include such a script in the main sourcecode 10 | distribution. Many people don't run mrtg through cron and a startup script 11 | is very handy. But we don't want to confuse them while installing a startup 12 | script + a cron file. The best sollution we came out would be to include a 13 | startup file in the contrib directory of mrtg. There is also a bugzilla 14 | entry for the file and a little conclussio. Maybe you could add the file to 15 | the contrib directory so that it's easier to run mrtg as a daemon. 16 | 17 | Best regards, 18 | Stefan 19 | -------------------------------------------------------------------------------- /src/contrib/GetSNMPLinesUP/ModemTable.dial-machine: -------------------------------------------------------------------------------- 1 | interfaces.ifTable.ifEntry.ifOperStatus.3 2 | interfaces.ifTable.ifEntry.ifOperStatus.4 3 | interfaces.ifTable.ifEntry.ifOperStatus.5 4 | interfaces.ifTable.ifEntry.ifOperStatus.6 5 | interfaces.ifTable.ifEntry.ifOperStatus.7 6 | interfaces.ifTable.ifEntry.ifOperStatus.8 7 | interfaces.ifTable.ifEntry.ifOperStatus.9 8 | interfaces.ifTable.ifEntry.ifOperStatus.10 9 | interfaces.ifTable.ifEntry.ifOperStatus.11 10 | interfaces.ifTable.ifEntry.ifOperStatus.12 11 | interfaces.ifTable.ifEntry.ifOperStatus.13 12 | interfaces.ifTable.ifEntry.ifOperStatus.14 13 | interfaces.ifTable.ifEntry.ifOperStatus.15 14 | interfaces.ifTable.ifEntry.ifOperStatus.16 15 | interfaces.ifTable.ifEntry.ifOperStatus.17 16 | interfaces.ifTable.ifEntry.ifOperStatus.18 17 | interfaces.ifTable.ifEntry.ifOperStatus.19 18 | interfaces.ifTable.ifEntry.ifOperStatus.20 19 | -------------------------------------------------------------------------------- /web/license.wml: -------------------------------------------------------------------------------- 1 | 3 | 4 |

License

5 | 6 |

GNU General Public License

7 | 8 |

MRTG is available under the terms of the GNU General Public License. 10 | This means you can do most things you want with this software as long as you 11 | do not claim you created the software and don't sell it (or modified version 12 | of it) under a license other than the GNU GPL.

13 | 14 |

Give Credit

15 | 16 |

One of the things I get out of MRTG is 'Being Known in the Industry'. 17 | This only works if you give credit. This means that you 18 | mention MRTG on webpages and other publications containing graphs 19 | created with MRTG. If possible, a link should be included in the 20 | publication, pointing to the MRTG homepage.

21 | -------------------------------------------------------------------------------- /src/contrib/IxDisk/ixdisk.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | # 3 | # Miroslaw M. Maczka: Miroslaw_Maczka@hotmail.com, mmm@bze.com.pl 4 | # Date 2000-1-6 5 | # 6 | open(FI,"/usr/informix/bin/tbstat -p |") or die ""; 7 | 8 | while(){ 9 | #if(/RSAM Version 5.04.UC3 -- On-Line -- Up 1 days 21:56:47 -- 10960 Kbytes/){ 10 | if(/.+Version\s+(.+) --\s+(.+)\s+-- Up\s+(.+)\s+--.*/){ 11 | #print "[$1|$2|$3]\n"; 12 | $db="$2 $1"; 13 | $uptime=$3; 14 | } 15 | 16 | 17 | if(/dskreads pagreads bufreads %cached dskwrits pagwrits bufwrits \%cached/){ 18 | $_=; 19 | ($dskreads,$pagreads,$bufreads,$cached1,$dskwrits,$pagwrits,$bufwrits,$cached2)=split(); 20 | #print "[$dskreads,$pagreads,$bufreads,$cached1,$dskwrits,$pagwrits,$bufwrits,$cached2]\n"; 21 | # 22 | #$uname = `/bin/uname -n`; 23 | print "$dskreads\n$dskwrits\n$uptime\n$db"; 24 | # 25 | }#if 26 | 27 | }#while 28 | close(FI); 29 | #-=EOF=- 30 | 31 | -------------------------------------------------------------------------------- /src/contrib/diskmon/getdisk.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | # This script is used to establish a TCP connection with a host to get the 3 | # disk info provided by showdisk.pl. 4 | # 5 | # use: ./getdisk.pl 6 | # 7 | # By Steven Micallef on the 24/4/1999. 8 | # Externale bug fixed by Alon Goldberg 27/2/2000. 9 | 10 | use Net::Telnet; 11 | 12 | $hostname = $ARGV[0]; 13 | $disk_no = $ARGV[1]; 14 | 15 | # If you've changed the port showdisk.pl runs on, change it here too. 16 | $port = 9047; 17 | 18 | $i = 0; 19 | 20 | if (!defined($disk_no)) { print "Usage: $0 \n"; exit } 21 | 22 | $t = new Net::Telnet ( Host => $hostname, Port => $port); 23 | $t->open("$hostname"); 24 | 25 | while ($i ne $disk_no) { 26 | $data = $t->getline(Timeout => 40); 27 | $i++; 28 | print $data, 0, "\n" if $i eq $disk_no; 29 | } 30 | 31 | -------------------------------------------------------------------------------- /src/contrib/ping-probe/README: -------------------------------------------------------------------------------- 1 | From: Peter W. Osel 2 | To: Tobias Oetiker 3 | Date: Wed, 9 Dec 1998 16:19:18 -0800 4 | Subject: mrtg distribution and mrtg-ping-probe 5 | 6 | Tobi, 7 | 8 | to prevent people from using older versions of mrtg-ping-probe, 9 | could you use the latest version for your next release 10 | ( ftp://ftp.pwo.de/pub/pwo/mrtg/) 11 | or maybe even removeit from the current distribution of mrtg 12 | and just add a README file in the contrib directory or so. 13 | 14 | Cheers 15 | --pwo 16 | 17 | -- 18 | Peter W. Osel Sr. Network Systems Administrator 19 | Siemens Microelectronics, Inc. Email: pwo@SMI.Siemens.COM 20 | 10950 North Tantau Avenue Phone: +1 (408) 895 5050 21 | Cupertino, CA 95014 Fax: +1 (408) 895 5020 22 | USA WWW: http://www.AgiX.NET/~pwo/ 23 | -------------------------------------------------------------------------------- /web/doc/navbar.inc: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /src/contrib/ovmrtg/newrtrov.txt: -------------------------------------------------------------------------------- 1 | To monitor device/s first select the device/s on the OV map 2 | and then execute the mrtg add menu option under Misc 3 | 4 | This firstly creates the collection file for xnmCollect 5 | via perl ovcols ip/s. 6 | 7 | xnmcollect is then called to -merge the new collection file 8 | xnmcollect is then called -event to activate the collection process 9 | 10 | Next, it creates the config file via perl cfgmakerov for each 11 | which also creates any needed new directory under 12 | $webdir/XXXrtrZ 13 | where XXXrtrZ is the device name. 14 | 15 | Then it creates the html generation files 16 | 17 | The file ovmrtgc.csv is updated with the IP address of the device, the 18 | SNMP sysName and the IP Hostname. 19 | 20 | If all this has worked OK, it then creates the 5 minute execution file $cronfile 21 | 22 | Finally, 23 | $webdir/$roothtml is created to display the devices. 24 | -------------------------------------------------------------------------------- /src/contrib/debian-systemd/README: -------------------------------------------------------------------------------- 1 | systemd and init.d config files for MRTG 2 | ---------------------------------------- 3 | 4 | Hello everyone, 5 | 6 | These are the systemd and init scripts that I will provide for Debian as of 7 | October 2021. Debian usually provides these two files to help to start and 8 | stop services. 9 | 10 | These config files are using some new features released in MRTG 2.17.9, as 11 | the option --fhs updated from FHS 2.3 to 3.0, the new location for default 12 | mrtg.cfg (/etc/mrtg/mrtg.cfg) and the dynamic creation for main directories, 13 | as /run/mrtg/. 14 | 15 | The init script (/etc/init.d/mrtg) was originally written by 16 | Stefan SF for Fedora Project and updated by me to be used 17 | in Debian. The original init is being provided in contrib/mrtg-start-script/ 18 | 19 | -- Joao Eriberto Mota Filho Wed, 20 Oct 2021 22:15:51 -0300 20 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample52.pl: -------------------------------------------------------------------------------- 1 | use GIFgraph::lines; 2 | 3 | print STDERR "Processing sample 5-2\n"; 4 | 5 | # The reverse is in here, because I thought the falling line was 6 | # depressing, but I was too lazy to retype the data set 7 | 8 | @data = ( 9 | [ qw( Jan Feb Mar Apr May Jun Jul Aug Sep ) ], 10 | [ reverse(4, 3, 5, 6, 3, 1.5, -1, -3, -4)] 11 | ); 12 | 13 | $my_graph = new GIFgraph::lines(); 14 | 15 | $my_graph->set( 16 | x_label => 'Month', 17 | y_label => 'Measure of success', 18 | title => 'A Simple Line Graph', 19 | y_max_value => 8, 20 | y_min_value => -6, 21 | y_tick_number => 14, 22 | y_label_skip => 2, 23 | box_axis => 0, 24 | line_width => 3, 25 | zero_axis_only => 1, 26 | x_label_position => 1, 27 | y_label_position => 1, 28 | ); 29 | 30 | $my_graph->plot_to_gif( "sample52.gif", \@data ); 31 | 32 | exit; 33 | 34 | -------------------------------------------------------------------------------- /src/mkinstalldirs: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | # mkinstalldirs --- make directory hierarchy 3 | # Author: Noah Friedman 4 | # Created: 1993-05-16 5 | # Public domain 6 | 7 | # $Id: mkinstalldirs,v 1.1.1.1 2002/02/26 10:15:49 oetiker Exp $ 8 | 9 | errstatus=0 10 | 11 | for file 12 | do 13 | set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` 14 | shift 15 | 16 | pathcomp= 17 | for d 18 | do 19 | pathcomp="$pathcomp$d" 20 | case "$pathcomp" in 21 | -* ) pathcomp=./$pathcomp ;; 22 | esac 23 | 24 | if test ! -d "$pathcomp"; then 25 | echo "mkdir $pathcomp" 26 | 27 | mkdir "$pathcomp" || lasterr=$? 28 | 29 | if test ! -d "$pathcomp"; then 30 | errstatus=$lasterr 31 | fi 32 | fi 33 | 34 | pathcomp="$pathcomp/" 35 | done 36 | done 37 | 38 | exit $errstatus 39 | 40 | # mkinstalldirs ends here 41 | -------------------------------------------------------------------------------- /src/contrib/diskmon/sample.cfg: -------------------------------------------------------------------------------- 1 | Target[hostAdisk]: `/mrtg/getdisk.pl hostA 1` 2 | Title[hostAdisk]: HostA's Root partition % used 3 | MaxBytes[hostAdisk]: 100 4 | PageTop[hostAdisk]:

HostA's Root partition % used

5 | Suppress[hostAdisk]: y 6 | LegendI[hostAdisk]: % used 7 | LegendO[hostAdisk]: 8 | Legend1[hostAdisk]: % used 9 | Legend2[hostAdisk]: 10 | YLegend[hostAdisk]: percent used 11 | ShortLegend[hostAdisk]: used 12 | Options[hostAdisk]: gauge 13 | 14 | Target[hostBdisk]: `/mrtg/getdisk.pl hostB 1` 15 | Title[hostBdisk]: HostB's Root partition % used 16 | MaxBytes[hostBdisk]: 100 17 | PageTop[hostBdisk]:

HostB's Root partition % used

18 | Suppress[hostBdisk]: y 19 | LegendI[hostBdisk]: % used 20 | LegendO[hostBdisk]: 21 | Legend1[hostBdisk]: % used 22 | Legend2[hostBdisk]: 23 | YLegend[hostBdisk]: percent used 24 | ShortLegend[hostBdisk]: used 25 | Options[hostBdisk]: gauge 26 | -------------------------------------------------------------------------------- /src/COPYRIGHT: -------------------------------------------------------------------------------- 1 | MRTG - The Multi Router Traffic Grapher. A tool to visualise network 2 | traffic via a WebPage. 3 | 4 | Copyright (c) 1996-2001 Tobias Oetiker and all the Contributers to MRTG 5 | All rights reserved. 6 | 7 | This program is free software; you can redistribute it and/or modify it 8 | under the terms of the GNU General Public License as published by the Free 9 | Software Foundation; either version 2 of the License, or (at your option) 10 | any later version. 11 | 12 | This program is distributed in the hope that it will be useful, but WITHOUT 13 | ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 14 | FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 15 | more details. 16 | 17 | You should have received a copy of the GNU General Public License along 18 | with this program; if not, write to the Free Software Foundation, Inc., 675 19 | Mass Ave, Cambridge, MA 02139, USA. 20 | -------------------------------------------------------------------------------- /src/contrib/GetSNMPLinesUP/COPYRIGHT: -------------------------------------------------------------------------------- 1 | GetSNMPLinesUP.pl 2 | 3 | for 4 | 5 | MRTG - The Multi Router Traffic Grapher. 6 | 7 | 8 | Copyright (c) 1997 Carlos Canau . All rights reserved. 9 | 10 | 11 | This program is free software; you can redistribute it and/or modify it 12 | under the terms of the GNU General Public License as published by the 13 | Free Software Foundation; either version 2 of the License, or (at your 14 | option) any later version. 15 | 16 | This program is distributed in the hope that it will be useful, but 17 | WITHOUT ANY WARRANTY; without even the implied warranty of 18 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 19 | General Public License for more details. 20 | 21 | You should have received a copy of the GNU General Public License along 22 | with this program; if not, write to the Free Software Foundation, Inc., 23 | 675 Mass Ave, Cambridge, MA 02139, USA. 24 | 25 | 26 | -------------------------------------------------------------------------------- /src/contrib/mrtgrq/getreport.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | # This script is used to establish a TCP connection with a host to get the 3 | # report of disk-space quota provided by repquota utility. 4 | # 5 | # use: ./getreport.pl 6 | # 7 | # By Steven Micallef on the 24/4/1999. 8 | # Modified by Adrian Turcu on 18/9/2000. 9 | 10 | use Net::Telnet (); 11 | 12 | $hostname = $ARGV[0]; 13 | $port = $ARGV[1]; 14 | 15 | # If you've changed the port showdisk.pl runs on, change it here too. 16 | #$port = 9047; 17 | 18 | $i = 0; 19 | 20 | if ($hostname eq "" || $port eq "" ) 21 | { 22 | print "Usage: $0 \n"; 23 | exit; 24 | } 25 | 26 | $t = new Net::Telnet ( Host => $hostname, Port => $port); 27 | $t->open("$hostname"); 28 | 29 | do 30 | { 31 | $data = $t->getline(Timeout => 40); 32 | print $data; 33 | } while ( $data ); 34 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/t/colour.t: -------------------------------------------------------------------------------- 1 | use strict; 2 | use GIFgraph::colour qw( :colours :files :lists ); 3 | 4 | my $n_def = scalar @{[colour_list()]}; 5 | 6 | print "1..6\n"; 7 | 8 | # Test 1 .. 2 : read_rgb 9 | 10 | my $n = read_rgb("t/colour_rgb.txt"); 11 | print $n == 44 ? "" : "not " , "ok 1\n"; 12 | $n = scalar @{[colour_list()]}; 13 | print $n == $n_def + 44 ? "" : "not " , "ok 2\n"; 14 | 15 | # Test 3 .. 5 : _rgb, _luminance, _hue 16 | 17 | my @rgb = _rgb('light steel blue'); 18 | print $rgb[0]==176 && $rgb[1]==196 && $rgb[2]==222 ? "" : "not " , "ok 3\n"; 19 | $n = sprintf "%8f", _hue(@rgb); 20 | print $n == 0.776471 ? "" : "not " , "ok 4\n"; 21 | $n = sprintf "%8f", _luminance(@rgb); 22 | print $n == 0.759306 ? "" : "not " , "ok 5\n"; 23 | 24 | # Test 6 .. 6 : lists 25 | 26 | my @list = sorted_colour_list(10); 27 | print scalar(@list) == 10 && $list[0] eq 'white' ? "" : "not " , "ok 6\n"; 28 | 29 | -------------------------------------------------------------------------------- /web/bin/htmlfix.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | case $1 in 3 | *.html) 4 | # tidy -latin1 -wrap 0 -q -asxhtml $1 >$1.fixed 2>$1.report 5 | # TIDY_RET=$? 6 | exit 0 7 | TIDY_RET=0 8 | perl -i -0777 -p -e 's/^\s*//;s{="mailto:(oetiker|tobi|tobias)@(oetiker.ch|ee.ethz.ch)"}{="http://tobi.oetiker.ch/"}g;s{="mailto:(\S*?)\@(\S*?)"}{="mailto:$1@..delete..this..$2"}g' $1.fixed 9 | # yes, beleive it or not IE chockes on propper xhtml pages ... sigh 10 | perl -i -0777 -p -e 's/^\s*<\?xml.+?\?>\s*//;' $1.fixed 11 | if [ $TIDY_RET != 0 ]; then 12 | echo Parsing: $1 13 | egrep -v "^(HTML Tidy|$1:|To learn|Please send|HTML and CSS|Lobby your)" $1.report 14 | rm $1.report 15 | name=`basename $1 .html` 16 | name=`basename $name .en` 17 | name=`basename $name .de` 18 | touch -m -t 198001010000 $name.*.html 19 | exit 1 20 | fi 21 | mv $1.fixed $1 22 | rm $1.report 23 | ;; 24 | esac 25 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/t/pie.t: -------------------------------------------------------------------------------- 1 | use lib './t'; 2 | use strict; 3 | use GIFgraph::pie; 4 | 5 | $::WRITE = 0; 6 | require 'ff.pl'; 7 | 8 | my @data = ( 9 | ["1st","2nd","3rd","4th","5th","6th"], 10 | [ 1, 2, 5, 6, 3, 1.5], 11 | ); 12 | 13 | my @opts = ( 14 | {}, 15 | { 16 | 'start_angle' => 90, 17 | 'title' => 'A pie chart', 18 | 'label' => 'Just data', 19 | }, 20 | ); 21 | 22 | print "1..1\n"; 23 | ($::WARN) && warn "\n"; 24 | 25 | foreach my $i (1) 26 | { 27 | my $fn = 't/pie' . $i . '.gif'; 28 | 29 | my $checkImage = get_test_data($fn); 30 | my $opts = $opts[$i]; 31 | 32 | my $g = new GIFgraph::pie( ); 33 | $g->set( %$opts ); 34 | my $Image = $g->plot( \@data ); 35 | 36 | print (($checkImage eq $Image ? "ok" : "not ok"). " $i\n"); 37 | ($::WARN) && warn (($checkImage eq $Image ? "ok" : "not ok"). " $i\n"); 38 | 39 | write_file($fn, $Image) if ($::WRITE); 40 | } 41 | 42 | -------------------------------------------------------------------------------- /src/contrib/mrtg_php_portal/www/index.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Mrtg statistics 9 | 10 | 11 | 12 |

Configuration:

13 | 16 |

Switch list:

17 | "; 24 | while($filename=$dir ->read()) { 25 | if (eregi("\.(html)$",$filename)) 26 | echo "
  • ".substr($filename, 0, -5)."
  • ";; 27 | } 28 | $dir ->close(); 29 | echo ""; 30 | ?> 31 | 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/install/Makefile.PL: -------------------------------------------------------------------------------- 1 | # This -*- perl -*- script makes the Makefile 2 | # $Id: Makefile.PL,v 1.1.1.1 2002/02/26 10:16:37 oetiker Exp $ 3 | 4 | #--- Distribution section --- 5 | 6 | $MODNAME = 'GIFgraph'; 7 | 8 | BEGIN { require 5.001 } 9 | 10 | use ExtUtils::MakeMaker; 11 | 12 | my @clean = qw(*% *.html *.b[ac]k *.old .[A-z]* tags); 13 | push @clean, map { "*/$_" } @clean; 14 | 15 | WriteMakefile( 16 | 'VERSION_FROM' => $MODNAME . '.pm', #finds $VERSION 17 | 'DISTNAME' => $MODNAME, 18 | 'NAME' => $MODNAME, 19 | 20 | ($] >= 5.005 ? 21 | ('ABSTRACT' => 'Produces GIF graph plots', 22 | 'AUTHOR' => 'Martien Verbruggen (mgjv@comdyn.com.au)', 23 | ) : () 24 | ), 25 | 26 | 'PREREQ_PM' => { 'GD' => 0, }, 27 | 28 | 'dist' => { 29 | 'COMPRESS' => 'gzip -9f', 30 | 'SUFFIX' => 'gz', 31 | }, 32 | 33 | 'clean' => { 'FILES' => join(" ", @clean), }, 34 | ); 35 | 36 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/src/parse.c: -------------------------------------------------------------------------------- 1 | /* 2 | Iulian Radu [v2.0@07.1999] 3 | */ 4 | 5 | #include "vars.h" 6 | 7 | void parsex(char* fcfg); 8 | void parse(char* fcfg); 9 | 10 | #include "util.c" 11 | #include "parse.ftbl" 12 | #include "parse0.c" 13 | #include "parsen.c" 14 | 15 | void parsex(char* fcfg){ 16 | char buf[513]; 17 | FILE* f; 18 | f=fopen(fcfg,"rt"); 19 | if(!f) return; 20 | while(!feof(f)){ 21 | buf[0]=0; //look stupid BUT it is not 22 | fgets(buf,512,f); 23 | if(xdebug) printf("EXTREM DEBUG: %s\n",buf); 24 | trim(buf); 25 | if(!buf[0] || (buf[0]=='#')) continue; 26 | if(buf[0]=='0') parse0(buf+2); 27 | else if(isdigit(buf[0])) 28 | if(!comment) parsen(buf); 29 | } 30 | fclose(f); 31 | } 32 | 33 | void parse(char* fcfg){ 34 | int i,j; 35 | parsex(fcfg); 36 | closehtml(); 37 | if(fm) fclose(fm); 38 | /* close mk? */ 39 | for(i=0;i<4;i++) 40 | for(j=0;j/mrtglog.cgi ./mrtglog.c 14 | 15 | The usage is simple, e.g.: 16 | 17 | ./mrtglog 01/05/03 31/05/03 mrtg.log 18 | 19 | counts all traffic in May 2003. B-) 20 | I use a simple PHP3 script for calling it from my stats.php3 page: 21 | 22 | LOG", 24 | date("y",time()),date("d.m.y",time())); 25 | ?> 26 | 27 | If you have questions, please send me an e-mail: woho@netpark.at 28 | Wolfgang Hoffmann, Austria, http://www.woho.at 29 | # -------------------------------------------------------------------------------- /src/contrib/mrtgmk/src/txte.h: -------------------------------------------------------------------------------- 1 | #ifndef _TXT_H_ 2 | #define _TXT_H_ 3 | 4 | char* etxt[]={ 5 | "by", 6 | "needed", 7 | "optionally", 8 | "configuration file" 9 | }; 10 | 11 | char* btxt[]={ 12 | "Traffic analyses", 13 | "Traffic analysis for", 14 | ".gifs for hosts in the .cfg file" 15 | }; 16 | 17 | char* err[]={ 18 | "\aERROR: openning file %s\n", 19 | "\aERROR: index file %s has length 0 and I erase it\n", 20 | "\aERROR: was not defined a mrtg.cfg file\n", 21 | "\aERROR: port %s missing from %s/%s\n", 22 | "\aERROR: port %s missing from %s\n", 23 | "\aERROR: configuration file %s is missing\n", 24 | "\aERROR: host %s redefined\n", 25 | "\aERROR: alias %s redefined\n", 26 | "\aERROR: alias %s not precedently defined\n", 27 | "\aERROR: host %s not precedently defined\n", 28 | "\aERROR: I can't switch in directory %s\n", //10 29 | "\aERROR: argument for CHECK4ALIAS was %s", 30 | "\aERROR: argument for CHNGTRGNAME was %s" 31 | }; 32 | 33 | #endif 34 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample62.pl: -------------------------------------------------------------------------------- 1 | use GIFgraph::mixed; 2 | 3 | print STDERR "Processing sample 6-2\n"; 4 | 5 | @data = ( 6 | ["1st","2nd","3rd","4th","5th","6th","7th", "8th", "9th"], 7 | [ 9, 8, 9, 8.4, 7.1, 7.5, 8, 3, 3], 8 | [ .4, .3, 1, 1, .3, 1.5, 2, 1, 0], 9 | ); 10 | 11 | $my_graph = new GIFgraph::mixed(); 12 | 13 | $my_graph->set( 14 | x_label => 'X Label', 15 | y1_label => 'Y1 label', 16 | y2_label => 'Y2 label', 17 | title => 'A Mixed Type Graph with Two Axes', 18 | two_axes => 1, 19 | y1_max_value => 10, 20 | y2_max_value => 2.5, 21 | y_min_value => 0, 22 | y_tick_number => 5, 23 | long_ticks => 1, 24 | x_ticks => 0, 25 | legend_marker_width => 24, 26 | line_width => 5, 27 | 28 | bar_spacing => 4, 29 | 30 | types => [ qw( bars lines ) ], 31 | ); 32 | 33 | $my_graph->set_legend( qw( one two three four five six ) ); 34 | 35 | $my_graph->plot_to_gif( "sample62.gif", \@data ); 36 | 37 | exit; 38 | 39 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample14.pl: -------------------------------------------------------------------------------- 1 | use GIFgraph::bars; 2 | 3 | print STDERR "Processing sample 1-4\n"; 4 | 5 | @data = ( 6 | ["1st","2nd","3rd","4th","5th","6th","7th", "8th", "9th"], 7 | [ 5, 12, 24, 33, 19, 8, 6, 15, 21], 8 | [ 1, 2, 5, 6, 3, 1.5, 1, 3, 4] 9 | ); 10 | 11 | $my_graph = new GIFgraph::bars( ); 12 | 13 | $my_graph->set( 14 | x_label => 'X Label', 15 | y1_label => 'Y1 label', 16 | y2_label => 'Y2 label', 17 | title => 'Using two axes', 18 | y1_max_value => 40, 19 | y2_max_value => 8, 20 | y_tick_number => 8, 21 | y_label_skip => 2, 22 | long_ticks => 1, 23 | two_axes => 1, 24 | legend_placement => 'RT', 25 | x_labels_vertical => 1, 26 | x_label_position => 1/2, 27 | 28 | bar_spacing => 2, 29 | 30 | logo => 'logo.gif', 31 | logo_position => 'BR', 32 | ); 33 | 34 | $my_graph->set_legend( 'left axis', 'right axis'); 35 | 36 | $my_graph->plot_to_gif( "sample14.gif", \@data ); 37 | 38 | exit; 39 | 40 | -------------------------------------------------------------------------------- /src/contrib/procmem/getproc.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | 3 | #----------------------------------------------- 4 | # Return processor usage, for a specifig time range (5sec, 1min, 15min) 5 | # 6 | # Author: Dimitrios Stergiou , 26/10/00 7 | # Version : 1.0 8 | # 9 | # Usage: ./getproc.pl cisco_hostname time_range 10 | # time_range can be: 11 | # 3 (The overall CPU busy percentage in the last 5 secs) 12 | # 4 (The overall CPU busy percentage in the last 1 mins) 13 | # 5 (The overall CPU busy percentage in the last 15 mins) 14 | # 15 | # 1.0 Initial version, basic functionality 16 | #----------------------------------------------- 17 | 18 | # Import libraries 19 | use lib "/usr/local/mrtg/lib/mrtg2"; 20 | use MRTG_lib "2.090006"; 21 | use SNMP_Session "0.77"; 22 | use BER "0.77"; 23 | use SNMP_util "0.77"; 24 | use locales_mrtg "0.07"; 25 | 26 | # Query public community on router, return proc usage for specific time range 27 | @command = snmpget($ARGV[0], "enterprises.9.9.109.1.1.1.1.$ARGV[1].1"); 28 | print @command[0]; 29 | -------------------------------------------------------------------------------- /src/contrib/get-multiserial/get-modems.pl: -------------------------------------------------------------------------------- 1 | #!/usr/local/bin/perl 2 | # 3 | # Returns number of active analog and digital dial-ins 4 | # 5 | # This script could be very much improved - it's a quick hack 6 | # and it works ... 7 | # 8 | # I'm doing a "w" sorting out all the important tty's (ttyC for cyclades 9 | # boards) and checking if the correspond to the digita lines 10 | # 11 | # T.Pospisek : 12 | # 13 | # Distributed under the GNU copyleft 14 | # 15 | 16 | # Number of active tty's 17 | $isdn = 0; 18 | $modem = 0; 19 | 20 | # Name of this host 21 | $my_name = "Dial-In"; 22 | 23 | # Our digital lines 24 | $tty{"ttyC12"}="i"; 25 | $tty{"ttyC13"}="i"; 26 | $tty{"ttyC14"}="i"; 27 | $tty{"ttyC15"}="i"; 28 | $tty{"ttyC16"}="i"; 29 | $tty{"ttyC24"}="i"; 30 | $tty{"ttyC25"}="i"; 31 | 32 | open(TTYS, "w -hs|cut -b 10-17|fgrep ttyC|"); 33 | while() { 34 | chop; 35 | s/\s+//; 36 | if( $tty{"$_"} ) { 37 | $isdn++; 38 | } else { 39 | $modem++; 40 | } 41 | } 42 | print "$modem\n"; 43 | print "$isdn\n"; 44 | print "0\n"; 45 | print "$my_name\n"; 46 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/doc/commands: -------------------------------------------------------------------------------- 1 | 0 COMMENT 2 | 0 ENDCOMMENT 3 | 4 | 0 XDEBUG on|off 5 | 6 | 0 INCLUDE cfgfile 7 | 8 | 0 DEFHOST hostname fcfgname port 9 | 10 | 0 MRTG.CFG cfgpathdst cfgpathsrc 11 | 0 HTMLFILE filepath 12 | 13 | 0 HTMLCODE code inserted in html 14 | 0 HTMLLINK link text 15 | 0 LINK2DH host text 16 | 0 MRTGTEXT text inserted in mrtg.cfg 17 | 18 | 0 CFGDIR cfg_path 19 | 20 | 0 TITLE txt 21 | 22 | 0 BODY body arguments 23 | 0 NOBODY 24 | 25 | 0 BASE url 26 | 0 NOBASE 27 | 28 | 0 EXEC cmd 29 | 30 | link = # or RealLink 31 | 0 GIFD link host 32 | 0 GIFW link host 33 | 0 GIFM link host 34 | 0 GIFY link host 35 | 36 | 0 ALIAS alias_name alias_body 37 | 0 DELALIAS alias_name 38 | 0 CHECK4ALIAS yes|no 39 | 40 | 0 MSG msg 41 | 42 | 0 MKLINK dir host path 43 | 44 | 0 MKD fcfg htmlfilename 45 | 0 MKW fcfg htmlfilename 46 | 0 MKM fcfg htmlfilename 47 | 0 MKY fcfg htmlfilename 48 | 49 | 0 CHNGTRGNAME yes|no 50 | 0 CONVIP2NAME mrtg_out_path 51 | 0 CONVNAME2IP mrtg_out_path 52 | 53 | n HTMLCODE html code 54 | n HTMLLINK link text 55 | n LINK2DH host text 56 | n DATA host text 57 | -------------------------------------------------------------------------------- /src/contrib/ovmrtg/ovsho: -------------------------------------------------------------------------------- 1 | #!/usr/local/bin/perl5 2 | # -*- mode: Perl -*- 3 | ################################################################## 4 | # This file controls the creation of all the MRTG config files from OV 5 | ################################################################## 6 | # Created by Laurie Gellatly 7 | # See newrtrov.txt for a description of what is performed 8 | ################################################################# 9 | # 10 | # Distributed under the GNU copyleft 11 | # 12 | # $Id: ovsho,v 1.1.1.1 2002/02/26 10:16:36 oetiker Exp $ 13 | # 14 | use Socket; 15 | use strict; 16 | use vars '$DEBUG'; 17 | my $DEBUG = 0; 18 | my $rundir = "/opt/mrtg/run"; 19 | my $dnsfile = "ovmrtgc.csv"; 20 | 21 | my($line,@sysnms); 22 | 23 | sub main { 24 | 25 | chdir $rundir; 26 | 27 | open (DNSFILE,"<".$dnsfile); 28 | while(){ 29 | chomp; 30 | $line = $_; 31 | $sysnms[@sysnms]= (split /\,/,$line)[2]; 32 | } 33 | close (DNSFILE); 34 | `ovtgts $ENV{OVwSessionID} @sysnms`; 35 | 36 | } 37 | main; 38 | exit(0); 39 | 40 | -------------------------------------------------------------------------------- /src/contrib/GetSNMPLinesUP/Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # 3 | 4 | # $Id: Makefile,v 1.1.1.1 2002/02/26 10:16:30 oetiker Exp $ 5 | # $Source: /home/oetiker/data/cvs-repo/AABM-mrtg/contrib/GetSNMPLinesUP/Makefile,v $ 6 | # $Log: Makefile,v $ 7 | # Revision 1.1.1.1 2002/02/26 10:16:30 oetiker 8 | # Intial Import 9 | # 10 | 11 | ADMINDIR=/home/mrtg/bin 12 | 13 | # RCSFILES 14 | CI = -ci 15 | CO = -co 16 | COFLAGS = -l 17 | 18 | CC = gcc 19 | CFLAGS = -O 20 | LIBS = -lresolv -l44bsd 21 | 22 | .c.o: 23 | $(CC) $(CFLAGS) -c $*.c 24 | 25 | TARGETS = ModemTable.dial-machine 26 | 27 | PROGS = GetSNMPLinesUP.pl 28 | 29 | RCSFILES = $(TARGETS) $(PROGS) 30 | 31 | all: install 32 | 33 | checkin: 34 | make clean 35 | $(CI) $(RCSFILES) 36 | $(CI) -u Makefile 37 | 38 | checkout: 39 | $(CO) $(COFLAGS) $(RCSFILES) 40 | $(CO) -l Makefile 41 | 42 | linux: 43 | make CFLAGS="-O -DLINUX" LIBS="" all 44 | 45 | install: $(PROGS) $(TARGETS) 46 | install -g staff -m 0644 -o root $(TARGETS) $(ADMINDIR) 47 | install -g staff -m 0755 -o root $(PROGS) $(ADMINDIR) 48 | 49 | clean: 50 | /bin/rm -f *~ *.o ,* core tmp* 51 | 52 | -------------------------------------------------------------------------------- /src/contrib/mrtglog/mrtglog.h: -------------------------------------------------------------------------------- 1 | /***************************** 2 | ** woho's MRTG Logfile cgi ** 3 | *****************************/ 4 | 5 | // define the path to your htmldocs here: 6 | #define PFAD "/usr/local/httpd/htdocs" 7 | 8 | // default HTML header: 9 | #define HTMLHEAD "Content-type: text/html\n\n" 10 | 11 | // in english you'd write "Statistics" here: 12 | #define STATS "Auswertung" 13 | 14 | // just replace the german word, if necessary: 15 | #define FROM "von" 16 | 17 | // just replace the german word, if necessary: 18 | #define TO "bis" 19 | 20 | // This is the information at the end of the page. It tells that those month, 21 | // where no data exists, are skipped. 22 | // More info would be usefull, e.g. that mrtg logfiles only collect averages. 23 | #define INFOTEXT "ACHTUNG: Hier sind lediglich Durchschnittswerte der Messzeiträume (je 5 Min.) aufsummiert.
    Diese Statististik ist somit nicht sehr genau!
    Monate, für die keine Mengenaufzeichnungen existieren, werden automatisch ausgeblendet." 24 | 25 | // and in the end, the love you take, is equal to the love you make. (John Lennon) -------------------------------------------------------------------------------- /src/contrib/mrtgmk/src/txtro.h: -------------------------------------------------------------------------------- 1 | #ifndef _TXT_H_ 2 | #define _TXT_H_ 3 | 4 | char* etxt[]={ 5 | "de", 6 | "obligatoriu", 7 | "optional", 8 | "fisierul pt. configurare" 9 | }; 10 | 11 | char* btxt[]={ 12 | "Analiza trafic", 13 | "Analiza traficului pentru", 14 | ".gifs pentru hosturile definite in fisierul" 15 | }; 16 | 17 | char* err[]={ 18 | "\aERROR: deschidere fisier %s\n", 19 | "\aERROR: fisierul index %s are lungime 0 si il sterg\n", 20 | "\aERROR: nu a fost definit un fisier mrtg.cfg\n", 21 | "\aERROR: portul %s lipseste din %s/%s\n", 22 | "\aERROR: portul %s lipseste din %s\n", 23 | "\aERROR: fisierul de configurare %s lipseste\n", 24 | "\aERROR: hostul %s redefinit\n", 25 | "\aERROR: alias %s redefinit\n", 26 | "\aERROR: nu a fost definit nici un alias %s\n", 27 | "\aERROR: nu a fost definit nici un host %s\n", 28 | "\aERROR: nu ma pot muta in directorul %s\n", //10 29 | "\aERROR: argumentul pentru CHECK4ALIAS a fost %s", 30 | "\aERROR: argumentul pentru CHNGTRGNAME a fost %s" 31 | }; 32 | 33 | #endif 34 | -------------------------------------------------------------------------------- /src/contrib/ovmrtg/buildrtov: -------------------------------------------------------------------------------- 1 | #Echo This file builds the router config files for MRTG for each router"s interfaces 2 | #Echo See NEWRTR.TXT for details on buiding a new router to include 3 | 4 | rm *.cfg 5 | perl cfgmakerov 10.26.254.1 > nrgiga.cfg 6 | perl cfgmakerov 203.20.28.1 > zenith.cfg 7 | perl cfgmakerov 193.20.1.1 > cwdrtr1.cfg 8 | perl cfgmakerov 193.20.1.2 > cwdrtr2.cfg 9 | perl cfgmakerov 193.250.1.19 > cwdrtr3.cfg 10 | perl cfgmakerov 193.250.1.20 > cwdrtr4.cfg 11 | perl cfgmakerov 193.22.1.1 > melrtr1.cfg 12 | perl cfgmakerov 193.21.1.1 > sydrtr1.cfg 13 | perl cfgmakerov 193.21.1.2 > sydrtr2.cfg 14 | perl cfgmakerov 193.250.1.3 > sydrtr3.cfg 15 | perl cfgmakerov 10.224.124.0 > tasc1r01.cfg 16 | perl cfgmakerov 10.224.124.1 > tasc2r02.cfg 17 | perl cfgmakerov 10.25.252.3 > strc1r01.cfg 18 | perl cfgmakerov 10.27.252.3 > nrdc1r01.cfg 19 | perl cfgmakerov 10.24.253.21 > strrtr01.cfg 20 | perl cfgmakerov 10.24.253.22 > strrtr02.cfg 21 | perl cfgmakerov 193.250.1.145 > shrtr1.cfg 22 | perl cfgmakerov 10.20.20.1 > voda_router.cfg 23 | perl cfgmakerov 190.55.55.9 > total-tel-tulla.cfg 24 | -------------------------------------------------------------------------------- /src/contrib/cpumon/README: -------------------------------------------------------------------------------- 1 | cpumon.pl 2 | 3 | I use this script to monitor cpu usage on any process that 4 | maintains a pid file. Usage is very simple: 5 | 6 | cpumon.pl 7 | 8 | To install, first edit the "ps" and "psargs" variables as 9 | needed. I found it easier to have these defined rather than 10 | hardcoded due to differences between ucb-based and SysV-based 11 | ps functions. 12 | 13 | cpumon.pl will return the cpu usage of the pid in the pidfile 14 | you specify in the appropriate format for MRTG. For monitoring 15 | processes on remote machines that are not snmpable, I run this 16 | program out of inetd (so I can tcp_wrap it) on a high port. 17 | See http://www.blackened.com/ircstats/ for cpu monitoring 18 | examples. 19 | 20 | To run this from mrtg, the syntax would be like: 21 | 22 | Target[cpu]: `path/to/cpumon.pl /path/to/pidfile` 23 | 24 | Direct questions or suggestions to me. 25 | 26 | Have fun! 27 | 28 | -mjr 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /src/contrib/GetSNMPLinesUP/README: -------------------------------------------------------------------------------- 1 | 2 | GetSNMPLinesUP.pl 3 | 4 | for 5 | 6 | MRTG - The Multi Router Traffic Grapher. 7 | 8 | 9 | Copyright (c) 1997 Carlos Canau . All rights reserved. 10 | 11 | 12 | See the file COPYRIGHT in the distribution for the exact terms. 13 | 14 | See the file INSTALL for installation instructions. 15 | 16 | 17 | GetSNMPLinesUP.pl checks some SNMP variables for a certain value and 18 | returns their sum in a format used to feed values to MRTG. This was 19 | written in RedHat Linux 3.0.3 with a 2.0.29 kernel with perl 20 | 5.003. Other SO's may vary. Use at your own risk :> 21 | 22 | As usual no time to write much documentation. As usual read the 23 | source, send me questions, comments, changes, improvements and 24 | patches. 25 | 26 | 27 | I have to thank the following people: 28 | 29 | - Tobias Oetiker and Dave Rand 30 | for MRTG. 31 | 32 | - Peter W. Osel from whom I've ripped the README, 33 | INSTALL and COPYRIGHT file format from his wonderfull mrtg-ping-probe 34 | :>. 35 | -------------------------------------------------------------------------------- /web/navbar.inc: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | #include "doc/navbar.inc" 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/readme.1st: -------------------------------------------------------------------------------- 1 | "mrtgmk" by Iulian Radu (iulian_r@starnets.ro) [v2.2] 2 | 3 | "mrtgmk" is giftware. It is my contribution to mrtg package. 4 | 5 | "mrtgmk" is a program that scan a .cfg file and generate a mrtg.cfg 6 | style file + a .html file with links to the .html files generated 7 | by mrtg. 8 | 9 | Version 2.2 bring you a strong facility: you can rename the target 10 | defined inside of genereated mrtg.cfg file. Using this new facility, 11 | you will no longer depends on snmp index value. So, if the index of 12 | a port is changed on a router, your graphics will still reprezent 13 | corect the history of a host. 14 | 15 | If you need to migrate from v1.x to v2.x read the readme.1st and use 16 | the program from v1_to_v2 directory. 17 | 18 | To learn to use mrtgmk v2.x read the docs from doc directory. 19 | 20 | In cfg directory you will find an example of a cfg file for mrtgmk v2.x. 21 | 22 | Because I dont make all the times checkes for receiving of correct arguments, 23 | a core dump is posible :( , everything depends on you. 24 | 25 | Iulian Radu (iulian_r@starnets.ro). 26 | 13th July 1999 12:00am Romanian time 27 | -------------------------------------------------------------------------------- /src/contrib/mrtg-archiver/mrtg.archive.conf: -------------------------------------------------------------------------------- 1 | # Filename: mrtg.archive.conf 2 | # Configuration file for mrtg.archive.pl 3 | # 4 | # Place this file in the same directory as mrtg-archive.pl. 5 | # Default placement of these files is in /usr/local/sbin 6 | # 7 | # If you place them elsewhere, change the $Conf_File setting in mrtg.archive.pl. 8 | # 9 | 10 | # 11 | # User configuration section 12 | # 13 | 14 | # Define list of nodes to archive 15 | #@nodes_to_archive = ('router1','router2','router3','etc'); 16 | @nodes_to_archive = ('192.168.1.1','192.168.99.16','192.168.17.1'); 17 | 18 | # Define list of interfaces for summary files 19 | #@nodes_to_summary = ('router1.iface#','etc'); 20 | @nodes_to_summary = ('192.168.1.1.2','192.168.1.17.1'); 21 | 22 | # Define list of common gifs to link 23 | @common_gifs = ('mrtg-l.gif','mrtg-m.gif','mrtg-r.gif','mrtg-ti.gif'); 24 | 25 | # Define working directories 26 | $MRTG_DIR = "/home/httpd/html/mrtg"; 27 | $ARCHIVE_DIR = "$MRTG_DIR/archive"; 28 | $TO_DIR = "$ARCHIVE_DIR/$date"; 29 | 30 | # 31 | # End user configuration section 32 | # 33 | 34 | 1; #do not remove this line 35 | 36 | # Eof: mrtg.archive.conf 37 | -------------------------------------------------------------------------------- /.github/workflows/build-linux.yml: -------------------------------------------------------------------------------- 1 | name: full-check 2 | 3 | on: 4 | push: 5 | branches: 6 | - master 7 | pull_request: 8 | branches: 9 | - master 10 | workflow_dispatch: 11 | 12 | jobs: 13 | build: 14 | 15 | runs-on: ubuntu-22.04 16 | 17 | steps: 18 | - uses: actions/checkout@v2 19 | - name: install_dependencies 20 | run: | 21 | sudo apt-get update 22 | sudo apt-get remove -yq libgd3 nginx 23 | sudo apt-get install -yq libgd-dev libpng-dev zlib1g-dev 24 | - name: build_and_install 25 | run: | 26 | cd src 27 | ./bootstrap 28 | ./configure 29 | make 30 | make doc 31 | sudo make install 32 | - name: unit_test 33 | run: | 34 | cd src 35 | prove 36 | - name: functional_test 37 | run: | 38 | mkdir test-mrtg 39 | cd test-mrtg 40 | echo "WorkDir: $GITHUB_WORKSPACE/test-mrtg" > mrtg.cfg 41 | LANG=C /opt/mrtg-2/bin/mrtg mrtg.cfg 42 | ls 43 | ls | egrep mrtg-r.png 44 | ls | egrep mrtg.ok 45 | -------------------------------------------------------------------------------- /src/contrib/mrtgrq/mrtgrq.css: -------------------------------------------------------------------------------- 1 | /* 2 | Author: Adrian Turcu 3 | Created: 16 April 2000 4 | Version: 1 5 | */ 6 | 7 | BODY { 8 | background-color: f5fffa; 9 | } 10 | A { 11 | text-decoration: none; 12 | } 13 | A:link { 14 | color: 0000cd; 15 | } 16 | A:visited { 17 | color: 0000cd; 18 | } 19 | A:active { 20 | color: 0000cd; 21 | } 22 | 23 | 24 | H1 {white-space: nowrap; border: none; padding: 0.5em; margin-top: 25px; position: relative;} 25 | H1 A {text-decoration: none;} 26 | 27 | H1, H1 A {color: #f8f8ff; background: #4169e1;} 28 | 29 | .pt { border: none; padding: 0.25em; width: 1020px; text-align: center; font-weight: 800;} 30 | .pt, .pt A {text-decoration: none; color: #f8f8ff; background: #0000cd;} 31 | 32 | .ptl { border: none; padding: 0.25em; width: 1020px; text-align: left; font-weight: 800;} 33 | .ptl, .ptl A {text-decoration: none; color: #f8f8ff; background: #0000cd;} 34 | 35 | .pth { border: none;text-decoration: none; background: #e8e8ff; color: #111111; text-align: left; font-weight: 800;} 36 | .ptb { border: none;text-decoration: none; color: #0000cd; text-align: left; font-weight: 800;} 37 | -------------------------------------------------------------------------------- /src/contrib/ovmrtg/ovsysnms: -------------------------------------------------------------------------------- 1 | #!/usr/local/bin/perl5 2 | # -*- mode: Perl -*- 3 | ################################################################## 4 | # Config file creator 5 | ################################################################## 6 | # Created by Laurie Gellatly 7 | # this produces an array of ip address and system names for each 8 | # ip address passed to it, by pulling info 9 | # off the device via snmp 10 | ################################################################# 11 | # 12 | # Distributed under the GNU copyleft 13 | # 14 | # $Id: ovsysnms,v 1.1.1.1 2002/02/26 10:16:36 oetiker Exp $ 15 | # 16 | use Socket; 17 | use strict; 18 | use ovmrtg; 19 | use vars '$DEBUG'; 20 | my $DEBUG = 0; 21 | 22 | 23 | my($router,@res,$cnt); 24 | 25 | sub main { 26 | 27 | $router = $ARGV[0]; 28 | die <> resolved 33 | 34 | 35 | USAGE 36 | @res = ovsysnms(@ARGV); 37 | for($cnt = 0 ; $cnt < @res; ++$cnt){ 38 | print "$res[$cnt]\n"; 39 | } 40 | } 41 | main; 42 | exit(0); 43 | 44 | -------------------------------------------------------------------------------- /web/inc/IE7/ie7-css-strict.js: -------------------------------------------------------------------------------- 1 | /* 2 | IE7, version 0.9 (alpha) (2005-08-19) 3 | Copyright: 2004-2005, Dean Edwards (http://dean.edwards.name/) 4 | License: http://creativecommons.org/licenses/LGPL/2.1/ 5 | */ 6 | IE7.addModule("ie7-css-strict",function(){if(!modules["ie7-css2-selectors"])return;StyleSheet.prototype.specialize({parse:function(){this.inherit();var r=[].concat(this.rules);r.sort(ie7CSS.Rule.compare);this.cssText=r.join("\n")},createRule:function(s,c){var m;if(m=s.match(ie7CSS.PseudoElement.MATCH))return new ie7CSS.PseudoElement(m[1],m[2],c);else if(m=s.match(ie7CSS.DynamicRule.MATCH))return new ie7CSS.DynamicRule(s,m[1],m[2],m[3],c);else return new ie7CSS.Rule(s,c)}});ie7CSS.specialize({apply:function(){this.inherit();this.Rule.MATCH=/([^{}]+)(\{[^{}]*\})/g}});ie7CSS.Rule.compare=function(r1,r2){return r1.specificity-r2.specificity};var N=[],I=/#/g,C=/[.:\[]/g,T=/^\w|[\s>+~]\w/g;ie7CSS.Rule.score=function(s){return(s.match(I)||N).length*10000+(s.match(C)||N).length*100+(s.match(T)||N).length};ie7CSS.Rule.simple=function(){return""};ie7CSS.Rule.prototype.specialize({specificity:0,init:function(){this.specificity=ie7CSS.Rule.score(this.selector)}})}); 7 | -------------------------------------------------------------------------------- /src/contrib/net-hosts/net-hosts.css: -------------------------------------------------------------------------------- 1 | /* 2 | Author: Adrian Turcu 3 | Created: 16 April 2000 4 | Version: 1 5 | */ 6 | 7 | BODY { 8 | background-color: f5fffa; 9 | } 10 | A { 11 | text-decoration: none; 12 | } 13 | A:link { 14 | color: 0000cd; 15 | } 16 | A:visited { 17 | color: 0000cd; 18 | } 19 | A:active { 20 | color: 0000cd; 21 | } 22 | 23 | 24 | H1 {white-space: nowrap; border: none; padding: 0.5em; margin-top: 25px; position: relative;} 25 | H1 A {text-decoration: none;} 26 | 27 | H1, H1 A {color: #f8f8ff; background: #4169e1;} 28 | 29 | .pt { border: none; padding: 0.25em; width: 1020px; text-align: center; font-weight: 800;} 30 | .pt, .pt A {text-decoration: none; color: #f8f8ff; background: #0000cd;} 31 | 32 | .ptl { border: none; padding: 0.25em; width: 1020px; text-align: left; font-weight: 800;} 33 | .ptl, .ptl A {text-decoration: none; color: #f8f8ff; background: #0000cd;} 34 | 35 | .pth { border: none;text-decoration: none; background: #e8e8ff; color: #111111; text-align: left; font-weight: 800;} 36 | .ptb { border: none;text-decoration: none; color: #0000cd; text-align: left; font-weight: 800;} 37 | -------------------------------------------------------------------------------- /src/contrib/PMLines/mrtg.cfg-demo: -------------------------------------------------------------------------------- 1 | # 2 | # Usage example on .cfg file: 3 | # 4 | Target[dial]: `/usr/local/mrtg/PM3Lines.pl public@dial` 5 | WithPeak[dial]: wym 6 | Directory[dial]: data 7 | Options[dial]: growright, absolute, gauge 8 | MaxBytes[dial]: 30 9 | AbsMax[dial]: 30 10 | Title[dial]: dial.EUnet.pt : MODEMS/ISDN 11 | Unscaled[dial]: dwyn 12 | YLegend[dial]: Interfaces 13 | Colours[dial]: GOLDENROD#D2A13B,BLUE1#0000ff,DARK GREEN#006600,VIOLET#ff00ff 14 | XSize[dial]: 340 15 | YSize[dial]: 100 16 | ShortLegend[dial]: if's 17 | Legend1[dial]: Modems 18 | Legend2[dial]: ISDN 19 | Legend3[dial]: Maximal 5 Minute Modems 20 | Legend4[dial]: Maximal 5 Minute ISDN 21 | LegendI[dial]:   modems: 22 | LegendO[dial]:   ISDN: 23 | PageTop[dial]:

    Interface Number for dial.EUnet.pt 24 |
    dial.EUnet.pt Interfaces

    25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 |
    System:dial.EUnet.pt
    Maintainer:
    Interface:MODEMS/ISDN
    IP:dial.EUnet.pt (127.0.0.1)
    Max Interfaces:10 Asyncs / 30 ISDN
    33 | 34 | 35 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample42.pl: -------------------------------------------------------------------------------- 1 | use GIFgraph::linespoints; 2 | 3 | print STDERR "Processing sample 4-2\n"; 4 | 5 | @data = read_data_from_csv("sample42.dat") 6 | or die "Cannot read data from sample42.dat"; 7 | 8 | $my_graph = new GIFgraph::linespoints( ); 9 | 10 | $my_graph->set( 11 | x_label => 'X Label', 12 | y_label => 'Y label', 13 | title => 'A Lines and Points Graph, reading a CSV file', 14 | y_max_value => 80, 15 | y_tick_number => 6, 16 | y_label_skip => 2, 17 | markers => [ 1, 5 ], 18 | ); 19 | 20 | $my_graph->set_legend( 'data set 1', 'data set 2' ); 21 | 22 | $my_graph->plot_to_gif( "sample42.gif", \@data ); 23 | 24 | exit; 25 | 26 | sub read_data_from_csv 27 | { 28 | my $fn = shift; 29 | my @d = (); 30 | 31 | open(ZZZ, $fn) || return (); 32 | 33 | while () 34 | { 35 | chomp; 36 | # you might want Text::CSV here 37 | my @row = split /,/; 38 | 39 | for (my $i = 0; $i <= $#row; $i++) 40 | { 41 | undef $row[$i] if ($row[$i] eq 'undef'); 42 | push @{$d[$i]}, $row[$i]; 43 | } 44 | } 45 | 46 | close (ZZZ); 47 | 48 | return @d; 49 | } 50 | 51 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/src/util.c: -------------------------------------------------------------------------------- 1 | /* 2 | Iulian Radu [v2.0@07.1999] 3 | */ 4 | 5 | char* extractfname(char* fname){ 6 | char* cptmp; 7 | cptmp=fname+strlen(fname)-1; 8 | while((cptmp>=fname) && (cptmp[0]!='/')) cptmp--; 9 | return cptmp+1; 10 | } 11 | 12 | void ltrim(char* buf){ 13 | char* tmp; 14 | for(tmp=buf;tmp[0] && isspace(tmp[0]);tmp++); 15 | strcpy(buf,tmp); 16 | } 17 | 18 | void rtrim(char* buf){ 19 | char* tmp; 20 | for(tmp=buf-1;buf[0];buf++) 21 | if(!isspace(buf[0])) tmp=buf; 22 | tmp[1]=0; 23 | } 24 | 25 | void trim(char*buf){ 26 | ltrim(buf); 27 | rtrim(buf); 28 | } 29 | 30 | char* findnsp(char* str,int n){ /*unde incepe cuvintul de dupa al n-lea spatiu*/ 31 | while(str[0] && n) 32 | if(isspace(str[0])){ 33 | n--; 34 | for(;str[0] && isspace(str[0]);str++); 35 | } 36 | else str++; 37 | return str; 38 | } 39 | 40 | char* findnc(char* str,int n,char ch){ /*gaseste al n-lea ch*/ 41 | for(;str[0] && n;str++) 42 | if(str[0]==ch) n--; 43 | return str; 44 | } 45 | 46 | void killnl(char* buf){ 47 | for(;buf[0];buf++){ 48 | if(buf[0]=='\n'){ 49 | buf[0]=0; 50 | return;} 51 | if(buf[0]=='\r'){ 52 | buf[0]=0; 53 | return;} 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /src/contrib/ipfilter/ip-filter.readme: -------------------------------------------------------------------------------- 1 | I've found the simple enclosed perl script useful to use mrtg to graph 2 | traffic through our IP-Filter firewall. The script may need some 3 | fiddling with the regular expressions to graph what you need at your 4 | site; our if-filter configuration blocks everything on the WAN 5 | interface by default and allows specific protocols in with `pass in 6 | quick' and `block in quick' rules on groups from 100-190; hence the 7 | simple regular expressions. 8 | 9 | The usage in mrtg.cfg here is: 10 | 11 | # firewall 12 | 13 | Target[firewall]: `./fw.pl` 14 | 15 | Options[firewall]: growright, noinfo, perhour 16 | 17 | MaxBytes[firewall]: 50000 18 | 19 | Title[firewall]: IP-Filter 20 | 21 | PageTop[firewall]:
    22 |

    Firewall Traffic Analysis

    23 |

    Syn/Ack Packets Passed (Connections) on le1 (24.7.4.75)

    24 |
    25 | 26 | YLegend[firewall]: Packets per Hour 27 | ShortLegend[firewall]: pkts/hr 28 | Legend1[firewall]: Inbound connections per hour 29 | Legend2[firewall]: Outbound connections per hour 30 | 31 | -- 32 | 33 | Ronald Florence http://members.home.net/18james 34 | 35 | -------------------------------------------------------------------------------- /src/contrib/ovmrtg/ovtst: -------------------------------------------------------------------------------- 1 | #!/usr/local/bin/perl5 2 | # -*- mode: Perl -*- 3 | ################################################################## 4 | # This file controls the creation of all the MRTG config files from OV 5 | ################################################################## 6 | # Created by Laurie Gellatly 7 | # See newrtrov.txt for a description of what is performed 8 | ################################################################# 9 | # 10 | # Distributed under the GNU copyleft 11 | # 12 | # $Id: ovtst,v 1.1.1.1 2002/02/26 10:16:36 oetiker Exp $ 13 | # 14 | use Socket; 15 | use strict; 16 | use vars '$DEBUG'; 17 | my $DEBUG = 0; 18 | my $webdir = "/var/opt/ns-fasttrack/docs/mrtg/"; 19 | my $rundir = "/opt/mrtg/run"; 20 | my $testout = "test.out"; 21 | my $roothtml = "routers.html"; 22 | 23 | my($router,$sysn,$sysncfg,$sysnhtml,$cnt,@sysipnms,@mrtgc,@sysnms); 24 | 25 | sub main { 26 | 27 | chdir $rundir; 28 | @sysnms=%ENV; 29 | chomp(@sysipnms); 30 | open (MRTGC,">".$testout); 31 | for ($cnt = 0; $cnt < @sysnms ; $cnt++){ 32 | print MRTGC "$sysnms[$cnt]\n"; 33 | } 34 | close (MRTGC); 35 | } 36 | main; 37 | exit(0); 38 | 39 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # mrtg 2 | 3 | [![Gitter](https://badges.gitter.im/oetiker/mrtg.svg)](https://gitter.im/oetiker/mrtg?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) 4 | [![full-check](https://github.com/oetiker/mrtg/actions/workflows/build-linux.yml/badge.svg)](https://github.com/oetiker/mrtg/actions/workflows/build-linux.yml) 5 | 6 | **What is MRTG ?** 7 | 8 | The Multi Router Traffic Grapher (MRTG) is a tool to monitor the traffic load on network links. 9 | MRTG generates HTML pages containing PNG images which provide a LIVE visual representation of this traffic.
    10 | *extract from [mrtg.pod](https://github.com/oetiker/mrtg/edit/master/src/doc/mrtg.pod)* 11 | 12 | Go to http://oss.oetiker.ch/mrtg for all the details about mrtg.
    13 | 14 | **Latest MRTG release** -> [2.17.10](https://github.com/oetiker/mrtg/releases/tag/v2.17.10) 15 | 16 | For installing on **LINUX/UNIX**, follow the instructions in 17 | 18 | [doc/mrtg-unix-guide.txt](https://github.com/oetiker/mrtg/blob/master/src/doc/mrtg-unix-guide.pod) 19 | 20 | If you want to setup MRTG on **WINDOWS NT**, read 21 | 22 | [doc/mrtg-nt-guide.txt](https://github.com/oetiker/mrtg/blob/master/src/doc/mrtg-nt-guide.pod) 23 | -------------------------------------------------------------------------------- /src/contrib/mrtg-blast/COPYRIGHT: -------------------------------------------------------------------------------- 1 | ************************************************* 2 | * mrtg-blast * 3 | * Version 1.0 March 11 1997 * 4 | * Network Throughput Monitoring * 5 | ************************************************* 6 | Add on for 7 | MRTG - The Multi Router Traffic Grapher 8 | 9 | 10 | Copyright (c) 1997 Balthasar Indermuehle 11 | All rights reserved. 12 | 13 | 14 | This program is free software; you can redistribute it and/or modify it 15 | under the terms of the GNU General Public License as published by the 16 | Free Software Foundation; either version 2 of the License, or (at your 17 | option) any later version. 18 | 19 | This program is distributed in the hope that it will be useful, but 20 | WITHOUT ANY WARRANTY; without even the implied warranty of 21 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 22 | General Public License for more details. 23 | 24 | You should have received a copy of the GNU General Public License along 25 | with this program; if not, write to the Free Software Foundation, Inc., 26 | 675 Mass Ave, Cambridge, MA 02139, USA. 27 | 28 | -------------------------------------------------------------------------------- /src/contrib/jm/finger-mrtg.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl5 2 | # 3 | # finger-mrtg.pl - 4 | # 5 | # executes "finger @hostname" (hostname is the argument passed into 6 | # the script) and counts how many logins there currently are on that 7 | # machine. 8 | # 9 | # if machine is 'localhost', we just execute 'finger' instead, w/ no 10 | # arguments. 11 | # 12 | # example Target line: 13 | # 14 | # Target[shellbox1]: `/path/to/finger-mrtg.pl shellbox1.mydomain.com` 15 | # 16 | # 17 | # -joey miller, inficad communications, llc. 18 | # 19 | 20 | 21 | if ( ! $ARGV[0] ) { exit; } 22 | 23 | # output: 24 | # 25 | # [user1.inficad.com] 26 | # Login Name Tty Idle Login Time Office Office Phone 27 | # username blah blah *pd 43 Feb 3 16:55 28 | # hello lada lada pa 5:16 Feb 3 15:21 29 | 30 | if ( $ARGV[0] =~ /localhost/ ) { 31 | open(FINGER, "/usr/bin/finger |") || exit; 32 | } else { 33 | open(FINGER, "/usr/bin/finger \@$ARGV[0] |") || exit; 34 | } 35 | 36 | while () { 37 | if ( /^\[.*\]/ ) { next; } 38 | if ( /^Login/ ) { next; } 39 | $count++; 40 | } 41 | 42 | print "$count\n"; 43 | print "$count\n"; 44 | print "0\n"; 45 | print "$ARGV[0]\n"; 46 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/src/parse0.ftbl: -------------------------------------------------------------------------------- 1 | /* 2 | Iulian Radu [v2.0@07.1999] 3 | */ 4 | 5 | struct fncttbl parse0_ftbl[]={ 6 | {"ENDCOMMENT",NULL}, //end of comment block - need to be be 1st 7 | {"COMMENT",fcomment}, //1 8 | {"XDEBUG",fxdebug}, 9 | {"INCLUDE",finclude}, 10 | {"DEFHOST",fdefhost}, 11 | {"MRTG.CFG",fmrtgcfg}, 12 | {"HTMLFILE",fhtmlfile}, 13 | {"CFGDIR",fcfgdir}, 14 | {"NOCFGDIR",fnocfgdir}, 15 | {"HTMLCODE",fhtmlcode0}, 16 | {"MRTGTEXT",fmrtgtext}, //10 17 | {"TITLE",ftitle}, 18 | {"BODY",fbody}, 19 | {"NOBODY",fnobody}, 20 | {"BASE",fbase}, 21 | {"NOBASE",fnobase}, 22 | {"EXEC",fexec}, 23 | {"GIFD",fgifd}, 24 | {"GIFW",fgifw}, 25 | {"GIFM",fgifm}, 26 | {"GIFY",fgify}, //20 27 | {"ALIAS",falias}, 28 | {"DELALIAS",fdelalias}, 29 | {"CHECK4ALIAS",fcheck4alias}, 30 | {"MKLINK",fmklink}, 31 | {"MKD",fmkd}, 32 | {"MKW",fmkw}, 33 | {"MKM",fmkm}, 34 | {"MKY",fmky}, 35 | {"MSG",fmsg}, 36 | {"HTMLLINK",fhtmllink0}, //30 37 | {"LINK2DH",flink2dh0}, 38 | {"CHNGTRGNAME",fchngtrgname}, 39 | {"CONVIP2NAME",fconvip2name}, 40 | {"CONVNAME2IP",fconvname2ip} 41 | }; 42 | 43 | #define NEFTBL0 35 44 | 45 | -------------------------------------------------------------------------------- /src/contrib/PMLines/README: -------------------------------------------------------------------------------- 1 | From: Butch Kemper 2 | Date: Tue, 27 Apr 1999 12:11:55 -0500 3 | 4 | Tobias, 5 | 6 | I have included a new module "PMLines.pl" for the "contrib" directory which 7 | replaces "PM3Lines.pl" and the new module now supports both Livingston PM2 8 | and PM3 servers. 9 | 10 | Butch 11 | 12 | From: Carlos Canau 13 | 14 | Dear Tobias, 15 | 16 | Here's another script for contrib. It allows one to make a 17 | graph of analog/ISDN lines on a Livingston Portmaster 3. No 18 | docs, sorry... 19 | 20 | 23 | Date: Tue, 19 Sep 2000 12:07:36 -0400 24 | 25 | Here is a new modified version of the PMlines.pl script. This one works 26 | with the newest version of PortMaster 4 firmware and all other Portmaster 27 | 2/3/4 products. 28 | 29 | # 2000/9/19 30 | # 31 | # Modified again by Robert Boyle (robert@tellurian.net) to work with 32 | # all Lucent Portmaster 2/3/4 chassis. Now uses port speed to determine if 33 | # call is ISDN or analog. If speed is 56000 or 64000 then call is ISDN. 34 | # This may cause a false ISDN reading if someone has a perfect v.90 connection. 35 | # 36 | # Changed name back to PMlines.pl 37 | # 38 | 39 | -------------------------------------------------------------------------------- /src/contrib/ovmrtg/ovcols: -------------------------------------------------------------------------------- 1 | #!/usr/local/bin/perl5 2 | # -*- mode: Perl -*- 3 | ################################################################## 4 | # Config file creator 5 | ################################################################## 6 | # Created by Laurie Gellatly 7 | # based on mrtg cfgmaker by Tobias Oetiker 8 | # this produces a config file for one router, by pulling info 9 | # off the router via snmp and then writing files ready for 10 | # snmpCollect to use (via xnmcollect) and later ovcvtfile calls 11 | ################################################################# 12 | # 13 | # Distributed under the GNU copyleft 14 | # 15 | # $Id: ovcols,v 1.1.1.1 2002/02/26 10:16:36 oetiker Exp $ 16 | # 17 | use Socket; 18 | use strict; 19 | use vars '$DEBUG'; 20 | use ovmrtg; 21 | my $DEBUG = 0; 22 | my($op,$router,@res); 23 | 24 | sub main { 25 | $op = $ARGV[0]; 26 | $router = $ARGV[1]; 27 | die <set( 13 | x_label => 'Day', 14 | y_label => 'AUD', 15 | title => 'Credits and Debits', 16 | y_max_value => 35, 17 | y_min_value => -15, 18 | y_tick_number => 10, 19 | y_label_skip => 2, 20 | overwrite => 1, 21 | dclrs => [ qw( green lred ) ], 22 | axislabelclr => 'black', 23 | legend_placement => 'RB', 24 | zero_axis_only => 0, 25 | y_number_format => \&y_format, 26 | x_label_position => 1/2, 27 | ); 28 | 29 | my $refit = 4; 30 | 31 | sub y_format 32 | { 33 | my $value = shift; 34 | my $ret; 35 | 36 | if ($value >= 0) 37 | { 38 | $ret = sprintf("\$%3d", $value * $refit); 39 | } 40 | else 41 | { 42 | $ret = sprintf("-\$%3d", abs($value) * $refit); 43 | } 44 | } 45 | 46 | $my_graph->set_legend( 'credits', 'debets' ); 47 | 48 | $my_graph->plot_to_gif( "sample16.gif", \@data ); 49 | 50 | exit; 51 | 52 | -------------------------------------------------------------------------------- /web/inc/IE7/README.txt: -------------------------------------------------------------------------------- 1 | Installation 2 | ------------ 3 | 4 | Follow these simple instructions to get IE7 working immediately on your server: 5 | 6 | * download the latest IE7 ZIP file (https://sourceforge.net/project/showfiles.php?group_id=109983&package_id=119707) 7 | 8 | * extract the contents to a directory on your server (keep the folder names used in the ZIP) 9 | 10 | * you will now have an IE7 directory on your server 11 | 12 | * include the IE7 JavaScript library in the page you wish to test 13 | 14 | 15 | 16 | 17 | * make sure this also points to the same directory 18 | 19 | * open the page in your web browser 20 | 21 | * the page should now be IE7 enabled. 22 | 23 | * if you are using the PNG solution then be aware that it operates on files 24 | names "something-trans.png" 25 | 26 | * see this page for more configuration and usage options: 27 | http://dean.edwards.name/IE7/usage/ 28 | 29 | You may extract the contents of the ZIP file to your hard disk if you do not have access to a web server. 30 | 31 | 32 | Enjoy ;-) 33 | 34 | Dean Edwards, 23rd May 2005 35 | -------------------------------------------------------------------------------- /web/inc/IE7/ie7-dynamic-attributes.js: -------------------------------------------------------------------------------- 1 | /* 2 | IE7, version 0.9 (alpha) (2005-08-19) 3 | Copyright: 2004-2005, Dean Edwards (http://dean.edwards.name/) 4 | License: http://creativecommons.org/licenses/LGPL/2.1/ 5 | */ 6 | IE7.addModule("ie7-dynamic-attributes",function(){if(!modules["ie7-css2-selectors"])return;var attributeSelectors=cssQuery.valueOf("attributeSelectors");var parseSelector=cssQuery.valueOf("parseSelector");function DynamicAttribute(s,a,d,t,c){this.attach=a||"*";parseSelector(d);this.dynamicAttribute=attributeSelectors["@"+d];this.target=t;this.inherit(s,c)};ie7CSS.Rule.specialize({constructor:DynamicAttribute,recalc:function(){var m=cssQuery(this.attach);for(var i=0;i 2 | 3 | GIFgraph examples 4 | 5 | 6 | 7 | 8 |

    GIFgraph examples

    9 | 10 | 18 | 21 | 24 | 28 | 32 | 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /src/translate/mergelocale.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | # 3 | # usage: ./mergelocale.pl skeleton.pm0 lang1.pmd lang2.pmd 4 | # the script then creates locales_mrtg.pm 5 | # 6 | # If you want to modify a locale, modify the pmd file and rerun 7 | # this script and copy the generated locales_mrtg.pm to the run directory. 8 | # 9 | # If you want to translate a locale, copy one of the existing locales and 10 | # translate. Then rerun and copy. 11 | # 12 | ################################################################# 13 | # 14 | # Distributed under the GNU copyleft 15 | # 16 | ################################################################### 17 | 18 | open(OUTFILE,"> locales_mrtg.pm"); 19 | 20 | @patchdb=( 21 | 'PATCHTAG\s*00', 22 | 'PATCHTAG\s*10', 23 | 'PATCHTAG\s*20', 24 | 'PATCHTAG\s*30', 25 | 'PATCHTAG\s*40', 26 | 'PATCHTAG\s*50', 27 | 'PATCHTAG\s*60', 28 | ); 29 | 30 | while(@ARGV){ 31 | push(@languages,shift); 32 | }; 33 | 34 | foreach $patchtag (@patchdb) 35 | { 36 | for $i (@languages) 37 | { 38 | open(LANGF,"< $i"); 39 | $patch=""; 40 | while() 41 | { 42 | if(/\#.\S*PATCHTAG/) 43 | { 44 | $patch=/$patchtag/; 45 | } 46 | else 47 | { 48 | if($patch) { print OUTFILE $_; }; 49 | }; 50 | }; 51 | }; 52 | }; 53 | -------------------------------------------------------------------------------- /src/contrib/ircstats2/example.cf: -------------------------------------------------------------------------------- 1 | WorkDir: /home/lucas/public_html/mrtg 2 | 3 | Refresh: 300 4 | Interval: 5 5 | WriteExpires: Yes 6 | IconDir: images/ 7 | RunAsDaemon: Yes 8 | 9 | #..................................................................... 10 | # Default settings 11 | 12 | MaxBytes[_]: 10000 13 | Options[_]: gauge, noinfo, nopercent, integer, growright 14 | Background[_]: #FFFFC0 15 | YLegend[_]: Users 16 | WithPeak[_]: wym 17 | ShortLegend[_]: Users 18 | Legend1[_]: Users 19 | Legend2[_]: 20 | Legend3[_]: Max Users 21 | Legend4[_]: 22 | LegendI[_]:  Users : 23 | Colours[_]: BLUE#0000FF,BLUE#0000FF,LIGHT BLUE#C0C0FF,LIGHT BLUE#C0C0FF 24 | 25 | Target[global]: `cat /home/lucas/ircstats2/temp/globalusersmrtg` 26 | Title[global]: Irc.Kewl.Org User Load 27 | LegendO[global]: 28 | PageTop[global]:

    Irc.Kewl.Org User Load

    29 | 30 |
    Stats Maintainer :Lucas@Kewl.Org
    31 | 32 | Target[angers]: `cat /home/lucas/ircstats2/temp/angers.fr.eu.kewl.org` 33 | Title[angers]: Angers.FR.EU.Kewl.Org User Load 34 | LegendO[angers]: 35 | PageTop[angers]:

    Angers.FR.EU.Kewl.Org User Load

    36 | 37 |
    Stats Maintainer :Lucas@Kewl.Org
    38 | 39 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/src/parsen.c: -------------------------------------------------------------------------------- 1 | /* 2 | Iulian Radu [v2.0@07.1999] 3 | */ 4 | 5 | int ident=0; 6 | 7 | #include "fnctn.c" 8 | #include "parsen.ftbl" 9 | 10 | int formathtml(){ /* put UL or /UL */ 11 | int i,j,k; 12 | if(ident<1){ 13 | return 1;} 14 | if(!fh) return 1; 15 | if(!identl){ 16 | fprintf(fh,"
      \n"); 17 | identl++;} 18 | if(ident\n");} 24 | } 25 | if(ident>identl){ 26 | i=ident-identl; 27 | k=identl; 28 | for(;i;i--,k++){ 29 | for(j=0;j\n");} 31 | } 32 | for(i=0;iset( 20 | x_label => 'X Label', 21 | y_label => 'Y label', 22 | title => 'A Multiple Line Graph', 23 | y_max_value => 10, 24 | y_min_value => -5, 25 | y_tick_number => 3, 26 | y_label_skip => 1, 27 | zero_axis_only => 0, 28 | long_ticks => 1, 29 | x_ticks => 0, 30 | dclrs => [ qw( darkorchid2 mediumvioletred deeppink darkturquoise ) ], 31 | line_types => [ 1, 2, 3, 4 ], 32 | line_type_scale => 8, 33 | legend_marker_width => 24, 34 | line_width => 3, 35 | ); 36 | 37 | $my_graph->set_legend( 'one', 'two', undef, 'four' ); 38 | 39 | $my_graph->plot_to_gif( "sample53.gif", \@data ); 40 | 41 | exit; 42 | 43 | -------------------------------------------------------------------------------- /src/contrib/cfgmaker_cisco/README: -------------------------------------------------------------------------------- 1 | Folks, 2 | Jon Snyder here at Portland State University, made some 3 | modifications to the CFGMAKER file which instead of just returning 4 | an incrimenting port number on the graps, actually makes the following 5 | type of lable: 6 | Port 4/3, Vlan 128 , multi mode fiber fast ethernet 7 | 8 | This version also grabs and shows all non-VLAN1 VLANS in a 9 | different color, plus provides aggregate VLAN traffic stastics as well by 10 | finding out what ports are in the VLAN, then adding those ports together. 11 | This means of course that a port will be "hit" however many times it is in 12 | a VLAN. 13 | Anyhow, as it is such a small file, I included it as an 14 | attachment. We don't exacily have the time to provide support for this 15 | CFGMAKER modification, but if you have questions or comments, please 16 | direct them to JON@PDX.EDU. 17 | Michael P. Burton 18 | ________________________________________________________________________ 19 | Michael P. Burton "Love is like racing across the frozen tundra 20 | Network Engineer, DCII on a snowmobile which flips over, 21 | Portland State University trapping you underneath. 22 | At night, the ice-weasels come." - Nietchze 23 | ------------------------------------------------------------------------ 24 | -------------------------------------------------------------------------------- /src/contrib/nt_n_cisco/default.asp: -------------------------------------------------------------------------------- 1 | <%@ LANGUAGE="VBSCRIPT" %> 2 | 3 | 4 | 5 | 6 | 7 | MRTG DATA 8 | 9 | 10 | 11 | 12 |

      Your-Router-Name_here

      13 |

      Ports on Router

      14 | <% 15 | Set fs = CreateObject("Scripting.FileSystemObject") 16 | Dim fs, f, f1, fc, fstr, linklen, bufflink 17 | Set fs = CreateObject("Scripting.FileSystemObject") 18 | Set f = fs.GetFolder("e:\inetpub\wwwroot\mrtg\pages\Your-Router-Name_here") 19 | Set fc = f.Files 20 | For Each f1 in fc 21 | fstr = LCase(f1.name) 22 | If Right(fstr, 8) = "-day.gif" Then 23 | linklen = Len(fstr) 24 | buffLink = Mid(fstr,1,(linklen - 8)) 25 | 26 | Response.Write ("
      ") 27 | 28 | Response.Write("") 29 | Response.Write (" ") 30 | Response.write ("") 31 | Response.write (bufflink & "
      ") 32 | Response.Write VbCrLf 33 | Response.write "
      " & VbCrLf 34 | End If 35 | Next 36 | %> 37 | 38 | 39 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/t/lines.t: -------------------------------------------------------------------------------- 1 | use lib './t'; 2 | use strict; 3 | use GIFgraph::lines; 4 | 5 | $::WRITE = 0; 6 | require 'ff.pl'; 7 | 8 | my @data = ( 9 | ["1st","2nd","3rd","4th","5th","6th","7th", "8th", "9th"], 10 | [ 9, 2, 5, 6, 3, 1.5, 9, 3, 4], 11 | [ 3, 7, 8, 2, 4, 1.5, 2, 5, 1] 12 | ); 13 | 14 | my @opts = ( 15 | {}, 16 | { 17 | 'x_label' => 'X Label', 18 | 'y_label' => 'Y label', 19 | 'title' => 'A line chart', 20 | 'y_max_value' => 11, 21 | 'y_min_value' => 1, 22 | 'y_tick_number' => 5, 23 | 'y_label_skip' => 2, 24 | 'x_ticks' => 1, 25 | 'axis_space' => 8, 26 | 'transparent' => 1, 27 | 'interlaced' => 1, 28 | 'line_types' => [3,4,1,2], 29 | }, 30 | ); 31 | 32 | print "1..1\n"; 33 | ($::WARN) && warn "\n"; 34 | 35 | foreach my $i (1) 36 | { 37 | my $fn = 't/lines' . $i . '.gif'; 38 | 39 | my $checkImage = get_test_data($fn); 40 | my $opts = $opts[$i]; 41 | 42 | my $g = new GIFgraph::lines( ); 43 | $g->set( %$opts ); 44 | my $Image = $g->plot( \@data ); 45 | 46 | print (($checkImage eq $Image ? "ok" : "not ok"). " $i\n"); 47 | ($::WARN) && warn (($checkImage eq $Image ? "ok" : "not ok"). " $i\n"); 48 | 49 | write_file($fn, $Image) if ($::WRITE); 50 | } 51 | 52 | -------------------------------------------------------------------------------- /web/cast/index.wml: -------------------------------------------------------------------------------- 1 | 3 | 4 |

      Cast

      5 | 6 |

      Main Characters

      7 | 8 |

      Tobias Oetiker -- original design, main developer.

      9 |

      Dave Rand -- created the rateup program and got me started on mrtg-2.

      10 |

      Simon Leinen -- wrote the perl SNMP library included with mrtg.

      11 |

      Daniel J McDonald and Mike Mitchell -- contributed SNMPv3 support.

      12 |

      Jakob Ilves -- rewrote cfgmaker for maximum flexibilty.

      13 |

      Valerio Bontempi and Lorenzo Colitti -- added IpV6 support.

      14 |

      Alex van den Bogaerdt and Paul C. Williamson -- act as mailinglist guardians.

      15 | 16 |

      Also With

      17 | 18 |

      Tim Kennedy -- who provides the www.mrtg.org dns reflector

      19 | 20 |

      Additional Cast

      21 | 22 |

      Over the years many people have coded for MRTG. Their contributions 23 | have helped greatly to make MRTG as useful as it is today.

      24 | 25 |

      26 | #include "contrib.inc" 27 |

      28 | 29 |

      Note that above list is generated from the records I have in the CHANGES 30 | file. If your name came out wrong, please let me know so that I can fix 31 | it.

      32 | -------------------------------------------------------------------------------- /src/contrib/ircstats2/README: -------------------------------------------------------------------------------- 1 | ircstats2.pl v1.3 (06/04/2001) 2 | 3 | ircstats2.pl is a perl script I use to monitor 4 | the user load of the Langochat.net IRC Network. 5 | - Lucas Nussbaum 6 | Homepage : http://www.schickler.net/lucas/ircstats2/ 7 | 8 | Usage : 9 | 10 | All the configuration is done in ircstats2.pl. 11 | You can look at example.cf to learn how to configure mrtg with this script. 12 | To restart the script if it crashes (this soft is supposed to be bug-free, 13 | so that shouldn't happen), you can use the crontab script included. 14 | 15 | Changes : 16 | 17 | 1.3 (21/03/2001) 18 | - Now counts servers and ircops too. 19 | 1.2 (25/01/2001) 20 | - Better calculation of the global user load, when the list of servers 21 | isn't up to date. 22 | - Now counts the number of channels too :) 23 | - Can display the global users and channels count in plain text file, 24 | enabling those files to be used in other scripts. 25 | 26 | 1.1 (24/08/2000) 27 | - Initial public release 28 | 29 | Licence : 30 | 31 | This software is subject to the 32 | 33 | GNU GENERAL PUBLIC LICENCE version 2 or above 34 | 35 | It can be found on http://www.gnu.org/copyleft/gpl.html 36 | 37 | However, if you modify something in this script, I would strongly appreciate 38 | that you send me a copy. 39 | -------------------------------------------------------------------------------- /src/contrib/jm/quake-mrtg.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl5 2 | # 3 | # quake-mrtg.pl 4 | # 5 | # counts the number of players currently on a given 6 | # quake2/quakeworld/unreal/etc server, using the 'qstat' 7 | # program available from: ftp://ftp.activesw.com/pub/quake/ 8 | # 9 | # Usage: 10 | # Target[quakeserv]: `quake-mrtg.pl quake.server.com 27910 Q2` 11 | # 12 | # ^^^ Gets usage from a Q2 server running on quake.server.com, 13 | # port 27910. 14 | # 15 | # - joey miller, inficad communications, llc. 16 | # , 2/5/1999 17 | # 18 | 19 | my($qstat) = "./qstat"; 20 | 21 | $| = 1; 22 | 23 | if ( scalar(@ARGV) < 3 ) { 24 | print STDERR "usage: $0 server.address port game-type\n\n"; 25 | print STDERR "\tgame-types: QS, QW, QWM, H2S, HWS, Q2, UNS, HLS, SNS\n"; 26 | print STDERR "\tQW = quakeworld, Q2 = quake2, etc, etc\n"; 27 | exit -1; 28 | } 29 | 30 | my($serv) = $ARGV[0]; 31 | my($port) = $ARGV[1]; 32 | my($game) = $ARGV[2]; 33 | 34 | if ( ! open(QSTAT, "$qstat -raw : -default $game $serv:$port |") ) { 35 | print STDERR "Couldn't exec $qstat\n"; 36 | exit -2; 37 | } 38 | 39 | my($users); 40 | while() { 41 | ($users) = (split(/:/))[6]; 42 | last; 43 | } 44 | close(QSTAT); 45 | 46 | print "$users\n"; 47 | print "$users\n"; 48 | print "0\n"; 49 | print "$serv:$port\n"; 50 | 51 | 52 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/samples/sample54.pl: -------------------------------------------------------------------------------- 1 | use GIFgraph::lines; 2 | 3 | print STDERR "Processing sample 5-4\n"; 4 | 5 | # The reverse is in here, because I thought the falling line was 6 | # depressing, but I was too lazy to retype the data set 7 | 8 | @data = read_data("sample54.dat") 9 | or die "Cannot read data from sample54.dat"; 10 | 11 | $my_graph = new GIFgraph::lines(); 12 | 13 | $my_graph->set( 14 | x_label => 'Wavelength (nm)', 15 | y_label => 'Absorbance', 16 | title => 'Numerical X axis', 17 | 18 | y_min_value => 0, 19 | y_max_value => 2, 20 | y_tick_number => 8, 21 | y_label_skip => 4, 22 | 23 | x_tick_number => 'auto', 24 | 25 | box_axis => 0, 26 | line_width => 2, 27 | x_label_position => 1/2, 28 | r_margin => 15, 29 | ); 30 | 31 | $my_graph->set_legend('Thanks to Scott Prahl'); 32 | 33 | $my_graph->plot_to_gif( "sample54.gif", \@data ); 34 | 35 | exit; 36 | 37 | sub read_data 38 | { 39 | my $fn = shift; 40 | my @d = (); 41 | 42 | open(ZZZ, $fn) || return (); 43 | 44 | while () 45 | { 46 | chomp; 47 | my @row = split; 48 | 49 | for (my $i = 0; $i <= $#row; $i++) 50 | { 51 | undef $row[$i] if ($row[$i] eq 'undef'); 52 | push @{$d[$i]}, $row[$i]; 53 | } 54 | } 55 | 56 | close (ZZZ); 57 | 58 | return @d; 59 | } 60 | 61 | -------------------------------------------------------------------------------- /src/contrib/rumb-stat/gethttpstats: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | 3 | ####################################################### 4 | # Get Web stats from Apache 1.1.1 and better 5 | ####################################################### 6 | # Author: Anthony Rumble 7 | # 8 | # Revision: $Revision: 1.1.1.1 $ 9 | ####################################################### 10 | 11 | use strict; 12 | use Socket; 13 | 14 | my($request) = "/status/?auto"; # Request to send 15 | my($host) = "enterprise.ce.com.au"; # Host to send it to 16 | my($p) = 80; # Port no 17 | 18 | my ($sin, $port, $iaddr, $paddr, $proto, $line, $uptime, $bytes); 19 | 20 | $proto = getprotobyname('tcp'); 21 | if (!$proto) 22 | { 23 | die("getsockbyname"); 24 | } 25 | socket(S, PF_INET, SOCK_STREAM, $proto) || die "socket: $!"; 26 | 27 | $port = shift || $p; 28 | 29 | $iaddr = gethostbyname($host); 30 | if (!$iaddr) 31 | { 32 | die("gethostbyname"); 33 | } 34 | $sin = sockaddr_in($port, $iaddr); 35 | if (!$sin) 36 | { 37 | die("sockaddr_in"); 38 | } 39 | connect(S, $sin) || die "connect: $!"; 40 | 41 | select(S); 42 | $| = 1; 43 | select(STDOUT); 44 | 45 | print S "GET $request\n"; 46 | while () 47 | { 48 | $bytes=$1 if (m|^Total\ Bytes:\ (\S+)|); 49 | $uptime=$1 if (m|^Uptime:\ (\S+)|); 50 | } 51 | close(S); 52 | 53 | print "0\n$bytes\n$uptime\nenterprise\n"; 54 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/t/linespoints.t: -------------------------------------------------------------------------------- 1 | use lib './t'; 2 | use strict; 3 | use GIFgraph::linespoints; 4 | 5 | $::WRITE = 0; 6 | require 'ff.pl'; 7 | 8 | my @data = ( 9 | ["1st","2nd","3rd","4th","5th","6th","7th", "8th", "9th"], 10 | [ 1, 2, 5, 6, 3, 1.5, 1, 3, 4], 11 | [ 3, 7, 8, 2, 4, 1.5, 2, 5, 1] 12 | ); 13 | 14 | my @opts = ( 15 | {}, 16 | { 17 | 'x_label' => 'X Label', 18 | 'y_label' => 'Y label', 19 | 'title' => 'A line and point chart', 20 | 'y_max_value' => 10, 21 | 'y_tick_number' => 5, 22 | 'y_label_skip' => 2, 23 | 'x_ticks' => 1, 24 | 'axis_space' => 8, 25 | 'transparent' => 1, 26 | 'interlaced' => 1, 27 | 'markers' => [ 7, 5 ], 28 | 'marker_size' => 8, 29 | }, 30 | ); 31 | 32 | print "1..1\n"; 33 | ($::WARN) && warn "\n"; 34 | 35 | foreach my $i (1) 36 | { 37 | my $fn = 't/linespoints' . $i . '.gif'; 38 | 39 | my $checkImage = get_test_data($fn); 40 | my $opts = $opts[$i]; 41 | 42 | my $g = new GIFgraph::linespoints( ); 43 | $g->set( %$opts ); 44 | my $Image = $g->plot( \@data ); 45 | 46 | print (($checkImage eq $Image ? "ok" : "not ok"). " $i\n"); 47 | ($::WARN) && warn (($checkImage eq $Image ? "ok" : "not ok"). " $i\n"); 48 | 49 | write_file($fn, $Image) if ($::WRITE); 50 | } 51 | 52 | -------------------------------------------------------------------------------- /web/inc/IE7/ie7-object.htc: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 9 | 10 | 11 |
      12 | 13 | -------------------------------------------------------------------------------- /src/contrib/whodo/GIFgraph/GIFgraph/t/colour_rgb.txt: -------------------------------------------------------------------------------- 1 | ! $XConsortium: rgb.txt,v 10.41 94/02/20 18:39:36 rws Exp $ 2 | 199 21 133 medium violet red 3 | 176 196 222 light steel blue 4 | 102 139 139 paleturquoise4 5 | 159 121 238 mediumpurple2 6 | 141 182 205 lightskyblue3 7 | 0 238 118 springgreen2 8 | 255 160 122 light salmon 9 | 154 205 50 yellowgreen 10 | 178 58 238 darkorchid2 11 | 69 139 116 aquamarine4 12 | ! This is a comment 13 | 71 60 139 slateblue4 14 | 131 111 255 slateblue1 15 | 192 255 62 olivedrab1 16 | 139 105 20 goldenrod4 17 | 205 155 29 goldenrod3 18 | 142 229 238 cadetblue2 19 | 255 211 155 burlywood1 20 | 112 128 144 slategrey 21 | 255 228 225 mistyrose 22 | 50 205 50 limegreen 23 | 224 255 255 lightcyan 24 | 218 165 32 goldenrod 25 | 220 220 220 gainsboro 26 | 135 206 255 skyblue1 27 | 240 255 240 honeydew 28 | 238 238 0 yellow2 29 | 205 79 57 tomato3 30 | 135 206 235 skyblue 31 | 85 26 139 purple4 32 | 205 133 0 orange3 33 | 205 183 158 bisque3 34 | 238 213 183 bisque2 35 | 87 87 87 grey34 36 | 252 252 252 gray99 37 | 161 161 161 gray63 38 | 112 112 112 gray44 39 | 94 94 94 gray37 40 | 84 84 84 gray33 41 | 66 66 66 gray26 42 | 240 255 255 azure1 43 | 139 137 137 snow4 44 | 205 133 63 peru 45 | 219 112 147 pale violet red 46 | 139 129 76 lightgoldenrod4 47 | -------------------------------------------------------------------------------- /src/contrib/mrtgmk/src/fnctn.c: -------------------------------------------------------------------------------- 1 | /* 2 | Iulian Radu [v2.0@07.1999] 3 | */ 4 | 5 | void fhtmlcoden(char* buf){ 6 | int i; 7 | for(i=1;i%s\n",buf); 10 | } 11 | 12 | void fhtmllinkn(char* buf){ 13 | char link[129]; 14 | int i; 15 | for(i=1;i",base,link); 19 | else fprintf(fh,"
    • ",link); 20 | fprintf(fh,"%s",findnsp(buf,1)); 21 | fprintf(fh,"
    • \n"); 22 | } 23 | 24 | void fdata(char* buf){ 25 | char host[129],*text,*hosti,url[257]; 26 | sscanf(buf,"%s",host); 27 | hosti=findhost(host); 28 | if(!hosti) return; 29 | text=findnsp(buf,1); 30 | if(base[0]) sprintf(url,"http://%s/%s",base,hosti); 31 | else strcpy(url,hosti); 32 | fprintf(fh,"
    • ",url); 33 | fprintf(fh,"%s",text); 34 | fprintf(fh,"
    • \n"); 35 | } 36 | 37 | void flink2dhn(char* buf){ 38 | char host[129],*hosti; 39 | int i; 40 | for(i=1;i",base,hosti); 48 | else fprintf(fh,"
    • ",hosti); 49 | fprintf(fh,"%s",findnsp(buf,1)); 50 | fprintf(fh,"
    • \n"); 51 | } 52 | 53 | -------------------------------------------------------------------------------- /src/contrib/net-hosts/net-hosts: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | ## 3 | ## OUTPUT_FILE has to have the same path with WorkDir value setted in the make-mrtg.cfg.awk file 4 | ## MRTG_NETHOSTS_CFG has to be the same file declared in the make-mrtg.cfg.awk file 5 | ## MRTG_EXECUTABLE is the MRTG executable file with full path 6 | ## NETHOSTST_INTERNET_PATH is the path for internet IPs file (without / in the end) and has to be the same path declared in the make-mrtg.cfg.awk file 7 | ## NETHOSTST_AWK_FILE is the make-mrtg.cfg.awk file with full path 8 | ## 9 | MRTG_EXECUTABLE="/usr/local/mrtg/mrtg" 10 | NETHOSTST_INTERNET_PATH="/usr/local/mrtg/contrib/net-hosts" 11 | NETHOSTST_AWK_FILE="/usr/local/mrtg/contrib/net-hosts/make-mrtg.cfg.awk" 12 | ## 13 | ## 14 | /bin/cat $NETHOSTST_INTERNET_PATH/internet | /usr/bin/gawk -F: '{print $1}' | /usr/sbin/fping | /usr/bin/gawk -f $NETHOSTST_AWK_FILE 15 | ## 16 | ## 17 | ##################################################################################################### 18 | ## Index Maker in MRTG Style 19 | ############################ 20 | # 21 | # OUTPUT_FILE="/usr/local/mrtg/contrib/net-hosts/1/index.html" 22 | # MRTG_NETHOSTS_CFG="/usr/local/mrtg/contrib/net-hosts/mrtg-awk.cfg" 23 | # 24 | # /usr/local/mrtg/indexmaker -b "#ffffff" -1 -t 'Internet Nodes' -o $OUTPUT_FILE $MRTG_NETHOSTS_CFG 25 | # 26 | ###################################################################################################### 27 | --------------------------------------------------------------------------------