exit 0;
}
-my $maxenv = 1;
+my $maxlen_msg = $maxlen * 4;
+my $maxenv = 1;
my ( $attr, $env, $input, $text, $body, $content, $r, $file, $lockfile, $i, $mail, $part );
my (@Rcpts);
$input = <>;
}
+exit 0 unless $input;
+
$body = undef;
# Mail zerpflücken und den plain-text-Teil heraussuchen
# Dann der Mail-Text
$text .= $body;
-# Text trimmen und auf Länge stutzen
-$text =~ s/\s+$//;
-$text = substr( $text, 0, $maxlen );
+=pod
+
+Na2702.msgs down (red) 01:34: Messages mit Fehlern|>&red Fehler: [2006 Nov 12 01:33:50 CET
+Status Na2702.msgs -> down (red) um Sun Nov 12 01:34:07 2006.
+Messages mit Fehlern
+&red Fehler: [2006 Nov 12 01:33:50 CET +0100] na2702 [daemon.err] [na2702: asup.smtp.unreach:error]: Autosupport mail was not sent because the system cannot reach any of the mail hosts from the autosupport.mailhost option. (WEEKLY_LOG)
+
+=cut
+
+if ( $text =~ /^(\w+.msgs\s+down\s+\(\w+\)\s+\d+:\d+(?::\d+)?:\s+[\s\w]+)\|.*[\n\r]+\&\w+\s+Fehler:\s+(.*)/is ) {
+
+ $text = $1 . "\n" . $2;
+
+ # Text trimmen und auf Länge stutzen
+ $text = substr( $text, 0, $maxlen_msg );
+ $text =~ s/\s+$//;
+
+}
+else {
+
+ # Text trimmen und auf Länge stutzen
+ $text = substr( $text, 0, $maxlen );
+ $text =~ s/\s+$//;
+
+}
# Bestätigungs-Mail rausjagen, falls nicht untersagt ..
unless ($nomail) {
print MAIL "Gesendeter Text:\n" . $text . "\n";
- if ( $verbose ) {
+ if ($verbose) {
print MAIL "---------------------\n";
print MAIL "Environment:\n" . $env . "\n\n";
print MAIL "Kommando-Parameter:\n" . $attr . "\n\n";