Logs do Squid de forma legível

Publicado por krum em 27/09/2013

[ Hits: 10.523 ]

 


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

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

Atualizando microcódigo de processadores AMD

Shellshock (Slackware): Falha de segurança grave no bash [Resolvido]

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

Como descobrir seu IP externo com cURL

Leitura recomendada

Turbinando a navegação com o Firefox

Download do Firefox 2.0

Instalando o Google Chrome nativo no Linux com suporte a flashplayer

Ouvindo música navegando

Instalação do Opera no Linux (Fedora Core 8)

  

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