X-Git-Url: http://xvm.mit.edu/gitweb/invirt/scripts/munin.git/blobdiff_plain/28f91ece65957a09e3abc0479613abb92ddc4e9b..4a9504b23e0e16ed3480ec7a7e62cad24b7888d3:/web/usage.cgi diff --git a/web/usage.cgi b/web/usage.cgi index 2123506..92ea122 100755 --- a/web/usage.cgi +++ b/web/usage.cgi @@ -7,6 +7,8 @@ use RRDs; use File::Spec::Functions; use subs 'die'; +$ENV{"RRDCACHED_ADDRESS"} = "/var/run/munin/rrdcached.sock"; + our %graph_types = (cpu => { @@ -27,12 +29,12 @@ our %graph_types = args => ["--title", "Domain network usage", qw( --base 1000 - --vertical-label), "bits in (-) / out (+) per ${graph_period}", + --vertical-label), "bits in (-) / out (+) per second", ], - cdef => "8,*", draw => "LINE", - sub_types => [{suffix => "_up", cdef => "8,*"}, - {suffix => "_down", cdef => "-8,*"}, + total_unit => "B", + sub_types => [{suffix => "_up", cdef => "8,*", total_name => "Total upload"}, + {suffix => "_down", cdef => "-8,*", total_name => "Total download"}, ] }, ); @@ -82,7 +84,7 @@ if ($type{"sub_types"}) { } foreach my $sub_type (@sub_types) { - my $cdef = $sub_type->{"cdef"} or $type{"cdef"}; + my $cdef = $sub_type->{"cdef"} || $type{"cdef"}; my $suffix = $sub_type->{"suffix"}; my $path = catfile(GRAPH_DIR, "*-$type{plugin_name}-uuid_$uuid$suffix-?.rrd"); @@ -96,10 +98,15 @@ foreach my $sub_type (@sub_types) { $files[$i] =~ m|^([^:]+)$|; my $data = "data$suffix$i"; push @args, "DEF:o$data=$1:42:AVERAGE"; - push @args, "CDEF:$data=o$data,UN,0,o$data,IF".($cdef ? ",$cdef" : ""); + push @args, "CDEF:$data=o$data,UN,0,o$data,IF"; } push @args, "CDEF:total$suffix=0,".join(",+,", map {"data$suffix$_"} 0..$#files).",+"; - push @args, "$type{draw}:total$suffix#0000FF"; + push @args, "CDEF:graph$suffix=total$suffix".($cdef ? ",$cdef" : ""); + push @args, "$type{draw}:graph$suffix#0000FF"; + if (my $total_name = $sub_type->{"total_name"}) { + push @args, "VDEF:t$suffix=total$suffix,TOTAL"; + push @args, "GPRINT:t$suffix:$total_name %6.2lf %S".$type{"total_unit"}; + } } $ENV{"PATH"} = "/usr/local/bin:/usr/bin:/bin";