Web Server Access Log Auswertung

Übersicht

Das Tool unterstützt die Analyse von LogWeb/Ajax Transaktionen, die von einem Servlet Container (wie zum Beispiel Tomcat) oder von einem Web Server oder Proxy Server (wie zum Beispiel Apache) in einem Zugriffs-Protokoll ("Web Access Log") protokolliert wurden.

Das Tool kann sehr nützlich sein - nicht weil eine Access Log Datei besonders komplex aufgebaut ist (access log files sind im Gegenteil sogar sehr einfach zeilenweise strukturiert), sondern wegen der schieren Größe solcher Dateien: Dateigrößen von einigen Millionen Zeilen pro Tag sind nicht ungewöhnlich. In den meisten praktischen Fällen ist es daher unmöglich, eine solche Datei in ein Editor Programm einzulesen und dann "hier und da herumzuklicken", um herauszubekommen, "was sich denn da getan hat".

Das Tool wird im Dialog benutzt:

Das Ergebnis des ersten Schritts wird in fünf unterschiedlichen Ansichten gezeigt:

Jeder Abschnitt kann durch Klicken auf die entsprechende Checkbox ausgeblendet werden.

In vielen Fällen ist es dann sinnvoll, alle Transaktionen zu einer speziellen LogWeb/Ajax Sitzung im Detail aufzulisten.
Alternativ kann es auch hilfreich sein, alle Server-Zugriffe innerhalb eines Zeitraums oder mit einem speziellen Text-Inhalt zu extrahieren und aufzulisten.
Die so erzeugten Detail Ansichten können ebenfalls durch Klicken auf die entsprechende Checkbox ausgeblendet oder bei Bedarf auch wieder vollständig entfernt werden.

Das linke Teil-Fenster des Programms bietet einen bequemen Schnellzugriff auf die einzelnen Ansichten.

Die folgenden Abschnitte zeigen beispielhaft den Aufbau der unterschiedlichen Ansichten; genauere Erläuterungen finden sich in der Detail-Hilfe, wenn Sie das Programm starten.

LogWeb/Ajax Sessions

Die Sitzungs-Übersicht zeigt eine Zeile pro LogWeb/Ajax Sitzung:

LogWeb/Ajax session transactions server request interval client response delay
#ID session ID ip User RemoteAddr Admin Stop first last total max sec at time hits/sec sessions max millis at time
#1 81d0d12411328883fba 100.0.1.12 sp2742 78.48.131.27 _Response 06:40:24 10:35:39 1377 35 10:23:05 19 52 17797 10:23:05

Ein Doppel-Klick in den Spalten-Kopf der Tabelle sortiert diese Spalte abwechselnd auf- oder absteigend.

Ein Rechts-Klick in eine der Zeilen öffnet die Detail-Filter Anfrage:

HTTP Errors

Pro Zeile wird ein HTTP Fehler angezeigt:

URLhttp rc first last total
/logwebVT/ 302 06:33:39 08:44:26 13
/logwebVT/__login/de/logics/ajax/JSBridgeBeanInfo.class 404 10:20:59 10:20:59 1

Details zu HTTP Fehlercodes finden sich zum Beispiel unter http://de.selfhtml.org/servercgi/server/httpstatuscodes.htm

Server Load

Diese Ansicht zeigt die Server Belastung in Intervallen von 1 Minute:

                      = 1 server hit per second
                      = 10 concurrent sessions
time  sess  hits
06:24     0     1    
06:26     1     1    
06:29     1     1    
06:30     2     3      
06:31     2     3      
06:32     3     3      
06:33     6     7          
06:34     6     2     
06:35     6     1    
06:36     6     3      
06:37     6     2     

Details View

Die Detail-Ansicht zeigt eine Access Log Zeile pro Ausgabzeile:


           ---server-- ---------access log---------- --bytes-- ---interval-- --client- ---delay ms--  --------------AJAX--------------       
   line    sess   hits     time              ip verb  in   out server client ---time-- client server  Action SessionID  ScreenID Admin PARAMS
  12669       4      3 09:21:39  10.222.111.142 POST      1574      3      2   281.175    181           Send       #39    115/44       __15001001.0: %3CENTER%3E
  12712       4      3 09:21:55  10.222.111.141  GET       166 ==== 10.222.111.141 - - [11/Dec/2007:09:21:55 +0100] "GET /as400/_empty.jsp HTTP/1.1" 200 166