I can help with the last part regarding the logging of which virthost. You can create a single virthost entry (foo.com), then use ServerAlias for all the additional domains that also point to it (foo2.com, foo3.com, and so on).
By default, you probably have something like this in main config for the "combined" log format:
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
Well, there is a log format variable for the virthost being requested, Its %V. So change the LogFormat for "combined" to:
LogFormat "%V %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
Then in your virthost directive, you just have:
CustomLog /home/user/logs/access.log combined
And thats it!
-John Von Essn