I may have made it a bit further but need some fine tuning: LogFormat "%{Host}i %h %l %u %t \"%r\" %>s %b" vlogger CustomLog "| /usr/local/sbin/vlogger /var/log/httpd/test" vlogger The only problem I have is that %{Host}i contains the literal host that they typed in. So, they could either type in foobar.com and www.foobar.com and it gets put into separate directories. In my config, I have mapping like this: Include conf/vhost_mass.conf RewriteEngine On RewriteMap lowercase int:tolower RewriteMap vhost txt:/etc/httpd/conf/vhost.map I thought I could maybe do %{vhost :%1} in my LogFormat but it isn't reading it in. Any other ideas? On Jan 11, 2008 12:20 PM, Terry <td3201@xxxxxxxxx> wrote: > I can't include the host header in the log as it will break our stats > program which needs common log format. Here is what I have: > > RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$ > RewriteCond ${vhost:%1} ^(.+)$ > RewriteRule . - [E=%1:1] > LogFormat "%h %l %u %t \"%r\" %>s %b" common > CustomLog logs/foobar.com_access.log common env=foobar.com > > If I go to foobar.com, it is not showing up in the logs. :\ I > think you are on the right track though. > > On Jan 11, 2008 10:11 AM, Axel-Stephane SMORGRAV > > <Axel-Stephane.SMORGRAV@xxxxxxxxxxxxxx> wrote: > > I can basically see two ways of doing this: > > > > 1. Include the host header in the log and use a script to split the resulting unique log file > > > > 2. set a distinct environment variable for each host (using RewriteCond/RewriteRule) and use the optional log condition to determine to what file to log, i.e. have one CustomLog directive per host name. > > > > RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$ > > RewriteCond ${vhost:%1} ^(.+)$ > > RewriteRule . - [E=%1:1] > > > > CustomLog /var/www/log/server1.log combined env=server1 > > CustomLog /var/www/log/server2.log combined env=server2 > > ... > > > > Not sure it will work, but maybe worth trying. > > > > -ascs > > > > -----Message d'origine----- > > De : Terry [mailto:td3201@xxxxxxxxx] > > Envoyé : vendredi 11 janvier 2008 16:25 > > À : users@xxxxxxxxxxxxxxxx > > Objet : splitting out to different files in customlog in mass vhost > > > > > > Hello, > > > > My vhost config is at the bottom. Today, it is writing a special log format for all of my vhosts to a single file. I would like to separate them out into separate files based on my vhost.map or the > > %{HOST}i or something similar. I tried CustomLog > > logs/%{HOST}i-access_log but it appears to not honor that variable in > > the CustomLog context. Any ideas? I can't do it on the backend > > because I need my log files to be in common log format so the hostname isn't included in that format. > > > > Thanks! > > Terry > > > > > > <VirtualHost 10.0.1.37:80> > > ServerAdmin hostmaster@xxxxxxxxxx > > ServerName omajelws04.foobar.com > > Include conf/vhost_mass.conf > > LogFormat "%{Host}i %h %l %u %t \"%r\" %s %b" vcommon > > LogFormat "%h %l %u %t \"%r\" %>s %b" common > > LogFormat "%{Host}i %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" > > \"%{User-agent}i\"" vcombined > > CustomLog logs/shared_access_log vcombined > > CustomLog logs/common_access_log common > > RewriteEngine On > > RewriteMap lowercase int:tolower > > RewriteMap vhost txt:/etc/httpd/conf/vhost.map > > RewriteCond %{REQUEST_URI} !^/icons/ > > RewriteCond %{REQUEST_URI} !^/cgi-bin/ > > RewriteCond ${lowercase:%{SERVER_NAME}} ^(?:www\.)?(.+)$ > > RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$ > > RewriteCond ${vhost:%1} ^(/.*)$ > > RewriteRule ^/(.*)$ %1/$1 > > RewriteCond %{REQUEST_URI} ^/cgi-bin/ > > RewriteCond ${lowercase:%{SERVER_NAME}} ^(?:www\.)?(.+)$ > > RewriteRule ^/(.*)$ /home/%1/cgi-bin/$1 [T=application/x-httpd-cgi] > > <Directory "/"> > > AllowOverride All > > </Directory> > > </VirtualHost> > > > > --------------------------------------------------------------------- > > The official User-To-User support forum of the Apache HTTP Server Project. > > See <URL:http://httpd.apache.org/userslist.html> for more info. > > To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx > > " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx > > For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx > > > > > > --------------------------------------------------------------------- > > The official User-To-User support forum of the Apache HTTP Server Project. > > See <URL:http://httpd.apache.org/userslist.html> for more info. > > To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx > > " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx > > For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx > > > > > --------------------------------------------------------------------- The official User-To-User support forum of the Apache HTTP Server Project. See <URL:http://httpd.apache.org/userslist.html> for more info. To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx