########################################################################## # $Id$ ########################################################################## ######################################################## ## Copyright (c) 2008 Kirk Bauer ## Covered under the included MIT/X-Consortium License: ## http://www.opensource.org/licenses/mit-license.php ## All modifications and contributions by other persons to ## this script are assumed to have been donated to the ## Logwatch project and thus assume the above copyright ## and licensing terms. If you want to make contributions ## under your own copyright or a different license this ## must be explicitly stated in the contribution an the ## Logwatch project reserves the right to not accept such ## contributions. If you have made significant ## contributions to this script and want to claim ## copyright please contact logwatch-devel@lists.sourceforge.net. ######################################################### # 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 = )) { 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 # Local Variables: # mode: perl # perl-indent-level: 3 # indent-tabs-mode: nil # End: