]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blobdiff - src/scripts/makegraphs
Hinzugefuegt:
[people/pmueller/ipfire-2.x.git] / src / scripts / makegraphs
index bcac55346d366eec28aefbbea59cb17753adb826..03a53fedeb5ad517abb128e7648bd8cccad527d5 100644 (file)
@@ -34,8 +34,6 @@ my (%settings, @ipacsum, $iface, $ERROR);
 my %mbmon_settings = ();
 &General::readhash("${General::swroot}/mbmon/settings", \%mbmon_settings);
 
-
-
 # Added for conversion of utf-8 characters
 use Encode 'from_to';
 my %tr=();
@@ -68,9 +66,8 @@ my @args = ();
 my $count = 0;
 my $ERROR;
 my $dbg = 0;
-my $path_rrd = "/var/log/rrd";
-my $path_graphs = "/home/httpd/html/graphs";
 my $path_smartctl = "/usr/sbin/smartctl";
+my $path_hddtemp = "/usr/sbin/hddtemp";
 
 my %colors = ();
 $colors{"1"} = "#0000FF";
@@ -187,6 +184,47 @@ sub updatecpudata {
 
 }
 
+sub updateloadgraph {
+       my $period    = $_[0];
+
+       RRDs::graph ("$graphs/load-$period.png",
+               "--start", "-1$period", "-aPNG",
+               "-w 600", "-h 100", "-i", "-z", "-l 0", "-r", "--alt-y-grid",
+               "-t Load Average",
+               "--color", "SHADEA#EAE9EE",
+               "--color", "SHADEB#EAE9EE",
+               "--color", "BACK#FFFFFF",
+               "DEF:load1=$rrdlog/load.rrd:load1:AVERAGE",
+               "DEF:load5=$rrdlog/load.rrd:load5:AVERAGE",
+               "DEF:load15=$rrdlog/load.rrd:load15:AVERAGE",
+               "AREA:load1#ff0000:1 Minute, letzter\:",
+               "GPRINT:load1:LAST:%5.2lf\n",
+               "AREA:load5#ff9900:5 Minuten, letzter\:",
+               "GPRINT:load5:LAST:%5.2lf\n",
+               "AREA:load15#ffff00:15 Minuten, letzter\:",
+               "GPRINT:load15:LAST:%5.2lf",
+               "LINE1:load5#ff9900:",
+               "LINE1:load1#ff0000:");
+       $ERROR = RRDs::error;
+       print "Error in RRD::graph for load: $ERROR\n" if $ERROR;
+}
+
+sub updateloaddata {
+       if ( ! -e "$rrdlog/load.rrd") {
+               RRDs::create ("$rrdlog/load.rrd", "--step=60",
+                       "DS:load1:GAUGE:120:0:U",
+                       "DS:load5:GAUGE:120:0:U",
+                       "DS:load15:GAUGE:120:0:U",
+                       "RRA:AVERAGE:0.5:1:2160",
+                       "RRA:AVERAGE:0.5:5:2016",
+                       "RRA:AVERAGE:0.5:15:2880",
+                       "RRA:AVERAGE:0.5:60:8760");
+
+               $ERROR = RRDs::error;
+               print "Error in RRD::create for cpu: $ERROR\n" if $ERROR;
+       }
+}
+
 sub updatememgraph {
        my $period    = $_[0];
 
@@ -715,10 +753,10 @@ sub updatelqgraph {
 
 sub updatehdddata 
 {
-  if ( ! -e "$path_rrd/hddtemp.rrd") 
+  if ( ! -e "$rrdlog/hddtemp.rrd") 
   {
     # database did not exist -> create
-    RRDs::create ("$path_rrd/hddtemp.rrd", "--step=300",
+    RRDs::create ("$rrdlog/hddtemp.rrd", "--step=300",
       "DS:temperature:GAUGE:600:0:100",
       "RRA:AVERAGE:0.5:1:576",
       "RRA:AVERAGE:0.5:6:672",
@@ -781,7 +819,7 @@ sub updatehdddata
 #  print "hdd  $hdd_output \n";
 #  print "temp $temp \n";
 
-  RRDs::update ("$path_rrd/hddtemp.rrd", "-t", "temperature", "N:$temp");
+  RRDs::update ("$rrdlog/hddtemp.rrd", "-t", "temperature", "N:$temp");
 
   $ERROR = RRDs::error;
   print "Error in RRD::update for hdd: $ERROR\n" if $ERROR;
@@ -809,11 +847,11 @@ sub updatehddgraph {
 
 sub updatembmondata 
 {
-  if ( ! -e "$path_rrd/mbmon.rrd" )
+  if ( ! -e "$rrdlog/mbmon.rrd" )
   {
     # database did not exist -> create
 
-    @args = ("$path_rrd/mbmon.rrd");
+    @args = ("$rrdlog/mbmon.rrd");
 
     push(@args, "--step=300");
     foreach $key ( sort(keys %mbmon_values) ) 
@@ -848,7 +886,7 @@ sub updatembmondata
   print("update template = '$template'\n") if ( $dbg );
   print("update value    = '$value'\n") if ( $dbg );
 
-  RRDs::update("$path_rrd/mbmon.rrd", "-t", $template, $value);
+  RRDs::update("$rrdlog/mbmon.rrd", "-t", $template, $value);
   $ERROR = RRDs::error;
   print("Error in RRD::update for mbmon: $ERROR\n") if $ERROR;
 }
@@ -858,11 +896,11 @@ sub updatetempgraph
   my $type   = "temp";
   my $period = $_[0];
 
-  @args = ("$path_graphs/mbmon-$type-$period.png", "--start", "-1$period", "-aPNG", "-i", "-z",
+  @args = ("$graphs/mbmon-$type-$period.png", "--start", "-1$period", "-aPNG", "-i", "-z",
     "--alt-y-grid", "-w 600", "-h 100", "--alt-autoscale",
     "--color", "SHADEA#EAE9EE",
     "--color", "SHADEB#EAE9EE",
-    "--color", "BACK#EAE9EE",
+    "--color", "BACK#FFFFFF",
     "-t $tr{'mbmon temp'} ($tr{'graph per'} $tr{$period})" );
 
   $count = 1;
@@ -875,7 +913,7 @@ sub updatetempgraph
         $mbmon_settings{'LABEL-'.$key} = $key;
       }
 
-      push(@args, "DEF:$key=$path_rrd/mbmon.rrd:$key:AVERAGE");
+      push(@args, "DEF:$key=$rrdlog/mbmon.rrd:$key:AVERAGE");
       push(@args, "LINE2:$key$colors{$count}:$mbmon_settings{'LABEL-'.$key} $tr{'mbmon temp in'} °C");
       push(@args, "GPRINT:$key:MAX:$tr{'maximal'}\\:%5.1lf °C");
       push(@args, "GPRINT:$key:AVERAGE:$tr{'average'}\\:%5.1lf °C");
@@ -898,11 +936,11 @@ sub updatefangraph
   my $type   = "fan";
   my $period = $_[0];
 
-  @args = ("$path_graphs/mbmon-$type-$period.png", "--start", "-1$period", "-aPNG", "-i", "-z",
+  @args = ("$graphs/mbmon-$type-$period.png", "--start", "-1$period", "-aPNG", "-i", "-z",
     "--alt-y-grid", "-w 600", "-h 100", "--alt-autoscale",
     "--color", "SHADEA#EAE9EE",
     "--color", "SHADEB#EAE9EE",
-    "--color", "BACK#EAE9EE",
+    "--color", "BACK#FFFFFF",
     "-t $tr{'mbmon temp'} ($tr{'graph per'} $tr{$period})" );
 
   $count = 1;
@@ -915,7 +953,7 @@ sub updatefangraph
         $mbmon_settings{'LABEL-'.$key} = $key;
       }
 
-      push(@args, "DEF:$key=$path_rrd/mbmon.rrd:$key:AVERAGE");
+      push(@args, "DEF:$key=$rrdlog/mbmon.rrd:$key:AVERAGE");
       push(@args, "LINE2:$key$colors{$count}:$mbmon_settings{'LABEL-'.$key} $tr{'mbmon fan in'} rpm");
       push(@args, "GPRINT:$key:MAX:$tr{'maximal'}\\:%5.0lf rpm");
       push(@args, "GPRINT:$key:AVERAGE:$tr{'average'}\\:%5.0lf rpm");
@@ -938,11 +976,11 @@ sub updatevoltgraph
   my $type   = "volt";
   my $period = $_[0];
 
-  @args = ("$path_graphs/mbmon-$type-$period.png", "--start", "-1$period", "-aPNG", "-i", "-z",
+  @args = ("$graphs/mbmon-$type-$period.png", "--start", "-1$period", "-aPNG", "-i", "-z",
     "--alt-y-grid", "-w 600", "-h 100", "--alt-autoscale",
     "--color", "SHADEA#EAE9EE",
     "--color", "SHADEB#EAE9EE",
-    "--color", "BACK#EAE9EE",
+    "--color", "BACK#FFFFFF",
     "-t $tr{'mbmon temp'} ($tr{'graph per'} $tr{$period})" );
 
   $count = 1;
@@ -956,7 +994,7 @@ sub updatevoltgraph
         $mbmon_settings{'LABEL-'.$key} = $key;
       }
 
-      push(@args, "DEF:$key=$path_rrd/mbmon.rrd:$key:AVERAGE");
+      push(@args, "DEF:$key=$rrdlog/mbmon.rrd:$key:AVERAGE");
       push(@args, "LINE2:$key$colors{$count}:$mbmon_settings{'LABEL-'.$key} V");
       push(@args, "GPRINT:$key:MAX:$tr{'maximal'}\\:%5.2lf V");
       push(@args, "GPRINT:$key:AVERAGE:$tr{'average'}\\:%5.2lf V");
@@ -1016,6 +1054,12 @@ updatecpugraph ("week");
 updatecpugraph ("month");
 updatecpugraph ("year");
 
+updateloaddata();
+updateloadgraph ("day");
+updateloadgraph ("week");
+updateloadgraph ("month");
+updateloadgraph ("year");
+
 updatememdata();
 updatememgraph ("day");
 updatememgraph ("week");