2011-10-26 15 views
10

Tengo un sitio web de rieles y un pequeño servidor de minecraft ejecutándose en un linode vps. Estoy ejecutando Minecraft como un servicio personalizado fuera de un servidor de RAM basado en un archivo init.d. Como estoy usando a Dios para monitorear el sitio web de mis raíles, pensé que también lo usaría para Minecraft, pero no parece ser capaz de reconocer el servicio de ninguna manera. Las condiciones no detectan su presencia. : process_running siempre devuelve falso, ya sea que se ejecute o no, y no puede iniciarlo cuando no es así. Para agregar a la confusión: memory_usage y: cpu_usage son siempre cero.Dios no registrará un servicio personalizado en ejecución

Mi archivo /etc/init.d/minecraft está aquí: http://pastie.org/2760483

funciona perfectamente bien, y 'servicio de Minecraft Inicio' y todo eso me da más o menos todo lo que necesito. Mi esperanza era poder ponerlo a dormir automáticamente a través de Dios cada vez que el uso de la CPU aumentaba para priorizar el sitio web. Sin embargo, ninguna de las condiciones de Dios está averiguando qué está pasando con el proceso.

Mi archivo /opt/god/minecraft.god está aquí: http://pastie.org/2760498

Es evidente que la baja en la CPU que es un intento de obtener un aumento de Dios. Pidiendo un golpe, si quieres.

Intentar ejecutar dios de la configuración: sudo dios minecraft.god -c -D

rendimientos:

I [2011-10-26 01:55:55] INFO: Loading minecraft.god 
I [2011-10-26 01:55:55] INFO: Syslog enabled. 
I [2011-10-26 01:55:55] INFO: Using pid file directory: /var/run/god 
I [2011-10-26 01:55:55] INFO: Socket already in use 
I [2011-10-26 01:55:55] INFO: Socket is stale, reopening 
I [2011-10-26 01:55:55] INFO: Started on drbunix:///tmp/god.17165.sock 
I [2011-10-26 01:55:55] INFO: minecraft move 'unmonitored' to 'up' 
I [2011-10-26 01:55:55] INFO: minecraft moved 'unmonitored' to 'up' 
I [2011-10-26 01:55:55] INFO: minecraft [ok] memory within bounds [0kb] (MemoryUsage) 
I [2011-10-26 01:55:55] INFO: minecraft [ok] cpu within bounds [0%%] (CpuUsage) 
+1

Esto suena como un problema de administración del servidor, no un problema de programación. Votando para pasar a serverfault –

Respuesta

1

Por lo que yo puedo decir el problema que tiene es que se No estamos suministrando a dios un pidfile. Como se cita el dios página web:

Si el proceso que está viendo se ejecuta como un demonio (como el mío), que necesita para establecer el atributo pid_file.

Texto completo aquí: http://god.rubyforge.org/

Cuestiones relacionadas