remove any leading ::ffff: on ipv4 addresses
[spider.git] / perl / Mrtg.pm
index 25527a8bbb2a94cd4c51a0e2e5d31507f22ef997..d95c41cb19ed65bd46c7ead69d341904959f4638 100644 (file)
@@ -1,9 +1,9 @@
-#
+##
 # the MRTG handler
 #
 # Copyright (c) - 2002 Dirk Koopman G1TLH
 #
-# $Id$
+#
 #
 
 package Mrtg;
@@ -36,6 +36,7 @@ Htmldir: $self->{html}
 Imagedir: $self->{html}
 Logdir: $self->{dir}
 Options[_]: growright
+Timezone[_]: GMT
 ##
 ##
 EOF
@@ -47,13 +48,15 @@ sub run
 {
        my $self = shift;
        $self->{mc}->close;
-       return `mrtg $self->{cfg}`;
+       return `mrtg --lock-file=$self->{dir}/mrtg.lock --confcache-file=$self->{dir}/mrtg.confcache $self->{cfg}`;
 }
 
 sub data
 {
        my ($self, $name, $vali, $valo, $title) = @_;
        my $uptime = main::uptime();
+       $vali ||= 0;
+       $valo ||= 0;
 
        if (my $m = new IO::File ">$self->{dir}/$name" ) {
                $m->print("$vali\n$valo\n$uptime\n$title\n");
@@ -65,8 +68,9 @@ sub data
 
 sub cfgprint
 {
-       my ($self, $name, $options, $max, $title, $legend, $iname, $oname) = @_;
+       my ($self, $name, $options, $max, $title, $legend, $iname, $oname, $yticsfactor) = @_;
        my $opt = join ', ', @$options, qw(withzeroes growright nopercent integer);
+       $yticsfactor ||= 1;
 
        $self->{mc}->print(<<"EOF");
 
@@ -79,7 +83,7 @@ MaxBytes[$name]: $max
 Title[$name]: $title
 Options[$name]: $opt
 YLegend[$name]: $legend
-YTicsFactor[$name]: 1
+YTicsFactor[$name]: $yticsfactor
 ShortLegend[$name]: \&nbsp;
 Legend1[$name]:Maximum No of $iname
 Legend2[$name]:Maximum No of $oname