TOP10 dos Sites Mais Acessados Através do Squid

Estou adicionando ao nosso sistema de monitoramento mais uma opção, que é a listagem dos 10 sites mais acessados nos Centros Digitais de Cidadania.

Primeiramente você deve ter toda a estrutura do proxy em funcionamento (Squid + Iptables ou Squid + Firefox configurado pra sair pelo proxy). Em seguida execute o comando em Shell Script abaixo:

# cat /var/log/squid/access.log | egrep -i -v “(\.jpg|\.gif|\.png|\.swf|\.jpeg|\.js|\.css|\.ico|\?)” | awk ‘{print $7}’ | sort | cut -d’/’ -f 1,2,3 | uniq -c | sort -rn | head -10

Ao final do comando será apresentada a quantidade de acessos ao site juntamente com seu endereço, o resultado será parecido com este:

1338 http://downloads.berimbau.ba.gov.br
101 http://safebrowsing-cache.google.com
22 http://www.secti.ba.gov.br
20 http://mirrors.adnettelecom.ro
12 http://www.bahianoticias.com.br
12 http://vida.berimbau.ba.gov.br
7 http://www.atalibaneto.com.br
7 https://atalibaneto.wordpress.com
6 http://www.cidadaniadigital.ba.gov.br
3 http://platform.twitter.com

Feito!

O que esse comando faz?

1. Primeiro vamos varrer todo o log aonde fica armazenado os sites acessados pelos usuários.

# cat /var/log/squid/access.log

2. Em seguida vou filtrar as conexões excluindo os sites que não me interessa como; imagens, ícones, java, flash e etc. Só quero o site principal que o usuário acessou. (você pode aprimorar essa limpeza adicionando mais opções ao filtro)

egrep -i -v “(\.jpg|\.gif|\.png|\.swf|\.jpeg|\.js|\.css|\.ico|\?)”

3. Seleciono o endereço dos sites que estão na 7ª coluna e organizo os sites em ordem alfabética.

awk ‘{print $7}’ | sort

4. Pego apenas o endereço principal dos sites, para isso vou pegar tudo que existir até a 3ª /. Por exemplo se aparecer assim http://www.atalibaneto.com.br/asdhkshkashd___34734 será mostrado http://www.atalibaneto.com.br

cut -d’/’ -f 1,2,3

5. Realizo a contagem de sites repetidos e organizo em ordem decrescente .

uniq -c | sort -rn

6. Listo apenas os 10 primeiros sites acessados, se você quiser visualizar todos, remova o comando abaixo. Se deseja alterar a quantidade de sites apresentado na lista, altere o número 10 para o valor que desejar.

head -10

Os testes foram realizados no Debian Lenny e Squid versão 2.7.STABLE3-4.1lenny1.

Existe uma ferramenta chamada Sarg que cria diversos relatórios através do log do Squid, inclusive o TOP10. Não usei o Sarg porque preciso dessa lista em modo texto e o Sarg gera relatórios em HTML dentre outros motivos. Além do mais Shell Script é Shell Script, simples e eficiente. :)

Até breve!

Anúncios

Um comentário em “TOP10 dos Sites Mais Acessados Através do Squid

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s