[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!.