Arrancar vServer cuando cae

vForum público de la plataforma de desarrollo Velneo

Moderador: vCoaches

Responder
Avatar de Usuario
DomK
vLeader
vLeader
Mensajes: 1901
Registrado: 04 Oct 2005, 14:50
Ubicación: Valencia - Valencia - España (39.4598,-0.4127)
Contactar:

Arrancar vServer cuando cae

Mensaje por DomK » 15 Oct 2013, 15:35

Buenas tardes,

Me han comentado que existe una aplicación que revisa el estado de vServer y que cuando este cae, automáticamente lo levanta de nuevo.

He buscado por todas partes pero no la he encontrado, aunque los viejos del lugar recuerdan que hace tiempo algo se comentó por el foro.

Cualquier ayuda o indicación será muy apreciada.

Un saludo,
DomK
"La simplicidad es la sofisticación definitiva"

Avatar de Usuario
weekend
vAdviser
vAdviser
Mensajes: 487
Registrado: 03 Nov 2007, 12:24
Ubicación: Madrid, España

Re: Arrancar vServer cuando cae

Mensaje por weekend » 15 Oct 2013, 20:01

Buenas tardes Domk, un placer leerte por aqui de nuevo

Yo lo que tengo es una tarea programada que lanza un bat, que a su vez lanza un vbs
que comprueba si esta levantado el servicio y sino lo levanta. Quizas pueda servirte

El codigo del bat es este

Código: Seleccionar todo

c:\winnt\start.vbs vserver "C:\Archivos de programa\Velneo\vServer\vMotor.exe" 3 "C:\Archivos de programa\Velneo\vServer\"
Y el de start.vbs es este

Código: Seleccionar todo

'Variables 

On Error Resume Next 

'Recoger parámetros 
Set objArgs = WScript.Arguments 
strComputer = objArgs(0) 'IP o Nombre DNS del equipo 
strApp = objArgs(1) 'Nombre de la aplicación 
intShow = objArgs(2) 'Modo de ejecución. 1=Normal 2=Minimizado 3=Maximizado 
strPath = objArgs(3) 'Directorio de inicio 
intProcessID = -1 

'Comprobar equipo previamente 
Dim WshShell, oExec 

'Crear objetos 
Set objServices = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") 
Set objProcessStartup = objServices.Get("Win32_ProcessStartup") 
Set objProcess = objServices.Get("Win32_Process") 

'Iniciar propiedades del proceso 
Set objConfig = objProcessStartup.SpawnInstance_ 
objConfig.ShowWindow = intShow '1=SW_NORMAL, 2=SW_SHOWMINIMIZED, 3=SW_SHOWMAXIMIZED 

'Crear el proceso 
iRet = objProcess.Create(strApp, strPath, objConfig, intProcessID) 

'Devolver Errorlevel 
'WScript.Echo "ProcessID: " & intProcessID & " - Errorlevel: " & iRet 
WScript.Quit (iRet) '0=Ejecución satisfactoria, >0 Error. Mirar documentación WMI 
No recuerdo de donde lo saque, si fue de este foro que , por favor, el autor no se ofenda
por no mencionarlo
Saludos

El hardware es lo que puedes patear, y el software, lo que puedes maldecir.
weekend40@gmail.com

Avatar de Usuario
DomK
vLeader
vLeader
Mensajes: 1901
Registrado: 04 Oct 2005, 14:50
Ubicación: Valencia - Valencia - España (39.4598,-0.4127)
Contactar:

Re: Arrancar vServer cuando cae

Mensaje por DomK » 16 Oct 2013, 15:49

Muchas gracias weekend!!

Lo pruebo y te digo si me sirve.

Un saludo,
DomK
"La simplicidad es la sofisticación definitiva"

Avatar de Usuario
DomK
vLeader
vLeader
Mensajes: 1901
Registrado: 04 Oct 2005, 14:50
Ubicación: Valencia - Valencia - España (39.4598,-0.4127)
Contactar:

Re: Arrancar vServer cuando cae

Mensaje por DomK » 17 Oct 2013, 17:40

Hola weekend,

Buscando la máxima sencillez he conseguido reducirlo a un bat:

Código: Seleccionar todo

:Ocultar
@echo off
title=Comprobador
 
 
:Comprobar
tasklist /FI "IMAGENAME eq VMotor.exe" | findstr PID >nul
IF %ERRORLEVEL% LEQ 0 Ping -n 30 localhost >nul & goto :Comprobar
IF NOT %ERRORLEVEL% LEQ 0 start /b "" "C:\Archivos de programa\Atica\Velazquez\VMotor.exe" & Ping -n 30 localhost >nul & goto :Comprobar
Este bat mira cada 30 segundos si VMotor.exe está en la lista de tareas de windows y si no está lo arranca.

Gracias por la inspiración.

Un saludo,
DomK
"La simplicidad es la sofisticación definitiva"

Juan Carlos Salom
vMate
vMate
Mensajes: 30
Registrado: 22 Sep 2005, 09:54
Ubicación: Mallorca - España

Re: Arrancar vServer cuando cae

Mensaje por Juan Carlos Salom » 21 Oct 2013, 17:19

Hola Weekend y Domk, gusto en veros de nuevo.

Mira que mi servidor Web esta cayendo desde hace como un mes. Lo hace cuando quiere unas 4 veces al día y sin un comportamiento rutinario, no he podido saber el motivo.

Coloqué el bat que nos aporta Domk y efectivamente si cierro el VMotor, el bat lo vuelve a iniciar.

Gracias a los dos :D

La pregunta del millón es: ¿Porque se cierra? (Sale el cuadrito de windows XP que dice: VMotor.ese ha detectado un problema y debe cerrarse"

Si alguien me da una pista de por donde debo mirar, lo agradecería un montón.
Juan Carlos Salom
"Creo mucho en que la suerte ayuda, y entre más me esfuerzo más me ayuda."

Avatar de Usuario
Adelo Herrero
vAdviser
vAdviser
Mensajes: 711
Registrado: 21 Sep 2005, 14:42
Ubicación: Requena (Valencia) - España - (Lat: 39.490701 * Lon: -1.102329 )
Contactar:

Re: Arrancar vServer cuando cae

Mensaje por Adelo Herrero » 22 Oct 2013, 05:16

Buenos días:

Juan Carlos Salom; yo revisaría lo siguiente:
1.- Demonios: Si los tienes comprueba que no se solapen entre ellos.
2.- Punteros indirectos y actualizaciones mediante estos. Si no están bien definidos pueden tirar el servidor.
3.- Índices, en los que falte algún campo porque lo hayas eliminado de la estructura de la tabla pero no del índice. Esto "cantaría" en el inspector de errores, pero a veces se nos olvida comprobar.

De las tres posibilidades, lo que he visto con más frecuencia es la segunda.

Un saludo.

Juan Carlos Salom
vMate
vMate
Mensajes: 30
Registrado: 22 Sep 2005, 09:54
Ubicación: Mallorca - España

Re: Arrancar vServer cuando cae

Mensaje por Juan Carlos Salom » 22 Oct 2013, 07:44

Gracias Adelo Herrero por tu respuesta.

He revisado fácilmente los puntos 1 y 3, solo tengo un demonio y hace una tarea muy sencilla, y en el caso 3, el inspector de errores no me dice que haya problemas.

Solo me queda estudiar bien los punteros indirectos por si he roto algo sin darme cuenta.

Ayer cambié el ordenador y estuvo unas 5 horas sin molestar, pero al final del día rompió :(

Gracias y ya os contaré como va el tema.
Juan Carlos Salom
"Creo mucho en que la suerte ayuda, y entre más me esfuerzo más me ayuda."

Responder