If you have an catchall http virtual host like this:
<VirtualHost *:80 >
ServerName catchall.example.org
ServerAlias *.catchall.example.org
</VirtualHost>
You can log every virtual host on *. with:
LogFormat "%h - %v - %V %U" aliaseslog
CustomLog /var/log/apache2/catchall.example_aliases.log aliaseslog
An access to
foo.catchall.example.org/test.html will be logged:
123.123.123.123 - catchall.example.org - foo.catchall.example.org /test.html
With the log file you can count the access:
cut -f 5 -d ' ' /var/log/apache2/catchall.example_aliases.log| sort | uniq -c | sort -n
This will tell you, the overall access to every host.