Protokollierung für einzelne ACLs in SQUID

Squid bietet die Möglichkeit Logfiles für einzelne ACLs zu erstellen.

Das Vorgehen dabei ist simpel:

Angenommen es sind zwei ACLs definiert:

...
acl mdlhosts dstdomain "/usr/local/etc/squid/rules/mdlhosts.squid"
acl mdlips dst "/usr/local/etc/squid/rules/mdlips.squid"
...

Möchte man nun, dass, sobald eine dieser beiden ACLs zutrifft, ein Eintrag in ein Logfile geschrieben wird, so sind zwei neue access_log Direktiven zur Konfiguration hinzuzufügen:

access_log /data/squid/logs/mdl.log combined mdlhosts
access_log /data/squid/logs/mdl.log combined mdlips


Hierbei stellt /data/squid/logs/mdl.log den Ort und Namen der Protokolldatei dar. "combined" definiert das Format des Loggings, z.B.

logformat combined %>a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %<st "%{Referer}>h" "%{User-Agent}>h" %Ss:%Sh

Der letzte Parameter ist die vorher definierte ACL.
Im Beispiel werden beide ACLs in ein gemeinsames Logfile geschrieben.

Nach einem "squid -k reconfigure" ist die Änderung sofort wirksam.