Thread apache.log auswerten mit Perl
(5 answers)
Opened by Bschorf at 2007-04-18 14:53
Für so etwas eignet sich ein Hash:
Code (perl): (dl
)
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 #!/usr/bin/perl # use strict sollte Pflicht sein, verhindert viele Fehler use strict; use warnings; # apache logdatei analysieren my $file = "access.log"; # Fehler sollten abgefangen werden # lexikalische Filehandles haben Vorteile # 3-Arg-open ist sicherer open my $fh,'<', $file or die $!; my %hash; while ( my $line = <$fh> ) { my ($site) = $line =~ /(?:GET|POST)\s([^\s]+)/; $hash{$site}++; } print "\nAnzahl der Seiten: ", scalar(keys %hash), " \n", "-"x25,"\n"; for my $url( keys %hash ){ print $url," : ",$hash{$url},"\n"; } (ungetestet) OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/) -- Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html Perl-Entwicklung: http://perl-services.de/ |