Logs do Squid de forma legível

Publicado por krum em 27/09/2013

[ Hits: 8.217 ]

 


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

Como descobrir seu IP externo com cURL

Corrigir Heartbleed OpenSSL no Slackware

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

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

IPtables - Bloquear Facebook, Twitter e derivados [Definitivo]

Leitura recomendada

Incrementando o Firefox

O IRC (Internet Relay Chat)

Kppp - Erro de autenticação (pppd exit 1)

Ubuntu Linux com placa wireless Atheros

Autenticando Speedy Business

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts