Funktionen

Print[PRINT]
.  Home  .  Lehre  .  Vorlesungen  .  Wintersemester 2005/06  .  Übung zur Vorlesung Rechnernetze  .  Perl-Aufgaben  .  Uebung01

Perl-Aufgaben

�bungsblatt 1

Aufgabe 1.5 - Analyse von Logfiles

Sp�tester Abgabetermin: Mittwoch, 26.10.2005, 12.00 Uhr mittags

Entpacken Sie das Archiv access_log.zip (ca. 320 kB) und analysieren Sie die enthaltenen fiktiven Access-Logfiles eines HTTP-Servers:

  • access_kurz.log Datei 1 mit 88 Zeilen, 10.661 Byte
  • access_lang.log Datei 2 mit 20.572 Zeilen, 2.701.034 Byte

Zeilenformat:

  • DNS-Name des zugreifenden Rechners
  • -
  • -
  • Datum und Uhrzeit
  • Request-String zwischen G�nsef��chen
  • HTTP-Return-Code
  • Gr��e der Datei in Byte oder ein '-', wenn dem Request keine Dateigr��e zugeordnet werden kann.

indem Sie mit einem Perl-Programm eine tabellarische �bersicht erzeugen, welche Dateigr��en wie h�ufig angefordert wurden. Verwenden Sie f�r die Einordnung die Klassen 0-9999 Byte, 10000-19999 Byte, etc. so wie unten im Beispiel. Z�hlen Sie in jeder Klasse die absolute H�ufigkeit der Zugriffe.

Hinweis: Beachten Sie, dass die gesuchte Information immer am Ende der Zeile steht! Nutzen Sie f�r das Extrahieren der gew�nschten Information einen regul�ren Ausdruck, der '$' enth�lt und damit nur am Ende der Zeile matcht.

Zeilen, die als Dateigr��e einen '-' haben, z�hlen Sie bitte extra (sie gehen also nicht in die Tabelle ein) und geben diese Zahl unten in einer gesonderten Zeile an. Geben Sie au�erdem die Gesamtzeilenzahl an.

Hinweis: Die Summe der absoluten H�ufigkeiten in der Tabelle und der Zeilen mit '-' muss die Gesamtzeilenzahl ergeben.

Beispiel (so sollte ihr Ergebnis f�r access_kurz.log aussehen):

Auswertung mit linearer Skala

0 - 9999        50 
10000 - 19999   19 
20000 - 29999   1 
30000 - 39999   0 
40000 - 49999   0 
50000 - 59999   1 
60000 - 69999   0 
70000 - 79999   1 
80000 - 89999   0 
90000 - 99999   0 
      > 99999   1

Zeilen mit '-': 15
Gesamtzeilenzahl: 88

Einsenden ihrer L�sung

Erstellen Sie zwei Dateien:

loesung01-gruppe#-name-vorname.pl, z.B. loesung01-gruppe2-mustermann-hans.pl
Ihr Perl-Programm, dass die Aufgabe l�st.
ergebnis01-gruppe#-name-vorname.txt
Das Ergebnis des Laufs Ihres Programms mit der Eingabe access_lang.log
Packen Sie beide Dateien in eine Zip-Datei loesung01-gruppe#-name-vorname.zip und h�ngen Sie diese Datei an eine Mail an, die Sie Ihren Tutor schicken. Aus jedem Dateinamen geht also ihr Name, ihr Vorname und die Nummer ihrer �bungsgruppe (siehe Tabelle) hervor.

Beispiel-L�sung

beispielloesung-ueb1-5.pl