Para que los logs de Tomcat aparezcan en el logwatch, debemos crear un fichero en /etc/logwatch/conf con este contenido:
1 #vim /etc/logwatch/conf/logwatch.conf
Contenido que debe tener el fichero:
1 MailTo=logwatch
Además hay que crear otro archivo /etc/logwatch/scripts/services/tomcat con este contenido:
12345678910111213141516171819 #!/usr/bin/perlmy $counter = 0;my %unique_err = ();while (defined($line = <STDIN>)) {if ($line =~ /ERROR/) {# Regular expression to remove date/time field$line =~ s/^\[([0-9]+\-)*[0-9]+\s+([0-9]+:)*[0-9]+,[0-9]+\]\s+ERROR:\s+//;if (!exists $unique_err{$line}) {$unique_err{$line} = 0;}$unique_err{ $line } = $unique_err{$line}+1;$counter++;}}while ( my ($key, $value) = each(%unique_err) ) {chomp $key;print "Unique Error: $key\nCount: $value\n";}print "Total # of Errors: $counter\n"
Quedando así:
Una vez realizado estos pasos creamos este fichero /etc/logwatch/conf/logfiles/tomcat.conf con este contenido:
12 # Fichero de log de TomcatLogFile = /opt/mxhero/web/apache-tomcat-6.0.24/logs/catalina.out
Si ejecutamos el comando logwatch ya debería aparecer algo así:
123 --------------------- Tomcat LogWatch Begin ------------------------Total # of Errors: 0---------------------- Tomcat LogWatch End -------------------------