fácil de fazer a pergunta, a resposta é um pouco mais complicada, e a implementação será ainda mais difícil.
Uma das principais razões para ter hosts virtuais é que você pode ter vários sites executando o mesmo endereço IP - então, para medir a largura de banda real, você precisaria de um sistema de monitoramento de pacotes como PasTMon - o que é bastante para configurar / integrar.
Uma solução mais simples seria gravar o valor no arquivo de log do Apache (% I,% O) junto com o host virtual (% v).
Para contar os visitantes, você precisará do mod_usertrack - e registrar o valor do cookie usertrack (por padrão% {Apache}). Observe que é opcional se os navegadores aceitam / apresentam cookies. Uma sessão de usuário único pode aparecer de vários hosts remotos ao se conectar através de proxies balanceados por carga enquanto potencialmente múltiplos usuários podem estar acessando o site através do mesmo proxy - então o host remoto (% h) não é um indicador preciso - mas você pode considerar usar este para casos em que o cookie informado é sempre nulo.
Você também precisará de algumas ferramentas para analisar os logs e transformar os dados brutos em algo mais significativo. Mas implementar isso em perl ou awk (ou ...?) É trivial. Você pode configurar o Apache para canalizar os logs diretamente para o programa ou gravar em um arquivo e depois seguir o arquivo para alimentar o transformador.
O Nagios é um monitor de sistema em tempo real - e não é ideal para monitorar / relatar esse tipo de dados. Você pode querer dar uma olhada no AWStats - embora isso realmente funcione apenas com dados off-line.
Veja também