Logs do Squid de forma legível

Publicado por krum em 27/09/2013

[ Hits: 10.458 ]

 


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]

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

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

Corrigir Heartbleed OpenSSL no Slackware

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

Leitura recomendada

Iceweasel atualizado no Debian Wheezy - Repositório mozilla.debian

IPtables - Bloqueando o UltraSurf

Buscador de MP3

Conhecendo o OpenBSD

Redirecionando conexões terminal service de linux para o windows

  

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