57 lines
2.1 KiB
Diff
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;
|