Mit Apaches
SetEnvIf ist es kein Problem, für einen VirtualHost mehrere Logfiles zu definieren.
Use Case ist ein VirtualHost mit mehreren Domains (ServerName) aber mit einem gemeinsamen DocumentRoot.
Ich habe also
diedomain.com und
dieanderedomain.com, deren Logs ich u.a. wegen der Webstatistiken trennen möchte.
Zuerst kontrolliere ich, ob das
setenvif_module geladen ist:
apache2ctl -M
Da das der Fall ist, ergänze ich in der VirtualHost Konfiguration:
SetEnvIf Host dieanderedomain.com dieanderedomain
CustomLog /var/log/apache2/diedomain-access.log combined env=!dieanderedomain
CustomLog /var/log/apache2/dieanderedomain-access.log combined env=dieanderedomain
Die Logeinträge für diedomain.com werden dann in diedomain-access.log geschrieben, die Logeinträge für dieanderedomain.com landen in dieanderedomain-access.log.