1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136
|
########################################################
# Please file all bug reports, patches, and feature
# requests under:
# https://sourceforge.net/p/logwatch/_list/tickets
# and copy:
# Eric Moret <eric.moret@epita.fr>
# Help requests and discusion can be filed under:
# https://sourceforge.net/p/logwatch/discussion/
########################################################
########################################################
# This was written and is maintained by:
# Eric Moret <eric.moret@epita.fr>
########################################################
#######################################################
## Copyright (c) 2008 Eric Moret
## 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.
#########################################################
use strict;
my $Debug = $ENV{'LOGWATCH_DEBUG'} || 0;
#my $Detail = $ENV{'LOGWATCH_DETAIL_LEVEL'} || 0;
my $DebugCounter = 0;
my $RHNRegistration = 0;
my @OtherList = ();
#Init Hashes
my (
%PackageInstalled, %PackageAddedToProfile, %PackageRemovedFromProfile,
);
if ( $Debug >= 5 ) {
print STDERR "\n\nDEBUG: Inside up2date Filter \n\n";
$DebugCounter = 1;
}
while (defined(my $ThisLine = <STDIN>)) {
if ( $Debug >= 5 ) {
print STDERR "DEBUG($DebugCounter): $ThisLine";
$DebugCounter++;
}
if ( ( $ThisLine =~ /^updating login info$/ ) or
( $ThisLine =~ /^updateLoginInfo\(\) login info$/ ) or
( $ThisLine =~ /^Opening rpmdb in \/var\/lib\/rpm\/ with option .$/ ) or
( $ThisLine =~ /^successfully retrieved authentication token from up2date server$/ ) or
( $ThisLine =~ /^(getA|a)vailablePackageList from network$/ ) or
( $ThisLine =~ /^getAdvisoryInfo for / ) or
( $ThisLine =~ /^logging into up2date server$/ ) or
( $ThisLine =~ /^A socket error occurred/ ) or
( $ThisLine =~ /^new up2date run started/ ) or
( $ThisLine =~ /^Creating rollback packages\.\.\./ ) or
( $ThisLine =~ /^Updating transaction list/ ) or
( $ThisLine =~ /^A protocol error occurred/ ) or
( $ThisLine =~ /^Error communicating with server\.\s+The message was:$/ ) or
( $ThisLine =~ /^Updating package profile/) or
( $ThisLine =~ /^Unable to import repomd/) or
( $ThisLine =~ /^deleting \/var\/spool\/up2date\// ) or
( $ThisLine =~ /^solving dep for: \[('.*')*\]/) or
( $ThisLine =~ /^Adding [^ ]* to bootloader config/) or
( $ThisLine =~ /^Modifying bootloader config to include the new kernel info/) or
( $ThisLine =~ /rhn_register $/) or
( $ThisLine =~ /rhn_register Registered login info/) or
( $ThisLine =~ /rhn_register Wrote system id to disk/) or
( $ThisLine =~ /rhn_register Sent package list./) or
( $ThisLine =~ /rhn_register updating login info/) or
( $ThisLine =~ /rhn_register Sent hardware profile./) or
( $ThisLine =~ /rhn_register logging into up2date server/) or
( $ThisLine =~ /rhn_register successfully retrieved authentication token from up2date server/) or
( $ThisLine =~ /rhn_register An exception was raised causing login to fail. This is usually correct. Exception information:/) or
( $ThisLine =~ /^Running elilo with the new configuration/) ) {
# We don't care about these
} elsif ( $ThisLine =~ s/^installing packages: ([^ ]+)/$1/ ) {
$PackageInstalled{$ThisLine}++;
} elsif ( $ThisLine =~ s/^Adding packages to package profile: ([^ ]+)/$1/ ) {
$PackageAddedToProfile{$ThisLine}++;
} elsif ( $ThisLine =~ s/^Removing packages from package profile: ([^ ]+)/$1/ ) {
$PackageRemovedFromProfile{$ThisLine}++;
} elsif ( $ThisLine =~ /rhn_register Registered system./) {
$RHNRegistration++;
} else {
# Report any unmatched entries...
push @OtherList,$ThisLine;
}
}
if (keys %PackageInstalled) {
print "\nPackage Installed:\n";
foreach my $ThisOne (keys %PackageInstalled) {
print " " . $ThisOne;
}
}
if (keys %PackageAddedToProfile) {
print "\nPackage Added To Profile:\n";
foreach my $ThisOne (keys %PackageAddedToProfile) {
print " " . $ThisOne;
}
}
if (keys %PackageRemovedFromProfile) {
print "\nPackage Removed From Profile:\n";
foreach my $ThisOne (keys %PackageRemovedFromProfile) {
print " ". $ThisOne;
}
}
if ($RHNRegistration) {
print "\nSystem registered to rhn " . $RHNRegistration . " time(s)\n";
}
if ($#OtherList >= 0) {
print "\n**Unmatched Entries**\n";
print @OtherList;
}
exit(0);
# vi: shiftwidth=3 tabstop=3 syntax=perl et
# Local Variables:
# mode: perl
# perl-indent-level: 3
# indent-tabs-mode: nil
# End:
|