linux-l: squid Ausgabe lesbarer gestalten aber wie?

Michael.Feldbinder at bo.dlr.de Michael.Feldbinder at bo.dlr.de
Di Mai 12 13:43:59 CEST 1998







Hallo LX - Gemeinde!

Meine Frage ist, wie kann ich die squid Ausgabe lesbarer gestalten. Am Ende
soll User-Name "Leerzeichen" URL ausgegeben werden.
Also etwa von

     129.247.124.128 - - [12/May/1998:15:34:02 +0200] "GET
http://www.dino-online.de/pic/9a_468x60.gif" TCP_MISS 176

nach

     Feldbinder, Michael http://www.dino-online.de/pic/9a_468x60.gif

In meinem Laden, hat jeder User eine feste IP-Adresse und es existiert eine
Datei die in einer Zeile den Hostteil der IP-Adresse sowie den
dazugehörigen Namen enthält. Beispiel:

     0128cc     Feldbinder, Michael

(das "cc" habe ich eingefügt, damit man besser "grepen" kann)

Die Befehlskette

     tail -f /var/squid/logs/access.log | awk '{print
substr($1,13)"cc",$7}'

liefert immerhin

     128cc http://advert.hansenet.de/werbung10.html"

Was mir jetzt noch fehlt, ist die Substitution von "0128cc" nach "Name" und
das ganze dann Ausgegeben. Also so:

     Feldbinder, Michael http://advert.hansenet.de/werbung10.html"

Mit dem grep in der Namendatei rumgerühert liefert selbstredend den selben.
Aber wie kann ich das verketten? Besser ist noch, wenn ich gleich ein
awk-Script basteln könnte in dem das Heraussuchen gleich mit erledigt und
dann der ganze Quark angezeigt wird. Etwa so:

Aufruf:
tail -f /var/squid/logs/access.log | awk -f script.awk

script.awk:
{
     # Host Teil aus der IP# extrahieren
     suchstr = substr($1,13)  + "cc"

     #Name suchen & ggf. Konvertieren
                namestr = suche_eintrag_aus_name_file( suchstr )

     # Ausgeben
               print length( namestr) == 0 ? $1 :  namestr, $7
}

Sollte ich etwa eine BEGIN {} - Anweisung einfügen, der die gesamte Datei
einließt. Nöö, daß geht doch auch auf die Systemlast...

Habt Ihr eine tolle Idee???

Gruß Micha

---
Michael K.H. Feldbinder

mail...: mailto://Michael.Feldbinder@dlr.de
AX25...: DL2KDO @ DB0LJ * DOK: G03
600 Ohm: +49 228 447456

78-79 Simson S50 "Banane" 24 TKM, 79 MZ250 10TKM,
91-95 VT500C 22TKM, 96-xx XJ900S 19TKM






Mehr Informationen über die Mailingliste linux-l