From fdcf19a6c0f4486f683f0fe4b8b2a81481bd115b Mon Sep 17 00:00:00 2001 From: BrunoMine Date: Tue, 26 Jul 2016 13:21:31 -0300 Subject: [PATCH] =?UTF-8?q?Ajustes=20de=20valida=C3=A7=C3=A3o=20de=20dados?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- anticrash.lua | 69 ++++++++++++++++++++++++++++++++++++--------------- anticrash.sh | 29 +++++++++++++--------- 2 files changed, 66 insertions(+), 32 deletions(-) diff --git a/anticrash.lua b/anticrash.lua index 4ea8af2..bc779ef 100644 --- a/anticrash.lua +++ b/anticrash.lua @@ -11,6 +11,9 @@ local debug_path = io.popen"pwd":read"*all" debug_path = string.split(debug_path, "\n") debug_path = debug_path[1] +--local bin_path = io.popen"locate bin/minetest":read"*all" +--minetest.after(3, minetest.chat_send_all, dump(bin_path)) + -- Validar dados --[[ Verificar a existencia de dados e @@ -33,13 +36,13 @@ local dados = { { "interval", "300"}, -- Sistema de Email { "status_email", "false"}, - { "from_email", "gestorminemacro@gmail.com"}, - { "from_login", "gestorminemacro@gmail.com"}, - { "from_senha", ""}, - { "from_smtp", "smtp.gmail.com"}, - { "from_smtp_port", "587"}, + { "from_email", "-"}, + { "from_login", "-"}, + --{ "from_senha", ""}, + { "from_smtp", "-"}, + { "from_smtp_port", "-"}, { "from_subject", "Servidor reiniciado!"}, - { "to_email", "borgesdossantosbruno@gmail.com"}, + { "to_email", "-"}, -- Sistema de Backups { "status_backup", "false"}, { "debug_path", debug_path}, @@ -53,23 +56,49 @@ end -- Iniciar anticrash gestor.anticrash.iniciar = function() + local comando_abertura = gestor.bd:pegar("anticrash", "comando_abertura") or "" + local processo = gestor.bd:pegar("anticrash", "processo") or "" + local interval = gestor.bd:pegar("anticrash", "interval") or "" + local from_email = gestor.bd:pegar("anticrash", "from_email") or "" + local from_senha = gestor.bd:pegar("anticrash", "from_senha") or "" + local from_smtp = gestor.bd:pegar("anticrash", "from_smtp") or "" + local from_subject = gestor.bd:pegar("anticrash", "from_subject") or "" + local from_text = gestor.bd:pegar("anticrash", "from_text") or "" + local to_email = gestor.bd:pegar("anticrash", "to_email") or "" + local world_path = gestor.bd:pegar("anticrash", "world_path") or "" + local debug_path = gestor.bd:pegar("anticrash", "debug_path") or "" + + -- Verificar sistema de email + if gestor.bd:pegar("anticrash", "status_email") == "false" then + from_email = "" + end + + -- Verificar sistema de backup + if gestor.bd:pegar("anticrash", "status_backup") == "false" then + debug_path = "" + end + + -- Verificar dados obrigatorios + if interval == "" or processo == "" or comando_abertura == "" then + return false + end + local comando = "./anticrash " - -- ..comando_abertura.." " -- 1 - -- ..processo.." " -- 2 - -- ..interval.." " -- 3 - -- ..status_email.." " -- 4 - -- ..from_email.." " -- 5 - -- ..from_login.." " -- 6 - -- ..from_senha.." " -- 7 - -- ..from_smtp.." " -- 8 - -- ..from_smtp_port.." " -- 9 - -- ..from_subject.." " -- 10 - -- ..to_email.." " -- 11 - -- ..status_backup.." " -- 12 - -- ..debug_path.." " -- 13 - -- ..world_path.." " -- 14 + .."\""..interval.."\" " -- 1 (interval) + .."\""..processo.."\" " -- 2 (processo) + .."\""..comando_abertura.."\" " -- 3 (comando_abertura) + .."\""..debug_path.."\" " -- 4 (debug_path) + .."\""..world_path.."\" " -- 5 (world_path) + .."\""..from_email.."\" " -- 6 (from_email) + .."\""..from_login.."\" " -- 7 (from_login) + .."\""..from_senha.."\" " -- 8 (from_senha) + .."\""..from_smtp.."\" " -- 9 (from_smtp) + .."\""..from_subject.."\" " -- 10 (from_subject) + .."\""..from_text.."\" " -- 11 (from_text) + .."\""..to_email.."\" " -- 12 (to_email) .."&" os.execute(comando) + return true end diff --git a/anticrash.sh b/anticrash.sh index 49d1f0a..41489a3 100755 --- a/anticrash.sh +++ b/anticrash.sh @@ -11,30 +11,30 @@ ##################################################### # Intervalo de verificação -interval=300 #PADRÃO: 300 segundos (5 minutos) +interval=$1 #PADRÃO: 300 segundos (5 minutos) # Nome do processo -processo="minetest --server" +processo=$2 #"minetest --server" # Comando de abertura do servidor # Use o comando '~$ minetest --help' # para saber os parâmetros válidos -comando_abertura="./../../bin/minetest --server" +comando_abertura=$3 #"./../../bin/minetest --server" # Caminho de depuração (debug.txt) -debug_path="./../../bin" +debug_path=$4 "./../../bin" # Caminho do diretório do mundo -world_path="./../../worlds/minemacro" +world_path=$5 "./../../worlds/minemacro" # Variáveis de Email -from_email="gestorminemacro@gmail.com" # Endereço de origem que envia email -from_login="gestorminemacro@gmail.com" # Loggin do email de origem -from_senha="minemacro123" # Senha do email de origem -from_smtp="smtp.gmail.com:587" # Protocolo de SMTP do seu servidor de email -from_subject="[$(date '+%Y-%m-%d %H:%M:%S')] Servidor reiniciado! " # Titulo do email que será enviado -to_email="borgesdossantosbruno@gmail.com" # Endereço de destinatário que recebe email - +from_email=$6 #"gestorminemacro@gmail.com" # Endereço de origem que envia email +from_login=$7 #"gestorminemacro@gmail.com" # Loggin do email de origem +from_senha=$8 #"minemacro123" # Senha do email de origem +from_smtp=$9 #"smtp.gmail.com:587" # Protocolo de SMTP do seu servidor de email +from_subject="[$(date '+%Y-%m-%d %H:%M:%S')] "$10 # Titulo do email que será enviado +from_text=$11 #"O servidor saiu" # Texto do corpo da mensagem de email enviada +to_email=$12 #"borgesdossantosbruno@gmail.com" # Endereço de destinatário que recebe email echo -e "[\033[01;32m$(date '+%Y-%m-%d %H:%M:%S')\033[00;00m] Iniciando verificação de processo '$processo' a cada $interval segundos..." @@ -50,8 +50,13 @@ while [ true == true ]; do #7z a "$world_path ($quando).7z" "$world_path" tar -czf "$world_path($quando).tar.gz" "$world_path" +<<<<<<< .mine + echo -e "[\033[01;32m$quando\033[00;00m] Enviando relatório para '$to_email'..." + sendemail -s "$from_smtp" -xu "$from_login" -xp "$from_senha" -f "$from_email" -t "$to_email" -u "$from_subject" -m "$from_text" -o message-charset=UTF-8 -a "$debug_path/debug ($quando).txt" +======= echo -e "[\033[01;32m$quando\033[00;00m] Enviando relatório para '$to_email'..." sendemail -s "$from_smtp" -xu "$from_login" -xp "$from_senha" -f "$from_email" -t "$to_email" -u "$from_subject" -m "O servidor Minemacro crashou" -o message-charset=UTF-8 -a "$debug_path/debug ($quando).txt" +>>>>>>> .r9 echo -e "[\033[01;32m$quando\033[00;00m] Reativando servidor de minetest ..." #$comando_abertura &