[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RES: [shell-script] Script para automatizar atualização do AWStats
From: |
Fabrício Carvalho Ferreira |
Subject: |
RES: [shell-script] Script para automatizar atualização do AWStats |
Date: |
Mon, 5 Sep 2005 14:14:30 -0300 |
Pô se ajuda!
Valeu!!
_____
De: address@hidden [mailto:address@hidden]
Em nome de MrBiTs
Enviada em: segunda-feira, 5 de setembro de 2005 14:14
Para: address@hidden
Assunto: RE: [shell-script] Script para automatizar atualização do AWStats
Nem é tão grande... Podemos fazer por aqui.
A lógica da coisa é a seguinte:
O script awstats.sh copia os logs do servidor IIS, que gerencia alguns
sites. A partir de um arquivo sites.txt, o nome dos websites é lido e o
diretório de log de cada um deles é passado como parametro para uma conexão
FTP que copia os logs de ontem para uma estrutura abaixo do diretório de
logs do apache. Então, a ferramenta de processamento do awstats é chamada,
gerando um log para o processamento e enviando-o por e-mail.
1) Conteúdo do arquivo sites.txt
www.site1.com.br^W3SVC286543210
www.site2.com.br^W3SVC286543210
www.site3.com.br^W3SVC286543210
2) Script awstats.sh
#!/bin/bash
IP=192.168.0.10
USER=iislogs
PASS=senhadoiislogs
DATE=`date +%y%m%d -d yesterday` > /var/log/awstats.log
LOGFILE="ex$DATE.log"
while read LINHA ; do
HOST=`echo $LINHA | cut -d "^" -f 1`
DIR=`echo $LINHA | cut -d "^" -f 2`
LOGDIR=$DIR
LOCAL=/usr/apache/logs/$HOST
echo "`date +%d/%m/%Y\ %H:%M:%S` - Iniciando Copia de Logs de $HOST"
>> /var/log/awstats.log
cd $LOCAL || {
mkdir $LOCAL
cd $LOCAL
}
if [ $? -gt 0 ] ; then
echo "`date +%d/%m/%Y\ %H:%M:%S` - Erro acessando diretorio
$LOCAL" >> /var/log/awstats.log
exit
fi
ftp -n $IP <<_EOT_
user $USER $PASS
cd $LOGDIR
get $LOGFILE
bye
_EOT_
done < /usr/local/bin/sites.txt
echo "`date +%d/%m/%Y\ %H:%M:%S` - Final de Copia de Logs" >> >
/var/log/awstats.log
/usr/local/awstats/tools/awstats_updateall.pl now >> /var/log/awstats.log
2>&1 ;
/usr/local/bin/monitora.sh address@hidden /var/log/awstats.log
3) monitora.sh
#!/bin/bash
Usage () {
echo "Uso: $(basename $0) email arquivo"
}
if [ $# -ne 2 ] ; then
Usage
exit
fi
MAILADM=$1
FILENAME=$2
metasend -e "7bit" -s "Monitoracao de Processos: $FILENAME" -t "$MAILADM" -F
address@hidden -b -m text/plain -f $FILENAME >/dev/null 2>&1
Acho que isso já te ajuda bastante.
------------------------------------------
http://www.mrbits.com.br/
"There is still more Unix-nature in one
line of shell script than there is in ten
billion lines of C"
Master Foo - Sh-bng Province - 530 B.C.
"Programar em shell scritp é a coisa mais gostosa que você pode fazer
vestido"
Julio C. Neves - 10/08/2005
---------------------------------------------------------------------
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
---------------------------------------------------------------------
Yahoo! Grupos, um serviço oferecido por:
PUBLICIDADE
<http://br.rd.yahoo.com/SIG=12fndl8gf/M=365837.7000707.7924794.2369893/D=brc
lubs/S=2137111254:HM/Y=BR/EXP=1125947366/A=2950750/R=2/id=noscript/SIG=10tif
t5qr/*http://br.movies.yahoo.com/>
_____
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
<mailto:address@hidden?subject=Unsubscribe>
* O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
Serviço do Yahoo! <http://br.yahoo.com/info/utos.html> .
[As partes desta mensagem que não continham texto foram removidas]
- Re: [shell-script] Envio de email vi telnet?, (continued)
- Re: [shell-script] Envio de email vi telnet?, Marco Sinhoreli, 2005/09/02
- Re: [shell-script] Envio de email vi telnet?, Edimar Fardim, 2005/09/05
- Re: [shell-script] Envio de email vi telnet?, Tiago Barcellos Peczenyj, 2005/09/05
- Re: [shell-script] Envio de email vi telnet?, Edimar Fardim, 2005/09/05
- Re: [shell-script] Envio de email vi telnet?, Eliphas Levy Theodoro, 2005/09/05
- Script para automatizar atualização do AWStats, Fabrício Carvalho Ferreira, 2005/09/05
- Re: [shell-script] Script para automatizar atualização do AWStats, Tiago Barcellos Peczenyj, 2005/09/05
- RE: [shell-script] Script para automatizar atualização do AWStats, MrBiTs, 2005/09/05
- RES: [shell-script] Script para automatizar atualização do AWStats, Fabrício Carvalho Ferreira, 2005/09/05
- RE: [shell-script] Script para automatizar atualização do AWStats, MrBiTs, 2005/09/05
- RES: [shell-script] Script para automatizar atualização do AWStats,
Fabrício Carvalho Ferreira <=
- RE: [shell-script] Script para automatizar atualização do AWStats, MrBiTs, 2005/09/05