]> git.ipfire.org Git - people/teissler/ipfire-2.x.git/commitdiff
Last step in migration 2.3, now testing and debugging
authorManiacikarus <maniacikarus@ipfire.org>
Sun, 28 Sep 2008 10:25:54 +0000 (12:25 +0200)
committerManiacikarus <maniacikarus@ipfire.org>
Sun, 28 Sep 2008 10:25:54 +0000 (12:25 +0200)
config/cfgroot/graphs.pl
config/cron/crontab
config/rootfiles/updater/update.sh
src/initscripts/init.d/collectd
src/scripts/qosd

index a233228a71a44c8256768afa5684ff9adab6abdd..15965e3630db5d3c143bebc5d0ed0b4871efe559 100644 (file)
@@ -30,7 +30,6 @@ require "${General::swroot}/lang.pl";
 require "${General::swroot}/header.pl";
 
 my $ERROR;
-$ENV{PATH}="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin";
 
 # Read the global settings files to get the current theme and after this load
 # colors for this theme
@@ -52,16 +51,10 @@ if ( $mainsettings{'RRDLOG'} eq "" ){
 # false collected values may be disable. The user has the ability to enter
 # custom graph names in order to change temp0 to cpu or motherboard
 
-my $key;
-my $value;
-my @args = ();
 my $count = 0;
 my @sensorsgraphs = ();
-my $cpucount = `ls -dA $mainsettings{'RRDLOG'}/collectd/localhost/cpu-*/ | wc -l`;
-my @processesgraph = `ls -dA $mainsettings{'RRDLOG'}/collectd/localhost/processes-*/`;
 my @sensorsdir = `ls -dA $mainsettings{'RRDLOG'}/collectd/localhost/sensors-*/`;
-foreach (@sensorsdir)
-{
+foreach (@sensorsdir){
        chomp($_);chop($_);
        foreach (`ls $_/*`){
                chomp($_);
@@ -74,18 +67,6 @@ foreach (@sensorsdir)
 }
 
 &General::readhash("${General::swroot}/sensors/settings", \%sensorsettings);
-use Encode 'from_to';
-
-my %tr=();
-if ((${Lang::language} eq 'el') ||
-       (${Lang::language} eq 'fa') ||
-       (${Lang::language} eq 'ru') ||
-       (${Lang::language} eq 'th') ||
-       (${Lang::language} eq 'vi') ||
-       (${Lang::language} eq 'zh') ||
-       (${Lang::language} eq 'zt')) {
-       eval `/bin/cat "${General::swroot}/langs/en.pl"`;
-} else {%tr=%Lang::tr;}
 
 # Generate a nice box for selection of time range in graphs
 # this will generate a nice iframe for the cgi every klick for
@@ -119,6 +100,7 @@ sub makegraphbox {
 # collectd we are now able to handle any kind of cpucount
 
 sub updatecpugraph {
+       my $cpucount = `ls -dA $mainsettings{'RRDLOG'}/collectd/localhost/cpu-*/ | wc -l`;
        my $period    = $_[0];
        my @command = (
                "-",
@@ -404,6 +386,7 @@ sub updateswapgraph {
 # Generate the Process Cpu Graph for the current period of time for values given by collecd
 
 sub updateprocessescpugraph {
+       my @processesgraph = getprocesses();
        my $period    = $_[0];
        my $count="0";
 
@@ -453,6 +436,7 @@ sub updateprocessescpugraph {
 # Generate the Process Memory Graph for the current period of time for values given by collecd
 
 sub updateprocessesmemorygraph {
+       my @processesgraph = getprocesses();
        my $period    = $_[0];
        my $count="0";
 
@@ -1008,6 +992,7 @@ sub updateqosgraph {
 # Generate the CPU Frequency Graph for the current period of time for values given by collectd an lm_sensors
 
 sub updatecpufreqgraph {
+       my $cpucount = `ls -dA $mainsettings{'RRDLOG'}/collectd/localhost/cpu-*/ | wc -l`;
        my $period    = $_[0];
        my @command = (
                "-",
@@ -1060,3 +1045,8 @@ sub random_hex_color {
        push @color, @hex[rand(@hex)] for 1 .. $size;
        return join('', '#', @color);
 }
+
+sub getprocesses {
+       my @processesgraph = `ls -dA $mainsettings{'RRDLOG'}/collectd/localhost/processes-*/`;
+       return @processesgraph;
+}
index 0fa7ebcc2b6313705e19d50c677b01e1408db556..004369b1a955cdcbf13801e184bc2de5a05ea824 100644 (file)
@@ -22,6 +22,7 @@ HOME=/
 
 # Make some nice graphs
 */5 * * * *    /usr/local/bin/makegraphs >/dev/null
+01 * * * *     /etc/init.d/collectd backup >/dev/null
 
 # Force update the dynamic dns registration once a week
 # Force update even if IP has not changed once a month if 'minimize update' selected in GUI
index 1b2c1aa20a94c42aeeaac8c740b26919cea8313a..aa3780884a1e71eb071305beaf472a0402b3257f 100755 (executable)
@@ -171,6 +171,7 @@ echo \\n running on \\s \\r \\m >> /etc/issue
 # Update crontab
 #
 grep -v "ipacsum" /var/spool/cron/root.orig > /tmp/root.orig.tmp
+echo "Backup collectd files\n01 * * * *        /etc/init.d/collectd backup >/dev/null" >> /tmp/root.orig.tmp
 mv /tmp/root.orig.tmp /var/spool/cron/root.orig
 chmod 600 /var/spool/cron/root.orig
 chown root:cron /var/spool/cron/root.orig
index ed34389d3e588284cecea2bccc43c2dec038dc95..96cb816d7a81adf489a9824a067be7a63fc77a1f 100644 (file)
@@ -5,25 +5,35 @@
 . /etc/sysconfig/rc
 . $rc_functions
 
+eval $(/usr/local/bin/readhash /var/ipfire/main/settings)
+
 case "$1" in
        start)
                if [ ! -e /etc/sysconfig/lm_sensors ]; then
-                   boot_mesg "Searching for Sensors..."
-                   "yes" | /usr/sbin/sensors-detect > /dev/null
-                   evaluate_retval
-                   if [ ! -e /etc/sysconfig/lm_sensors ]; then
-                       echo "#No Sensors detected " > /etc/sysconfig/lm_sensors
-                   fi
+                       boot_mesg "Searching for Sensors..."
+                       "yes" | /usr/sbin/sensors-detect > /dev/null
+                       evaluate_retval
+
+                       if [ ! -e /etc/sysconfig/lm_sensors ]; then
+                               echo "#No Sensors detected " > /etc/sysconfig/lm_sensors
+                               sed -i -e "s|LoadPlugin sensors|#LoadPlugin sensors|g" /etc/collectd.conf
+                       fi
                fi
 
+               if [ ! -e $RRDLOG.bak/ ]; then
+                       mkdir $RRDLOG.bak/
+               fi
+
+               /etc/init.d/collectd restore
+
                boot_mesg -n "Loading Sensor Modules..."
                for modul in `cat /etc/sysconfig/lm_sensors | grep '^MODULE_' | cut -d"=" -s -f2`; do
-                   modprobe $modul > /dev/null 2>&1;
-                   if [ ${?} = 0 ]; then
-                       boot_mesg -n "$SUCCESS$modul$NORMAL ";
-                   else
-                       boot_mesg -n "$FAILURE$modul$NORMAL ";
-                   fi
+               modprobe $modul > /dev/null 2>&1;
+                       if [ ${?} = 0 ]; then
+                               boot_mesg -n "$SUCCESS$modul$NORMAL ";
+                       else
+                               boot_mesg -n "$FAILURE$modul$NORMAL ";
+                       fi
                done
                boot_mesg;
                echo_ok;
@@ -31,50 +41,27 @@ case "$1" in
                boot_mesg "Starting Collection daemon..."
                /usr/sbin/collectd -C /etc/collectd.conf
                evaluate_retval
-#
-# These lines are for furhter implementation of the collectd, atm the temps are
-# collected by the makegraphs script because of the standby functions
-#
-#              for disk in `kudzu -qps -c HD | grep device: | cut -d" " -f2 | sort | uniq`; do boot_mesg "Bringing up hddtemp daemon for $disk ..."; /usr/sbin/hddtemp $disk -d -l localhost; evaluate_retval; done
-#
-# Starting the mbmon in deamon mode to enable sensors reading for collectd
-# later mbmon will be replaced by lmsensors, if mbmon is not running on your
-# system, we advise to comment out these lines in order to prevent fail
-#
-#              boot_mesg "Bringing up mbmon daemon..."
-#              /usr/bin/mbmon -P 411 -r
-#              evaluate_retval
                ;;
-
        stop)
-# if mbmon is not running on your system, we advise to comment out these lines
-# in order to prevent fail
-#              boot_mesg "Stopping mbmon daemon..."
-#              killproc /usr/bin/mbmon
-#              evaluate_retval
-#              boot_mesg "Stopping hddtemp daemon..."
-#              killproc /usr/sbin/hddtemp
-#              evaluate_retval
+               /etc/init.d/collectd backup
                boot_mesg "Stopping Collection daemon..."
                killproc /usr/sbin/collectd
                evaluate_retval
                ;;
-
        restart)
-
-#
-# We need to do this that way because mbmon doesn`t clear the port when killed
-# so the next startup it fails with port allready in use -> donĀ“t restart mbmon
-#
-               boot_mesg "Stopping Collection daemon..."
-               killproc /usr/sbin/collectd
-               evaluate_retval
+               ${0} stop
                sleep 1
-               boot_mesg "Starting Collection daemon..."
-               /usr/sbin/collectd -C /etc/collectd.conf
+               ${0} start
+               ;;
+       backup)
+               boot_mesg "Save rrd files from ramd..."
+               cp -pR $RRDLOG/* $RRDLOG.bak/
                evaluate_retval
-                               ;;
-
+               ;;
+       restore)
+               boot_mesg "Copying rrd files to ramd..."
+               cp -pR $RRDLOG.bak/* $RRDLOG/
+               ;;
        status)
                statusproc /usr/sbin/collectd
                ;;
index dee8ee2014ff08567b294d8558d9c91e839c03fb..21498824f44f4ead465fddd9208c4413e722c5e0 100644 (file)
@@ -48,9 +48,11 @@ use strict;
 #
 my  $device        = "$ARGV[0]";
 
-my %mainsettings = ();
+our %mainsettings = ();
+require '/var/ipfire/general-functions.pl';
 &General::readhash("${General::swroot}/main/settings", \%mainsettings);
 
+our $rrd_datadir   = $mainsettings{'RRDLOG'}."/";
 our $event_datadir = $mainsettings{'RRDLOG'};
 our $STEP          = 10;
 our $tc_command    = "/sbin/tc";
@@ -108,8 +110,6 @@ until ($time_to_die) {
     #  print " Error updating RRDs: \"$res\"\n";
     #}
 
-    process_events();
-
 #    my $timestamp = time;
 #    print "$timestamp\n";