Ajuda Log's

1. Ajuda Log's

Claudemir Santos
tech14107

(usa Red Hat)

Enviado em 28/10/2009 - 06:19h

Pessoal bom dia tudo bem?
Galera precisomde uma ajudinha.
Tenho varios bancos de dos num servidor Progress.
eles fica mais ou menos assim
/dir01/xpto/banco1/db
/dir01/xpto/banco2/db
/dir01/xpto/banco3/db
/dir01/xpto/banco4/db

em cada um desses dir tenho arquivos com a extensao .lg (logs dos bancos)

o que eu gostaria é , por exemplo apartir do /dir01/xpto eu dou um
find /dir01/xpto -name *.lg

ai ele me retorna a lista de arquivos (até aqui sm problemas) o que eu quero é agora procurar em cada um dos arquivos retornados uma determinada string (por exemplo SYSTEM ERROR), e se ele achar essa palavar ele dispara um mail dizendo em qual arquivo ele encontrou.

valeu pela ajuda



  


2. GREP - MAIL

José Cleydson Ferreira da Silva
cleysinhonv

(usa Ubuntu)

Enviado em 28/10/2009 - 07:29h

Olá,
Bom o que você quer é a um script que leia o conteúdo de todos os arquivos ache o erro "SYSTEM ERROR" e envie um email.

Você precisará de ler arquivo por arquivo, com algum comando que jogue o resultado na saída padrão, mas para isso você precisa filtar com o comando comandox | grep SYSTEM ERROR e se houver resultado você terá que usar um programa chamado mail para enviar o arquivo.





3. Re: Ajuda Log's

Claudemir Santos
tech14107

(usa Red Hat)

Enviado em 28/10/2009 - 08:00h

Ola, é exatamente isso que eu gostaria, mas ai esta a dificuldade eu nao to conseguindo fazer isso.


4. Re: Ajuda Log's

nelio
neliobjr

(usa Red Hat)

Enviado em 28/10/2009 - 08:57h

Cara, eu tenho um script semelhante ao que vc quer, que roda no meu red hat, gera export de backup do banco e envia email dos logs do oracle somente se contiver erro, ou um erro do Oracle que é conhecido como ORA-algum_numero, tipo 0RA-00102, assim que acaba de fazer o export.

Envio o email com python, da se não tiver um esquema para mandar email, vale a pena dar uma procurada nele, eu já respondi algumas vezes sobre este esquema, mas estou sem tempo para procurar, agora segue o script, vou comentar somente os mais importantes.

exp banco/senha buffer=10000000 file=/u01/dmp/banco/banco.dmp log=/u01/dmp/banco/expbanco.log statistics=none owner=banco consistent=y

data=`date +%d_%m_%Y-%H:%M:%S`

# a linha abaixo é a que procura as variaveis que indicam erro, no caso exp-0, ora-0 ou falho a barra invertida serve para fazer o ou logico.

if grep -i "exp-0\|ora-0\|falhou" /u01/dmp/banco/expbanco.log >/dev/null
then

# a linha abaixo é a que envia o email. com o python, o comando
# python "arquivo de config. de envio de email" "arquivo de log."

python /u01/scripts/scriptnelio.py /u01/dmp/ituweb/expituweb.log >> /dev/null

fi

espero que ajude.





5. Re: Ajuda Log's

Daniel Fernandes
volcom

(usa Debian)

Enviado em 28/10/2009 - 09:22h

Se não tiver um MTA, instale o SendEmail:

http://www.vivaolinux.com.br/artigo/Enviando-emails-pelo-terminal?pagina=1

Simples e funcional.

Depois vai ter que montar um Script simples, mais ou menos assim:

touch mail.txt
find /dir01/xpto -name *.lg | grep 'SYSTEM ERROR' > mail.txt
sendEmail E SUAS OPÇOES

Claro que temos como deixar o Script mais detalhado, mas essa é uma solução para o que você mostrou aqui.

Se precisar de ajuda nos avise.

Abraço


6. Re: Ajuda Log's

DAVISON MARCEL PASQUALINI
fdmarp

(usa Debian)

Enviado em 28/10/2009 - 19:04h

Não sei não mas acho que o que você precisa ta mais pra isso aqui:





string="SYSTEM ERROR"
find /dir01/xpto -name *.lg | while read line
do
email=`grep -c "$string" $line`
if [ $email -gt 0 ]; then
echo "manda e-mail"
echo "arquivo: $line"
fi
done







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts