Script para diminuir log (analise)

Neste tópico abordaremos dicas de vários tipos, usadas em linux, unix e outros.

Script para diminuir log (analise)

Mensagempor NoComments em Dom Mai 11, 2008 4:34 pm

Em alguns casos, precisamos analisar um determinado arquivo de log, porém, ele pode crescer a ponto de ficar enorme e não conseguirmos editá-lo com o vi ou outro comando.
Para isto, a melhor solução seria a utilização de um logrotate. Porém ele não adianta muito quando já estamos com o problema.

O script abaixo quebra o arquivo em X linhas que você decide. Assim fica mais fácil analisar.

Código: Selecionar tudo
#!/bin/sh
# trimlog.sh
filesize=`cat $1|wc -l`
trim=`expr $filesize - $2`
if [ $trim -gt 0 ] ; then
   sed "1,$trim d" $1 > /tmp/$1
   # mv /tmp/$1 $1 # (Descomente esta linha se quiser substituir o arquivo atual)
   echo $1 trimmed by $trim lines
fi


Modo de uso:

Código: Selecionar tudo
# cd /var/log
# trimlog.sh messages 10000


No exemplo acima, o script irá retirar as primeiras 10000 linhas do arquivo e salvar no arquivo /tmp/messages.

É isto.

Abraços

NoComments
NoComments
Administrador
 
Mensagens: 106
Data de registro: Sáb Jun 23, 2007 3:14 am

Retornar para Dicas Gerais

Quem está online

Usuários neste fórum: Nenhum usuário registrado on-line e 1 visitante

cron