Sarg - Gerador de relatórios do Squid - tutoriais, dicas e indicações.
Atualizado em: 10/09/2006
Algumas dicas e comandos
Real time do SARG
SUSE 10 e 10.1 - i386
SUSE 10 - i386
Compilar - instalar a partir do fonte
FC5 - Instalar no Fedora Core 5 - arquitetura x86_64
Relatórios com nome do usuário ou estação em lugar do IP.
Mais tutoriais, documentação, FAQ e indicações de sites sobre Sarg
SARG = Squid Analysis Report Generator
Sarg é um utilitario gerador de relatórios sobre os arquivos de log do Squid, gera os relatorios em HTML e qualquer estação da rede ou mesmo via web tem acesso aos relatorios em um servidor web, são relatórios e gráficos ricos em detalhes.
Tutorial - Sarg - instalar e configurar em diversas distribuições, tem tópico especifico para diferencir comandos de instalação e outros detalhes peculiares a cada distro, inclue também comandos e linhas de comando, scripts e agendar execução automatica.
Lembre que precisa do Squid instalado na maquina onde vai rodar o Sarg, pode não estar rodando nem configurado, mesmo quando vai copiar os logs de outra maquina para gerar relatórios, de qualquer forma precisa do Squid instalado antes de iniciar a instalação do Sarg.
A instalação do Sarg diferencia conforme a distro, veja comandos especificos sobre a instalação no tópico sobre sua distro.
Depois de instalar o Sarg, precisa editar seu arquivo de configuração para gerar relatórios conforme suas necessidades, tem diversas opções, também depende do que consta nos logs do Squid, considere que os logs mudam conforme a configuração do squid, quando se usa autenticação deve constar o nome dos usuários nos logs, sem autenticação com certeza não tem esta informação nos logs, portanto a configuração do Sarg deve levar em conta o que tem registrado no log
Relatorios do SARG são como páginas web, requer o servidor Apache para exibir as páginas, o diretório default muda conforme a distro ou versão, portanto, requer alterações no sarg.conf ou no conf do Apache, nestes tutoriais vou configurar o SARG para salvar em diretórios default do Apache conforme instalação de cada distro, voce pode alterar as conf do Apache ou SARG, o que importa é se entenderem, o Apache achar o diretório dos relatórios e exibir as páginas.
O arquivo de configuração fica em /etc/sarg/sarg.conf, pode fazer as alterações nele diretamente com seu editor preferido ou para testes pode copiar um modelo pronto, neste documento tem varias indicações de como fazer esta troca.
Segue os passos para troca do sarg.conf no CL10, não aplique em outras distros porque o diretório default do Apache é diferente e requer alteração no sarg.conf.
cd /etc/sarg
mv sarg.conf ori-sarg.conf
wget http://www.zago.eti.br/modelos/sarg20.conf
cp sarg20.conf sarg.conf
Gerar relatorios, execute:
Prontinho, relatorios gerados, pra acessar a partir do navegador da propria maquina ou qualquer estação estação da rede, coloque na URL o IP//squid-reports/, por exemplo: http://192.168.1.3/squid-reports/
Onde o IP 192.168.1.3 é o IP da maquina onde gerou os relatorios, precisa também do servidor web (apache) rodando.
Considere o uso de senhas para acessar estes relatorios, procure neste diretório pelo FAQ senhas.txt
sarg -help
sarg -x -z
Realtime do SARG. a partir da versão 2.1 tem este recurso. Através do navegador consegue ver os logs em tempo real, acompanhar o que os usuários estão acessando.
CVS sobre real time no SARG
http://pkgsrc.se/www/sarg
Os passos a seguir, assume que já tenha o Squid e Apache instalados nesta maquina, também tenha acesso à internet para download ou acesso aos pacotes em outro local para instalação, no final deste documento tem inidicaçoes de tutoriais para Squid e Apache.
Instalar via smart.
smart install sarg -y
Informações sobre SARG
linux:/home/zago # smart search sarg
sarg-debuginfo - Squid Analysis Report Generator
linux:/home/zago # smart info sarg
Version: 2.1-10@i586
Informações sobre o SARG no SUSE 10 - i386
sarg-debuginfo - Debug information for package sarg
Version: 2.0.8-3@i586
Installed Size: 682.5kB
Também tem versão especifica para arquitetura x86_64, veja o resultado da pesquisa em instalação do SUSE 10 x86_64.
suse64:~ # smart info sarg
Versão: 2.0.8-3@x86_64
Grupo: Productivity/Networking/Web/Utilities
Tamanho Instalado: 659.5kB
Instalar SARG via smart
Prontinho, sarg instalado, no SUSE 10 já vem configurado, não percisa alterar nada, para gerar relatórios, execute;
sarg -f /etc/sarg.conf
linux:/etc # sarg -f /etc/sarg.conf
SARG: Records in file: 4, reading: 100.00%
sort: open failed: 110512: No such file or directory
sort: As LC_TIME differs from LC_CTYPE, the results may be strange.
SARG: Successful report generated on /srv/www/htdocs/squid-reports/2006Mar26-2006Mar26
Observe que deu alguns erros, mesmo assim gerou o relatorio, qualquer dia tento uma solução para eliminar estas mensagem de erro.
Acessar os relatórios, na maquina local, acesse o diretório /srv/www/htdocs/squid-reports/ ou a partir de outras maquinas, informe na URL o IP mais o diretório acima, neste formato; .
192.168.1.3/squid-reports/
Caso não atenda suas necessidades, então edite o arquivo de configuração do SARG que fica em /etc/sarg.conf, configure a seu modo.
Caso tenha alguma dificuldade, pode tentar uma conf pronta para testar ou comparar com a sua, tem algumas conf de outros tutoriais, use somente como comparativo, utilizei a mesma configuração do CL10 e falhou,
Infelizmente não tenho como pesquisar sobre isto agora, em breve, mais soluções, comentarios e mais sarg.conf com outras opções de relatórios.
Informações sobre o SARG no SUSE 10.1 - i386
Prontinho, sarg instalado, já vem configurado, não percisa alterar nada, para gerar relatórios, execute;
opensuse101:/home/zago # sarg -f /etc/sarg.conf
SARG: Records in file: 191, reading: 100.00%
Caso tenha alguma dificuldade, pode tentar uma conf pronta para testar ou comparar com a sua, tem algumas conf de outros tutoriais, use somente como comparativo.
A melhor opção é instalar a partir do rpm da própria distro, também pode instalar a partir dos fontes, geralmente para instalar versão mais recente ou personalisar a seu modo.
Instalar programas a partir dos fontes requer o compilador apropriado para o pacote que deseja compilar. Sarg tem os fontes e "c", portanto requer o compilador "c" gcc e make, o nome destes pacotes e comando para instalar muda conforme a distro, a seguire linha de comando para instalar via smart no SUSE 10.1.
Procure pelo pacote mais recente no site do projeto, em 10.09.2006 baixei a versão do sarg-2.2.2, a seguir os comandos executados no SUSE 10.1 instalado com perfil KDE, com sarg da distro instalado, comandos a serem executados no diretório onde salvou, neste exemplo utilizei /tmp/sarg.
mkdir /tmp/sarg
# copie o arquivo sarg-2.2.2.tar.gz
tar -zxvf sarg-2.2.2.tar.gz
cd sarg-2.2.2
# leia o arquivo README com intruções e diretivas para compilar
# ./configure --enable-htmldir /srv/www/htdocs/  #falhou então vai sem diretiva
Prontinho, instalado, o sarg.conf vem com todas as linhas comentadas, agora precisa editar conforme sua necessidade ou substituir o sarg.conf por outro já configurado. Local do sarg.conf.
Linha de comando para gerar relatórios.
sarg -f /usr/local/sarg/sarg.conf
Deve retornar erro por falta de configuração e ajuste nos caminhos do servidor web, locais dos logs e outras tags.
Como ponto de partida, consulta ou teste, pode usar este sarg.conf utilizado nos comandos abaixo para substituir o da instalação.
cd /usr/local/sarg/
mv /usr/local/sarg/sarg.conf /usr/local/sarg/sarg-original.conf
wget http://www.zago.eti.br/modelos/sarg222.conf
Acessar relatórios, use IP do servidor apache mais /squid/reports na URL, exemplo para servidor com ip 192.168.1.2.
http://192.168.1.2/squid-reports
Neste sarg.conf não tem muitos recursos da versão 2.2.2, ele é uma adaptação do Sarge 2.0, funciona e serve como consulta ou testes...
Depois volte o sarg.conf original para editar a seu modo.
Algumas anotações temporárias, colinha para lembrar dos detalhes nos futuros testes. Diretivas para compilar, default tem caminho diferente do SUSE
Falhou ao tentar compilar com esta opção.
./configure --enable-htmldir /srv/www/htdocs/
Sem a diretiva acima o diretório instalou sarg-php
/usr/local/sarg/sarg-php
o diretório default do apache2 fica em.
Até agora, a solução que funcionou foi com o pacote para (Red Hat EL 4 - x86_64), para instalar, tente uma destas opções, se falhar uma tente a outra.
rpm -ivh http://dag.wieers.com/packages/sarg/sarg-1.4.1-5.2.el4.rf.x86_64.rpm
Falhou, então faça o download do pacote "sarg-1.4.1-5.2.el4.rf.x86_64.rpm", procure por ele em;
no diretório onde salvou, execute;
rpm -ivh sarg-1.4.1-5.2.el4.rf.x86_64.rpm
[root@FC5 zago]# rpm -ivh sarg-1.4.1-5.2.el4.rf.x86_64.rpm
aviso: sarg-1.4.1-5.2.el4.rf.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 6b8d79e6
1:sarg
Prontinho, sarg instalado, para gerar relatórios, precisa editar o arquivo de configuração do SARG que fica em /etc/sarg.conf, configure a seu modo, caso tenha alguma dificuldade, pode tentar uma conf pronta para testar ou comparar com a sua, utilizei a mesma configuração do CL10 que usa Sarg 2.0, considere que na versão mais nova pode ter mais recursos, também a minha configuração pode não atender suas necessidades, use somente como comparativo, peguei o conf do CL10 e alterei somente a tag
Funcionou, então vai a dica para substituir o sarg.conf da instalação pelo modelo do FAQ, veja a sequencia de comandos;
mv /etc/sarg.conf /etc/original-sarg.conf
wget http://www.zago.eti.br/modelos/fc5-sarg.conf.txt
cp fc5-sarg.conf.txt sarg.conf
SARG: Successful report generated on /var/www/html/squid/squid-reports/2006Mar24-2006Mar24
Na maquina local, acesse o diretório acima para cosultar o relatório, a partir de outras maquinas, informe na URL o IP mais o diretório squid, neste formato; .
192.168.1.3/squid/
Já tem a versão 2.1.1 mas não encontrei os rpm para x86_64, tentei instalar a partir do .tar.gz e falhou, veja a mensagem;
[root@FC5 sarg-2.1]# ./configure --enable-sysconfdir=/etc/sarg
configure: error: /bin/sh cfgaux/config.sub x86_64-pc-linux-gnuoldld failed
Tentei também com pacotes para ix86 e deu erro de arquitetura, deve funcionar em instalações ix86, exceto para x86_64, tem pacotes rpm para as demais versões do FC, procure pelo pacote do sarg em;
http://www.mack.ro/linux/sarg/
Mesmo que não conste o nome dos usuários no log do Squid, é possível gerar relatorios com nome do usuário em lugar do IP, voce deve criar uma tabela com os IP e seus respectivos nomes que vão aparecer nos relatorios gerados pelo sarg, veja este item do /etc/sarg/sarg.conf
Altere a linha (TAG): usertab none
usertab /etc/sarg/ip_nomes
Onde /etc/sarg/ip_nomes é um arquivo texto puro com duas colunas, a primeira com o IP e a segunda com o nome que usará na exibição do relatório com resumo de utilização, somente neste relatorio será feita a troca do IP pelo nome associado a ele, dentro do arquivo, somente um IP com nome por linha.
Crie este arquivo ip_nomes e dentro dele coloque o IP de cada maquina da tua rede, ao lado do IP coloque o nome que queira exibir nos relatorios, por exemplo:
cat /etc/sarg/ip_nomes
192.168.1.53 zago
192.168.1.6  caixa
192.168.1.38 anderson
Prontinho, a partir desta alteração, quando executar o comando:
Somente no relatorio inicial será feita a troca do IP pelo nome associado a ele, nos demais relatorios continua utilizando o IP.
Acessar relatorios via web ou a partir de outra maquina da rede, requer o servidor web rodando, veja tutoriais dicas e FAQ sobre o apache em:
Tutoriais para instalar no Conectiva
FAQ com mensagens da lista Linux-br, dicas e instalação, tutorial CL9, outras dicas sobre relatórios e indicações de sites relacionados:
SARG - gerador de relatorios sobre o log do Squid. Download, documentação e screenshot.
Versão 2 em diante com graficos, o desenvolvedor disponibilizou um relatório na web, conheça melhor, navegue em:
Tutorial em portugues, bem detalhado e explicativo sobre como configurar o sarg, varios exemplos de configuração e parametros.
http://www.linuxdicas.com.br/article1260.html
Lista de discussão sobre o desenvolvimento do Sarg, em inglês, com participação do desenvolvedor do Sarg (Pedro Orso), participe, ajude, colabore ...
http://groups.yahoo.com/group/orso/
Com scripts, comandos e comentários.
http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=1416
PDLGS - Power Database Log Generator for Squid
Guarda os log do Squid em banco de dados MySQL e utiliza scripts em PHP pra gerar diversos tipos de relatorios, tem muitos recursos.
http://pdlgs.sourceforge.net/
Administrar o Squid e gerar diversos tipos de relatórios, por hora, usuários e etc.., também em gráficos, configuração simples e relatórios via Browser, tem screenshot e mais informação.