logwatch/logwatch-7.3.6-init2.patch
2008-10-21 09:14:17 +00:00

57 lines
2.1 KiB
Diff

diff -up logwatch-7.3.6/scripts/services/init.pom logwatch-7.3.6/scripts/services/init
--- logwatch-7.3.6/scripts/services/init.pom 2008-10-20 13:17:46.000000000 +0200
+++ logwatch-7.3.6/scripts/services/init 2008-10-20 13:41:17.000000000 +0200
@@ -16,7 +16,8 @@ $Detail = $ENV{'LOGWATCH_DETAIL_LEVEL'}
while (defined($ThisLine = <STDIN>)) {
if (( $ThisLine =~ /open\(.*\): No such file or directory/) or
( $ThisLine =~ /Id "r" respawning too fast: disabled for 5 minutes/) or
- ( $ThisLine =~ /Re-reading inittab/)) {
+ ( $ThisLine =~ /Re-reading inittab/) or
+ ( $ThisLine =~ /.* main process ended, respawning/)) {
# We don't care about these
}
elsif ( $ThisLine =~ s/Switching to runlevel: (.)\s*$/$1/ ) {
@@ -34,9 +35,15 @@ while (defined($ThisLine = <STDIN>)) {
chomp ($ThisLine);
$ReExecInit++;
}
+ elsif ( $ThisLine =~ /Re-executing \/sbin\/init/) {
+ $ReExecSbinInit++;
+ }
elsif ( ($Name,$Cause) = ($ThisLine =~ /(.*) main process \([0-9]*\) killed by (.*) /)) {
$ProcessKilled{"$Name,$Cause"}++;
}
+ elsif ( ($Name, $Status) = ($ThisLine =~ /(.*) main process \([0-9]*\) terminated with status ([0-9]*)/)) {
+ $ProcessTerminated{"$Name,Status"}++;
+ }
else {
# report any unmatched entries
push @OtherList,$ThisLine;
@@ -53,6 +60,11 @@ if ($ReExecInit) {
print "\n\nRe-execs of init: $ReExecInit times\n";
}
+if ($ReExecSbinInit) {
+ print "\n\nRe-executing \/sbin\/init/: $ReExecSbinInit times\n";
+}
+
+
if ((keys %ProcessKilled) and ($Detail >=10)) {
print "\nKilled processses:\n";
foreach (keys %ProcessKilled) {
@@ -61,6 +73,14 @@ if ((keys %ProcessKilled) and ($Detail >
}
}
+if ((keys %ProcessTerminated) and ($Detail >=10)) {
+ print "\nTerminated processses:\n";
+ foreach (keys %ProcessTerminated) {
+ my ($Name,$Status)=split ",";
+ print " Process " . $Name. " terminated with status " . $Cause . ": " . $ProcessTerminated{"$Name,$Status"} . " Time(s)\n";
+ }
+}
+
if ($#OtherList >= 0) {
print "\n**Unmatched Entries**\n";
print @OtherList;