shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Filtrando log e contando...


From: Tiago Peczenyj
Subject: Re: [shell-script] Filtrando log e contando...
Date: Sun, 22 May 2005 03:58:54 -0300

como vc quer a saida ?

vc quer 
Funcionario   Numero
----------------    ----------
fulano           x
beltrano        y
cicrano         z

Ou

$./encontra cicrano
cicrano tem x DENIED 

A segunda é simples

$ cat arquivo | grep DENIED | grep -c usuario

ou

#!/bin/sh
if [[ $# < 1 ]]; then echo "Usage $0 username <file>" ; fi
USERNAME=${1}
ARCHIVE="/local/onde/ta/o/arquivo"
N=$(cat ${ARCHIVE} | awk '{print $8" "$4}' | grep DENIED | grep -c ${USERNAME})
echo "${USERNAME} tem ${N} DENIED"
exit 0;

O grep -c informa o número de vezes que ele encontra o nome do usuario
especificado, o awk apenas pega as colunas onde tem o nome e o DENIED.
Por que ? Vai que ele acessou www.andre.com.br ? o grep -c vai contar
esse andre tb... pra descargo de consciência usa isso.

Para gerar um relatório vc pode usar

cat arquivo | grep DENIED | awk '{print $8}'  | sort >
lista_de_usuario_ordenados_alfabeticamente

Se não funcionar altera o parametro do awk para pegar a coluna certa
(eu ACHO q ta na oitava...), a partir dessa lista ta uma barbada de
fazer o relatorio. Conte quantas vezes cada usuario aparece nessa
lista e vc tem usuario e vezes que aparece DENIED


Em 22/05/05, xxoin<address@hidden> escreveu:
>  1- Quando se utiliza squid com autenticação, normalmente, utilizamos
>  um arquivo com uma lista de usuários.
>  
>  2- O log de acessos do squid gera linhas deste modo (o usuário abaixo
>  é andre):
>  
>  1116732962.954     30 10.1.1.3 TCP_DENIED/407 1857 GET
>  http://www.ig.com.br/ andre NONE/- text/html
>  
>  - Gostaria de criar um script que FILTRASSE os USUÁRIOS no arquivo de
>  log, e fosse contando as vezes que estes usuários estivessem
>  aparecendo nas linhas DENIED. 
>  
>  Após um número 'x' de vezes, que isto ocorra para o mesmo usuário, ele
>  seja enviado para um arquivo a ser trabalhado.
>  
>  
>  Gostaria de contar com a coloboração da lista com o caminho da
>  "pescaria"...
>  
>  
>  
>  Grato
>  ______ 
>  Edson
>  
>  - Seja 'legal' use Linux!
>  
>  
>  
>  
>  
> 
> ---------------------------------------------------------------------
>  Esta lista não admite a abordagem de outras liguagens de programação, como
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
> aviso.
> ---------------------------------------------------------------------
>  Sair da lista: address@hidden
> ---------------------------------------------------------------------
>  Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
>  
> 
>  
>  ________________________________
>  Links do Yahoo! Grupos
>  
>  
> Para visitar o site do seu grupo na web, acesse:
> http://br.groups.yahoo.com/group/shell-script/
>   
> Para sair deste grupo, envie um e-mail para:
> address@hidden
>   
> O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do
> Yahoo!.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]