De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Smailli Hemori Moraes
Data de Publicação: 05 de março de 2008
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 |
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
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
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
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.
Fonte: Notícias Linux
Em e-mail para comunidade Linux, Linus Torvalds elogia decisão da Microsoft de abrir APIs e revelar protocolos.
"Eu posso fazer piadas com a Microsoft e, eventualmente, dizer que eles fazem coisas estúpidas. Mas eu penso que neste caso eles deram um passo na direção correta", escreveu Torvalds.
Fonte: http://info.abril.com.br/aberto/infonews/022008/25022008-18.shl
Comente: http://www.noticiaslinux.com.br/nl1203986614.html#comentarios
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários