Customizando os arquivos de log do Squid


Autor/fonte: Smailli Hemori Moraes
E-mail/Url: http://www.dicas-l.com.br/dicas-l/20080305.php
Tags: [ squid ]



Digg del.icio.us

Com a liberação do Squid 2.6 surgiram várias novas funcionalidades e uma delas é o logformat que serve para manipular a forma em que o log será gerado. Funciona da seguinte forma:

logformat <nome> <especificação do formato> 

O nome nada mais é do que um nome para manipulação do formato.

A especificação do formato pode ser customizada como o administrador achar melhor, sempre adicionando o prefixo %. Segue a lista de especificações:

  • >a - IP de origem da requisição (cliente);
  • >A - FQDN do cliente;
  • >p - Porta de origem no cliente;
  • < A - IP do servidor de destino;
  • la - IP local do servidor Squid;
  • lp - Porta local do servidor Squid;
  • ts - Segundos passados desde a requisição;
  • tu - Subsegundos;
  • tl - Horário do servidor. Strings opcionais utilizadas como padrão. %d/%b/%Y:%H:%M:%S %z;
  • tg - Horário GMT. Strings opcionais utilizadas como padrão. %d/%b/%Y:%H:%M:%S %z;
  • tr - Tempo de resposta em milisegundos);
  • >h - Cabeçalho de requisição;
  • < h - Cabeçalho de retorno;
  • un - Nome do usuário;
  • ul - Login do usuário;
  • ui - Ident do usuário;
  • us - SSL;
  • ue - ACL externa;
  • Hs - Status do código HTTP;
  • Ss - Status da requisição (TCP_MISS/TCP_REFRESH/TCP_DENIED etc);
  • Sh - Status da hierarquia do Squid (DEFAULT_PARENT etc);
  • mt - MIME type do conteúdo;
  • rm - Método requisitado na conexão (GET/POST/CONNECT etc);
  • ru - URL requisitada;
  • rv - Versão do protocolo requisitado;
  • ea - String retornada por uma ACL externa;
  • < st - Tamanho da resposta, incluindo cabeçalho HTTP;
  • % - % literal.


Nova forma para o log

Para criar um novo template para o seu arquivo de log primeiro precisamos criar uma diretiva do tipo logformat que será usada mais a frente.

logformat MEU_LOG IP do cliente: %>a - Username: %un - Horario: [%tl] - Metodo: %rm - URL: %ru - Status HTTP: %Hs - Status Squid: %Ss

Logo em seguida definimos onde será utilizado o novo template. Estou separando em dois arquivos de logs (access.log e gerencia.log) para não atrapalhar o correto funcionamento do SARG.

O logformat com o nome squid é o padrão do Squid que estamos acostumados a ver e que o SARG necessita para que funcione corretamente.

O logformat com o nome MEU_LOG foi o template que criei para poder enviar, em um formato mais amigável, para a gerencia.

access_log /var/log/squid/access.log squid
access_log /var/log/squid/gerencia.log MEU_LOG

Nunca esquecer de dar um reload no Squid para que as novas configurações entrem em vigor.

# squid -k reconfigure

Log de acesso

Após a criação das regras meus dois logs de acesso, acessando o site http://www.integral.inf.br/, ficaram da seguinte forma

access.log:

1204121424.137     67 172.31.255.103 TCP_MISS/200 21384 GET http://www.integral.inf.br/home/index.php - DIRECT/172.31.254.2 text/html
1204121425.820     17 172.31.255.103 TCP_MISS/200 4116 GET http://www.integral.inf.br/inc/php/logo_casos.php? - DIRECT/172.31.254.2 image/png
1204121425.844     41 172.31.255.103 TCP_MISS/200 3522 GET http://www.integral.inf.br/inc/php/logo_casos.php? - DIRECT/172.31.254.2 image/png
1204121425.858     53 172.31.255.103 TCP_MISS/200 5263 GET http://www.integral.inf.br/inc/php/img_parceiro_banner.php? - DIRECT/172.31.254.2 image/png
1204121425.858     54 172.31.255.103 TCP_MISS/200 7240 GET http://www.integral.inf.br/inc/php/img_parceiro_banner.php? - DIRECT/172.31.254.2 image/png

gerencia.log:

IP do cliente: 172.31.255.103 - Username: moraes - Horario: [27/Feb/2008:11:10:24 -0300] - Metodo: GET - URL: http://www.integral.inf.br/home/index.php - Status HTTP: 200 - Status Squid: TCP_MISS
IP do cliente: 172.31.255.103 - Username: moraes - Horario: [27/Feb/2008:11:10:25 -0300] - Metodo: GET - URL: http://www.integral.inf.br/inc/php/logo_casos.php? - Status HTTP: 200 - Status Squid: TCP_MISS
IP do cliente: 172.31.255.103 - Username: moraes - Horario: [27/Feb/2008:11:10:25 -0300] - Metodo: GET - URL: http://www.integral.inf.br/inc/php/logo_casos.php? - Status HTTP: 200 - Status Squid: TCP_MISS
IP do cliente: 172.31.255.103 - Username: moraes - Horario: [27/Feb/2008:11:10:25 -0300] - Metodo: GET - URL: http://www.integral.inf.br/inc/php/img_parceiro_banner.php? - Status HTTP: 200 - Status Squid: TCP_MISS
IP do cliente: 172.31.255.103 - Username: moraes - Horario: [27/Feb/2008:11:10:25 -0300] - Metodo: GET - URL: http://www.integral.inf.br/inc/php/img_parceiro_banner.php? - Status HTTP: 200 - Status Squid: TCP_MISS

Tratando ACL

Com essa nova funcionalidade podemos atrelar um arquivo de log para cada acl como abaixo.

logformat LOG_DOMINIOS_LIBERADOS IP do cliente: %>a - Username: %un - Horario: [%tl] - Metodo: %rm - URL: %ru - Status HTTP: %Hs - Status Squid: %Ss

acl DOMINIOS_LIBERADOS dstdomain "/etc/squid/DOMINIOS_LIBERADOS.rules"

access_log /var/log/squid/dominios_liberados.log LOG_DOMINIOS_LIBERADOS DOMINIOS_LIBERADOS

Desta forma todo o acesso que casar com a acl DOMINIOS_LIBERADOS será gravado no arquivo de log /var/log/squid/dominios_liberados.log com o formato definido em LOG_DOMINIOS_LIBERADOS.

Fim

Espero que essa informação ajude a facilitar a visualização de log para os usuários do Squid. E também espero ter sido bem claro e não ter esquecido de nada nesse artigo.




Enviado por xKuRt em 05/03/2008 às 07:18


Itens relacionados

Administrando usuários do Squid via web como o Admuser
Bloqueando o MSN Messenger no Squid com facilidade
Deixando o Squid bloquear o MSN Messenger para você
Squid (quase) transparente para maquina unica
CBQ + Cache full (Squid)
Como funcionam as ACLs do Squid
Nota Fiscal Eletrônica com Squid/Autenticação
Squid + iptables: Liberando acesso de programas que não funcionam na internet compartilhada
Squid autenticando em um servidor LDAP (Active Directory)
Integração de autenticação Squid com NIS

Listar todos itens relacionados

Avaliação

Esta publicação ainda não foi avaliada!


Avaliar:


A avaliação de publicações é restrita a membros cadastrados e logados no nosso site.



Comentários

Este artigo ainda não foi comentado ou o(s) comentário(s) que foi(ram) enviado(s) a ele ainda não foi(ram) publicado(s).


Envio de comentário:




  

Terça, 23 de Setembro de 2014




Top 5 membros

Últimos membros online

Últimos membros cadastrados



Capa do livro
Otimização da Página de Entrada: Guia Para Testar e Sincronizar


Capa do livro
Expressões Regulares: Uma Abordagem Divertida


Capa do livro
Computação Gráfica: Processamento de Imagens Digitais - Volume 2





Hostnet

IMD