Logs do Squid de forma legível

Publicado por krum em 27/09/2013

[ Hits: 10.610 ]

 


Logs do Squid de forma legível



Uma vez precisei fazer uma auditoria nos relatórios do Squid, de maneira que fosse direto da fonte dos logs do Squid.

Como o access.log vem ilegível, procurei e achei uma solução para converter ele para dados legíveis, o mesmo que o Sarg faz.

Vamos lá.

Crie um arquivo chamado relatorio.pl:

# touch relatorio.pl

Dentro dele, coloque o seguinte código:

#! /usr/bin/perl -p
s/^\d+\.\d+/localtime $&/e;

Feche o arquivo, adicione permissão de execução e execute:

# chmod +x relatorio.pl
# ./relatorio.pl access.log > access.log-convertido


Para ficar melhor o jeito de organizar as coisas, você pode fazer o seguinte:

# cat /var/log/squid/access.log | ./relatorio.pl > access.log-$(date +%d-%m-%Y).log

Mova o script em Perl para "/sbin":

# mv relatorio.pl /sbin

Tente fazer algum script e adicionar ao "/etc/cron.daily/", algo parecido com:

Crie o arquivo:

# touch perl.sh
# chmod +x perl.sh


Com o conteúdo:

#!/bin/bash
INICIO=$(date | cut -d ' ' -f1,2,3)
ANO=$(date +%Y)
cat /var/log/squid/access.log | relatorio.pl | grep "$INICIO" | grep "$ANO" > access-$(date +%d-%m-%Y).log

Antes de converter, os logs do Squid vêm dessa forma:

 1379436453.033 585 192.168.0.174 TCP_MISS/200 2473 POST http://evintl-ocsp.verisign.com/ - HIER_DIRECT/199.7.55.72 application/ocsp-response
 1379436453.053 593 192.168.0.174 TCP_MISS/200 2473 POST http://evintl-ocsp.verisign.com/ - HIER_DIRECT/199.7.55.72 application/ocsp-response
 1379436453.268 586 192.168.0.174 TCP_MISS/200 2473 POST http://evintl-ocsp.verisign.com/ - HIER_DIRECT/199.7.55.72 application/ocsp-response
 1379436453.312 578 192.168.0.174 TCP_MISS/200 2473 POST http://evintl-ocsp.verisign.com/ - HIER_DIRECT/199.7.55.72 application/ocsp-response


Depois de convertido, fica como está abaixo:

Tue Sep 17 13:47:33 2013    585 192.168.0.174 TCP_MISS/200 2473 POST http://evintl-ocsp.verisign.com/ - HIER_DIRECT/199.7.55.72 application/ocsp-response
Tue Sep 17 13:47:33 2013    593 192.168.0.174 TCP_MISS/200 2473 POST http://evintl-ocsp.verisign.com/ - HIER_DIRECT/199.7.55.72 application/ocsp-response
Tue Sep 17 13:47:33 2013    586 192.168.0.174 TCP_MISS/200 2473 POST http://evintl-ocsp.verisign.com/ - HIER_DIRECT/199.7.55.72 application/ocsp-response
Tue Sep 17 13:47:33 2013    578 192.168.0.174 TCP_MISS/200 2473 POST http://evintl-ocsp.verisign.com/ - HIER_DIRECT/199.7.55.72 application/ocsp-response

E isso aí galera, até mais.
Espero que gostem da dica.

Outras dicas deste autor

Slackware e BIND - Corrigindo erro em chroot após upgrade

SqStat com Squid 3.3.6 monitorando usuários

Slackware com kernel 3.10 - Erro com driver NVidia [Resolvido]

PHP - Fatal error: Allowed memory size of bytes exhausted [Resolvido]

Exportar variáveis de um script no mesmo sub-shell

Leitura recomendada

Resolvendo o problema de instabilidade do imsniff

DNS no Slackware 14.1 - Configuração sem gambiarras

Instalando Squid 2.6 + patch ZPH no Debian Etch

Atualizando PHP e MySQL 4 para 5 e outros programas no CentOS 4.5

Redirecionando portas no Debian Squeeze

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts