########################################################################## # $Id: multiservice,v 1.5 2005/02/24 17:08:05 kirk Exp $ ########################################################################## ######################################################## # This was written and is maintained by: # Kirk Bauer <kirk@kaybee.org> # # Please send all comments, suggestions, bug reports, # etc, to kirk@kaybee.org. ######################################################## # This will pick out only the wanted service from a logfile # in the standard /var/log/messages format. Case insensitive. @ServiceName = split(/,/,$ARGV[0]); if ( $ENV{'LOGWATCH_DEBUG'} > 5 ) { print STDERR "DEBUG: Inside MultiService for $ServiceName[0]\n"; } while (defined($ThisLine = <STDIN>)) { for $ServiceName (@ServiceName) { if ($ThisLine =~ m/^... .. ..:..:.. [^ ]* $ServiceName\[[0123456789]*\]:/i) { print $ThisLine; } elsif ($ThisLine =~ m/^... .. ..:..:.. [^ ]* [^ ]*\[[0123456789]*\]: \[ID [0-9]+ $ServiceName/io) { print $ThisLine; } elsif ($ThisLine =~ m/^... .. ..:..:.. [^ ]* [^ ]*: \[ID [0-9]+ $ServiceName/io) { print $ThisLine; } elsif ($ThisLine =~ m/^... .. ..:..:.. [^ ]* $ServiceName:/i) { print $ThisLine; } } } # vi: shiftwidth=3 syntax=perl tabstop=3 et