Last step in migration 2.3, now testing and debugging

This commit is contained in:
Maniacikarus
2008-09-28 12:25:54 +02:00
parent 5f5686d0ed
commit 1c163c0441
5 changed files with 49 additions and 70 deletions

View 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;
}

View 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

View File

@@ -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

View 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
;;

View 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";