With prefork mod_php you are more or less clueless about RAM/CPU usage of different vhosts. Problem is that all apache processes run under same user, and every process serves all vhosts. So one process can serve vhostA in one moment and vhostB in other.
To make the matter worse, with each request served, for apache processes with mod_php RAM usage tends to grow until process serves MaxRequestPerChild requests, after which process retires, and new, small and lean process takes its place. So it's virtually impossible to track usage of resources with prefork/mod_php.
What you can do is utilize a tool that parses access_log, like apachetop, and watch the kind of requests apache serves. That won't give you very grained results, but you'll at least see some kind of patterns. That may help you if one of your vhosts is thrashing whole server.
On the other hand, if you want better solution, there are couple of way you can pursuit this problem. You could swap prefork for itk. mpm-itk allows you to run each vhost under different UID/GID - which will in turn solve your problem of resource consumption metrics - you could simply monitor per-UID RAM usage for example.
Other direction is PHP-FPM with separate pool for each vhost. But that will only separate PHP resource consumption, you still won't be able to see what apache does. But, with removal of mod_php from apache processes, you can run them with mpm-worker (threaded model) and RAM usage of apache would probably be negligible in comparison to PHP. Regarding process tagging - you can simply run them under different UID.