Monitor de largura de banda para sites do apache

2

Estou atrás de um aplicativo da web que analisará os arquivos de log do apache e registrará quanto de largura de banda o usuário usou. Temos vários hosts virtuais que possuem arquivos de log personalizados e a E / S é registrada no final do arquivo de log. No entanto, não consigo encontrar um aplicativo que analise vários arquivos de log e exiba um resumo para cada site.

Eu acredito que o awstats pode fazer isso, mas eu quero poder ver todos os meus clientes em uma lista. Se há algo que se integra em cactos, então isso seria perfeito.

    
por bmaynard 18.03.2010 / 20:38

2 respostas

1

Eu sugeriria despejar todas as informações em um log, usando um analisador lá e, em seguida, dividir os logs nos arquivos de log dos domínios virtuais respeitados depois de coletar os dados que você precisa deles.

Você também terá uma melhor escalabilidade de ponta usando um único arquivo de log mais de 2 (erro comum e erro) por virtual.

Se os alimentos estiverem em endereços IP separados, é razoavelmente fácil com algo como o MRTG.

    
por 18.03.2010 / 21:10
1

Pessoalmente, não consegui descobrir como fazer o Awstats fazer isso. Eu acho que Xerxes responder de uma questão de falha de servidor relacionada é a maneira mais fácil de fazer isso:

cat /var/log/apache/access.log | awk '{SUM+=$10}END{print SUM/1024/1024}'

Isso pressupõe a saída de% b bytes na posição 10 em seu arquivo de log - portanto, certifique-se de que sua configuração de CustomLog inclua% b e ajuste $ 10 conforme necessário.

O bom disso é que você pode executá-lo em arquivos de log individuais ou grep para linhas específicas em um único arquivo de log. Por exemplo, você poderia fazer

cat <log_file> | grep <virtual_domain> | awk . . .

para ver a largura de banda de um único domínio virtual em um log combinado.

    
por 25.09.2014 / 00:44