LogWatch Apache / HTTP avec Virtual Host - Wiki de Romain RUDIGER
→
http://romain.novalan.fr/wiki/LogWatch_Apache_/_HTTP_avec_Virtual_Host
Voici mon format de log Apache :
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
Le champ contenant le virtual host sera donc le premier.
Il faut modifier le script du service http, on le prend donc pour ensuite le modifier :
cp /usr/share/logwatch/scripts/services/http /etc/logwatch/scripts/services/
Maintenant il suffit de modifier le code suivant :
577 if ( ($field{http_rc} >= 400) &&
578 !((defined $ignoreURLs) && ($field{url} =~ /$ignoreURLs/)) &&
579 !((defined $ignoreIPs) && ($field{client_ip} =~ /$ignoreIPs/)) ) {
580 my $fmt_url = $field{url};
581 if (length($field{url}) > 60) {
582 $fmt_url = substr($field{url},0,42) . " ... " .
583 substr($field{url},-15,15);
584 }
585 $needs_exam{$field{http_rc}}{$fmt_url}++;
586 }
Pour :
577 if ( ($field{http_rc} >= 400) &&
578 !((defined $ignoreURLs) && ($field{url} =~ /$ignoreURLs/)) &&
579 !((defined $ignoreIPs) && ($field{client_ip} =~ /$ignoreIPs/)) ) {
580 my $fmt_url = $field{url};
581 if (length($field{url}) > 60) {
582 $fmt_url = substr($field{url},0,42) . " ... " .
583 substr($field{url},-15,15);
584 }
585 my $vhost = $field{$log_fields[0]};
586 $vhost =~ s/\s+$//;
587 $fmt_url =~ s/^[[:alnum:]]/\ $&/;
588 $needs_exam{$field{http_rc}}{$vhost . $fmt_url}++;
589 }
Il faut également modifier le fichier de configuration du service http. On le copie :
cp /usr/share/logwatch/default.conf/services/http.conf /etc/logwatch/conf/services/
Modification de la variable LogFormat :
$LogFormat = "%{v} %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""
Wed Apr 9 12:07:17 2014
–
#permalink