quinta-feira, 7 de agosto de 2008

Log do Squid em real time...!

Há algum tempo atrás, estava procurando a solução de um problema e acabei encontrando a de um outro problema. Matei dois coelhos com uma cajadada só.. :)

Encontrei um aplicativo desenvolvido em php que acessa informações no cache do squid e mostra o que está sendo acessado em tempo real.

O nome da aplicação ée SqStat desenvolvido por Alex Samorukov cujo site é http://samm.kiev.ua/sqstat/

A instalação segue no próprio site do desenvolvedor e é extremamente simples.

-> Tenha um servidor apache configurado e rodando na mesma máquina em que roda o squid.
-> Baixe o arquivo do site e descompacte em uma pasta.
-> Assim que descompactar copie ele para dentro de uma pasta a qual possa ser acessada pelo navegador exemplo: /var/www/html/sqstat
-> Agora configure o squid.conf para dar acesso ao manager pela aplicação:
adicione as linhas conforme suas necessidades:

acl manager proto cache_object
acl webserver src 192.168.1.50/255.255.255.255 #no caso de estacao, se for rede toda ficaria:
acl webserver src 192.168.1.0/255.255.255.0
# no final do arquivo coloque.
http_access allow manager webserver
http_access deny manager # esta linha já existe.

Feito isto é preciso configurar o arquivo config.inc.php
Host do servidor
$squidhost[0]="hostname do servidor ou IP";
$squidport[0]=porta_do_squid;

Pronto, agora acesse os logs pelo navegador:
http://servidor/sqstat e voilá...

Não esqueça de configurar corretamente o acesso no apache.
Qualquer dúvida post um comentário ae.

Abraços

9 comentários:

Jotinha disse...

SqStat error
Error (1): Cannot get data. Server answered: HTTP/1.0 403 Forbidden

Como resolvo?

Fernando Cordeiro disse...

Jotinha..

como está a configuração de acesso ao cache_object?
Verifique essa configuração novamente.
No meu caso esta da seguinte forma:

-> config já existente por padrão.

acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
http_access allow manager localhost


-> acl de acesso da minha máquina

acl webserver src 192.168.5.25/255.255.255.255
http_access allow manager webserver

Verifique se foi dado acesso ao cache_object para sua estação.

Bom, se não for isso pode ser alguma permissão de leitura para usuários que rodam o squid nos arquivos corretos.

Se não for isso, avise, vou tentar reproduzir o erro aqui.
Abraço e obrigado por comentar.

Jotinha disse...

#Recommended minimum configuration:
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl webserver src 192.168.1.0/255.255.255.255


# Only allow cachemgr access from localhost
http_access allow manager localhost
http_access allow manager webserver
http_access deny manager

Vou verficar acesso ao cache.

Obrigado por responder.

Fernando Cordeiro disse...

jotinha..

analisando a sua configuração, acho q o erro está na descrição da acl que da acesso a sua máquina.

Se você for liberar acesso a toda a rede a acl deve ficar assim:

acl webserver src 192.168.1.0/255.255.255.0

Agora, se você for especificar apenas para a sua estação, fica assim:

acl webserver src 192.168.1.10/255.255.255.255

O detalhe está na mascara de rede, todos os 4 octetos preenchidos com 255 significa um único IP por isso, o que você havia colocado está errado.

Experimente trocar, não precisa nem alterar permissões de leitura de arquivo.

Abraço.
obs: estou a disposição sempre que possível =)

diogenes disse...

Olá pessoal, meu caso está acontecendo diferente. quando tento acessar o endereço dá essa mensagem

SqStat error
Error (110): Connection timed out

Abraço

NetWalker disse...

Salve, Fernando.
Tudo blz?
Por um acaso, está usando sqstat com que versão do squid?
Estou tentando usar com a 3.0. Os endereços acessados atualizam, porém as velocidades permanecem zeradas. :/
De qualquer forma já valeu a dica.
Até mais. :)

NetWalker disse...

Opa!
Parece que o entendimento meu que foi errado. Mas vale a informação.
Ele mostra apenas a velocidade de acesso de objetos que não estejam no cache do squid.
Certo?
Sendo assim, tá tudo ok. Foi pressa. :D
Até mais.

Wakky disse...

Galera,

Tou recebendo o seguinte erro:

SqStat error

Error (110): Connection timed out


Valew,

Wellington Galvao disse...

Man, estou recebendo o seguinte erro:
meu squid é o 3
SqStat error

Error (1): Cannot get data. Server answered: HTTP/1.0 403 Forbidden