[Python-de] Squid Log-Parser

Andreas Jung lists at andreas-jung.com
Thu Sep 26 15:50:43 EDT 2002


Gibt es nicht bereits genuegend Module, die Squid Logs parsen koennen?

-aj

--On Donnerstag, 26. September 2002 14:39 +0100 Axel_Gerke at peacock.de wrote:

>
> Hi zusammen,
>
> ich arbeite z.Z. an einem Parser für Logdateien des Squid-Proxy's.
> dort tritt folgendes Problem auf:
>
> Um den User-Agent zu ermitteln, schaue ich in der gebastelten Liste nach,
> ob "User-Agent: " vorkommt. Wenn ja,
> trage es in eine temp-Liste ein. Wenn jetzt aber der betreffende Eintrag
> ein Proxy ist und kein Browser,
> taucht entweder NUR "Via: " auf oder (je nach Einstellung des Proxys
> worüber der Besucher surft) beides.
> und dann habe ich ein Problem, denn wenn beides eingetragen wird und
> somit die Länge der tempListe variiert,
> knallt der import der tempListe in eine DB.
>
>
>
> Beispiel mein Script:
> def responseEntries(Liste):
>     for item in Liste[1:]:
>         if item[:12]=="User-Agent: ": # Gib uns den User-Agent
>             destList.append(item[12:])
>         elif item[:5]=="Via: ": # oder den Proxy
>             destList.append(item.split("(")[-1].replace(")","")) # wir
> wollen nur den Proxy Namen/Typ
>     return destList
>
>
> Im Prinzip brauche ich folgendes:
> Wenn "User-Agent: " in der Liste vorkommt, nimm es, taucht jedoch NUR
> "Via:" auf, nimm "Via:",
> taucht beides auf, nimm nur "User-Agent: " und wenn keins von beiden
> auftaucht, nimm "kein User-Agent".
> (letzteres kommt vor, z.Bsp. bei den hübschen IIS Würmern,Viren,usw. ;o)
> Ich habe bereits mit "re" rumhantiert, was mir passend erschien, aber
> leider sind die Beispiele in der Doku
> nicht gerade "hübsch" wenn man damit noch nicht gearbeitet hat.
>
> Danke im Vorraus.
>
> Axel
>
>
>
>
>
> Beispiel der Liste, wo beides vorkommt(der Übersichtlichkeit halber einmal
> untereinander) :
> [
> IP-Adresse,
> - ,
> - ,
> 24/Sep/2002:00:44:46 +0200 ,
> GET ,
> http://URL ,
> HTTP/1.0,
> 200 ,
> 4843 ,
> Accept: image/gif; image/x-xbitmap,
> Referer: http://URL,
> Accept-Language: de,
> Accept-Encoding: gzip; deflate,
> User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1),
> Via: 1.1 RECHNER-NAME (Squid/2.4.STABLE6),
> X-Forwarded-For: IP-Adresse,
> Host: www.host.de,
> Cache-Control: max-age=259200,
> Connection: keep-alive,
> HTTP/1.0 ,
> 200 OK,
> Server: Zope/Zope 2.3.0a1 (source release, python 1.5.2, linux2)
> ZServer/1.1b1, Date: Mon, 23 Sep 2002 22:44:46 GMT,
> Connection: Keep-Alive,
> Content-Type: text/html,
> Content-Length: 4601,
> ]
>
>
>
> _______________________________________________
> Python-de maillist  -  Python-de at starship.python.net
> http://starship.python.net/mailman/listinfo/python-de






More information about the Python-de mailing list