[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Tratamento de erros
From: |
Marcelo Salhab Brogliato |
Subject: |
Tratamento de erros |
Date: |
Thu, 28 Jan 2010 09:51:43 -0200 |
Amigos,
tenho um script bem simples que faz algumas queries no banco de dados e
atualiza uns arquivos.
Problema: O banco de dados cai e o script sobrescreve os arquivos em branco!
O banco de dados cair pode ser por vários motivos, entre eles dar timeout
devido a problemas no reverso do DNS.
(Que foi meu problema de hoje...)
Mas eu pensei e não encontrei uma boa solução para evitar que isso aconteça.
Uma idéia inicial foi: guardar a saida do mysql em uma variável, verificar o
$? e somente então alterar os arquivos.
Mas não me pareceu uma idéia muito simples.
Sugestões?
abraços,
Marcelo
==========
= script =
==========
_livres=/etc/squid/acls/ips_acesso_livre
_restritos=/etc/squid/acls/ips_acesso_restrito
_bloqueados=/etc/squid/acls/ips_acesso_bloqueado
function sql
{
mysql -B -N -h$_pan_mysql -u$_pan_user -p$_pan_pwd $_pan_db -e"$1"
}
sql "SELECT ip FROM TbNetHosts2 WHERE type=0" > $_bloqueados
sql "SELECT ip FROM TbNetHosts2 WHERE type=1" > $_restritos
sql "SELECT ip FROM TbNetHosts2 WHERE type=2" > $_livres
chown squid:squid $_bloqueados $_restritos $_livres
/etc/init.d/squid reload
[As partes desta mensagem que não continham texto foram removidas]
- Tratamento de erros,
Marcelo Salhab Brogliato <=