# HG changeset patch # User Michael Schloh von Bennewitz # Date 1238876908 -7200 # Node ID cd68ee26852b5e21968ddac90e05ab7a370f0a1e # Parent 17a161a7989cd0d12bdc44abcf5403f693a31f96 Improve style in config file and add uptime and webstat scripts. diff -r 17a161a7989c -r cd68ee26852b mrtg/mrtg.cfg --- a/mrtg/mrtg.cfg Fri Apr 03 10:48:27 2009 +0200 +++ b/mrtg/mrtg.cfg Sat Apr 04 22:28:28 2009 +0200 @@ -3,7 +3,7 @@ ## WorkDir: @l_prefix@/web/mrtg -Imagedir: @l_prefix@/share/mrtg/icons +Imagedir: @l_prefix@/share/mrtg/icons Logdir: @l_prefix@/var/mrtg Refresh: 300 @@ -35,32 +35,32 @@ #Target[proc]: 1.3.6.1.4.1.4007.42.1.2.4.2&1.3.6.1.4.1.4007.42.1.2.4.2:public@localhost #Title[proc]: Number of processes -#PageTop[proc]:

Number of processes

+#PageTop[proc]:

Number of Processes

#MaxBytes[proc]: 400 #Unscaled[proc]: dymw #Options[proc]: gauge,nopercent,growright,nobanner,nolegend,noinfo #YLegend[proc]: Processes #LegendI[proc]:  Nr. of Processes -#LegendO[proc]: +#LegendO[proc]: #ShortLegend[proc]:   #Target[mem]: 1.3.6.1.4.1.4007.42.1.2.2.1.3&1.3.6.1.4.1.4007.42.1.2.2.2.3:public@localhost #MaxBytes[mem]: 1000 #kMG[mem]: k #Title[mem]: Memory Usage -#PageTop[mem]:

Memory usage

+#PageTop[mem]:

Memory Usage

#Options[mem]: growright,nopercent,gauge,nobanner,nolegend,noinfo #LegendI[mem]:  Real Mem Free #LegendO[mem]:  Swap Free #YLegend[mem]: kbyte #ShortLegend[mem]:  byte -#Target[root]: 1.3.6.1.4.1.4007.42.1.2.7.1.1.6.1&1.3.6.1.4.1.4007.42.1.2.7.1.1.4.1:public@localhost +#Target[root]: 1.3.6.1.4.1.4007.42.1.2.7.1.1.6.1&1.3.6.1.4.1.4007.42.1.2.7.1.1.4.1:public@localhost #Options[root]: nopercent,growright,nobanner,nolegend,noinfo,integer,gauge #Title[root]: Disk usage for / #MaxBytes[root]: 250 #kMG[root]: M -#PageTop[root]:

Disk usage /

+#PageTop[root]:

Disk Usage /

#LegendI[root]: free #LegendO[root]: total #YLegend[root]: MByte @@ -70,19 +70,19 @@ #Options[var]: nopercent,growright,nobanner,nolegend,noinfo,integer,gauge #MaxBytes[var]: 2000 #kMG[var]: M -#Title[var]:

Disk usage for /var

-#PageTop[var]: Disk usage /var +#Title[var]: Disk usage for /var +#PageTop[var]:

Disk Usage /var

#LegendI[var]: free #LegendO[var]: total #YLegend[var]: MByte #ShortLegend[var]:  Byte -#Target[usr]: 1.3.6.1.4.1.4007.42.1.2.7.1.1.6.4&1.3.6.1.4.1.4007.42.1.2.7.1.1.4.4:public@localhost +#Target[usr]: 1.3.6.1.4.1.4007.42.1.2.7.1.1.6.4&1.3.6.1.4.1.4007.42.1.2.7.1.1.4.4:public@localhost #Options[usr]: nopercent,growright,nobanner,nolegend,noinfo,integer,gauge #MaxBytes[usr]: 2000 #kMG[usr]: M -#Title[usr]:

Disk usage for /usr

-#PageTop[usr]: Disk usage /usr +#Title[usr]: Disk usage for /usr +#PageTop[usr]:

Disk Usage /usr

#LegendI[usr]: free #LegendO[usr]: total #YLegend[usr]: MByte @@ -93,18 +93,18 @@ #MaxBytes[d1]: 30000 #kMG[d1]: M #Title[d1]: Disk usage for /d1 -#PageTop[d1]:

Disk usage cw, www

+#PageTop[d1]:

Disk Usage cw, www

#LegendI[d1]: free #LegendO[d1]: total #YLegend[d1]: MByte #ShortLegend[d1]:  Byte -#Target[d2]: 1.3.6.1.4.1.4007.42.1.2.7.1.1.6.6&1.3.6.1.4.1.4007.42.1.2.7.1.1.4.6:public@localhost +#Target[d2]: 1.3.6.1.4.1.4007.42.1.2.7.1.1.6.6&1.3.6.1.4.1.4007.42.1.2.7.1.1.4.6:public@localhost #Options[d2]: nopercent,growright,nobanner,nolegend,noinfo,gauge #MaxBytes[d2]: 40000 #kMG[d2]: M #Title[d2]: Disk usage for /d2 -#PageTop[d2]:

Disk usage mail, dmail, mail home

+#PageTop[d2]:

Disk Usage mail, dmail, mail home

#LegendI[d2]: free #LegendO[d2]: total #YLegend[d2]: MByte @@ -115,9 +115,52 @@ #MaxBytes[boot]: 40 #kMG[boot]: M #Title[boot]: Disk usage for /boot -#PageTop[boot]:

Disk usage Kernel

+#PageTop[boot]:

Disk Usage Kernel

#LegendI[boot]: free #LegendO[boot]: total #YLegend[boot]: MByte #ShortLegend[boot]:  Byte +## Server Uptime +#Target[uptime]: `@l_prefix@/share/mrtg/scripts/uptime.pl` +#Options[uptime]: growright,unknaszero,nopercent,gauge +#MaxBytes[uptime]: 1000 +#Unscaled[uptime]: dymw +#Title[uptime]: System uptime +#PNGTitle[uptime]: System uptime +#PageTop[uptime]:

System Uptime

+#LegendI[uptime]: Uptime +#LegendO[uptime]: +#Legend1[uptime]: Maximum uptime days +#YLegend[uptime]: Time (days) +#ShortLegend[uptime]: n + +## HTTP Server Bytes +#Target[httpbytes]: `@l_prefix@/share/mrtg/scripts/webstats.pl bytes` +#Options[httpbytes]: growright,nopercent,noinfo,nobanner,integer,noi +#MaxBytes[httpbytes]: 256000 +#Unscaled[httpbytes]: ymwd +#Title[httpbytes]: HTTP server traffic +#PNGTitle[httpbytes]: Kbytes per second +#PageTop[httpbytes]:

HTTP server traffic

+#LegendI[httpbytes]: +#LegendO[httpbytes]: +#YLegend[httpbytes]: Kbytes/second +#ShortLegend[httpbytes]: KB/s + +## HTTP Server Hits +#Target[httphits]: `@l_prefix@/share/mrtg/scripts/webstats.pl hits` +#Options[httphits]: growright,nopercent,perhour,nobanner,noinfo,integer,noi +#MaxBytes[httphits]: 12000 +#Unscaled[httphits]: ymwd +#WithPeak[httphits]: wmy +#Title[httphits]: HTTP server hits +#PNGTitle[httphits]: Hits per hour +#PageTop[httphits]:

HTTP server hits

+#LegendI[httphits]: +#LegendO[httphits]: +#Legend2[httphits]: Hits per hour +#Legend4[httphits]: 5 Minute peak +#YLegend[httphits]: Hits/hour +#ShortLegend[httphits]: Hits/hour + diff -r 17a161a7989c -r cd68ee26852b mrtg/mrtg.spec --- a/mrtg/mrtg.spec Fri Apr 03 10:48:27 2009 +0200 +++ b/mrtg/mrtg.spec Sat Apr 04 22:28:28 2009 +0200 @@ -32,12 +32,14 @@ Group: Monitoring License: GPL Version: 2.16.2 -Release: 20090402 +Release: 20090404 # list of sources Source0: http://oss.oetiker.ch/mrtg/pub/mrtg-%{version}.tar.gz Source1: mrtg.cfg Source2: rc.mrtg +Source3: uptime.pl +Source4: webstat.pl # build information Prefix: %{l_prefix} @@ -96,6 +98,12 @@ $RPM_BUILD_ROOT%{l_prefix}/share/mrtg mv -f $RPM_BUILD_ROOT%{l_prefix}/share/doc/mrtg2 \ $RPM_BUILD_ROOT%{l_prefix}/share/mrtg/doc + %{l_shtool} mkdir -f -p -m 755 \ + $RPM_BUILD_ROOT%{l_prefix}/share/mrtg/scripts + %{l_shtool} install -c -m 755 %{l_value -s -a} \ + %{SOURCE uptime.pl} \ + %{SOURCE webstat.pl} \ + $RPM_BUILD_ROOT%{l_prefix}/share/mrtg/scripts/ rmdir $RPM_BUILD_ROOT%{l_prefix}/share/doc strip $RPM_BUILD_ROOT%{l_prefix}/bin/rateup >/dev/null 2>&1 || true %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \ diff -r 17a161a7989c -r cd68ee26852b mrtg/uptime.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mrtg/uptime.pl Sat Apr 04 22:28:28 2009 +0200 @@ -0,0 +1,14 @@ +#!@l_prefix@/bin/perl +## +## uptime.pl: provide formatted uptime(1) information +## + +$ZERO = 0; +$uptime = `uptime`; + +$uptime =~ /up (.*?) day/; +$up = int($1); +$hostname = `hostname`; + +print "$ZERO\n$up\n" + diff -r 17a161a7989c -r cd68ee26852b mrtg/webstat.pl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mrtg/webstat.pl Sat Apr 04 22:28:28 2009 +0200 @@ -0,0 +1,58 @@ +#!@l_prefix@/bin/perl +## +## webstats.pl: return HTTP server hits and bytes +## +## Configure Apache HTTP server like so: +## +## SetHandler server-status +## Order allow,deny +## Allow from localhost +## +## ExtendedStatus On +## + +@res = `@l_prefix@/bin/lynx -dump http://localhost/server-status`; + +foreach $res (@res) { + if ($res =~ /Server uptime: (.*)$/) { + $up = $1;last + } + else + next + + if ($res =~ /Server at/) { + $server = $res; + last + } + else + next +} + +@res = `@l_prefix@/bin/lynx -dump http://localhost/server-status?auto`; + +foreach $res (@res) { + if ($res =~ /Total Accesses: (\d+)/) { + $d1 = $1; + next + } + + if ($res =~ /Total kBytes: (\d+)/) { + $d2 = $1 * 1024; + next + } +} + +$d1 = int($d1); +$d2 = int($d2); + +if ($ARGV[0] eq "hits") { + print "$d1\n"; + print "$d1\n"; +} elsif ($ARGV[0] eq "bytes") { + print "$d2\n"; + print "$d2\n"; +} + +print "$up\n"; +print "$server"; +