]> git.llucax.com Git - mecon/yatta.git/blobdiff - script/servidores/YATTA_Server.php
Se agrego la interfaz para que los usuarios puedan detener procesos.
[mecon/yatta.git] / script / servidores / YATTA_Server.php
index 40d38d2c565dad117cb8f8f71b3a796cbd01ae39..55d185d57d37eaef65fa420d669f5fbc4773636d 100755 (executable)
@@ -65,6 +65,7 @@ if (DB::isError($db)) {
 
 //CREO LOS OBJETOS NECESARIOS {{{
 $CONTROLADOR =& new YATTA_Controlador;
 
 //CREO LOS OBJETOS NECESARIOS {{{
 $CONTROLADOR =& new YATTA_Controlador;
+$SERVIDOR =& new YATTA_Servidor;
 //}}}
 
 //OBTENGO LOS DATOS DEL SERVER {{{
 //}}}
 
 //OBTENGO LOS DATOS DEL SERVER {{{
@@ -89,6 +90,8 @@ while (1) {
 
     //Si hay un proceso lo lanzo {{{
     if (@$proceso) {
 
     //Si hay un proceso lo lanzo {{{
     if (@$proceso) {
+        
+        yatta_log ('Hay un nuevo proceso. Se forkea');
         $pid = pcntl_fork();
 
         //FORK ERROR {{{
         $pid = pcntl_fork();
 
         //FORK ERROR {{{
@@ -104,9 +107,11 @@ while (1) {
 
         //FORK PADRE {{{
         elseif ($pid) {
 
         //FORK PADRE {{{
         elseif ($pid) {
+            yatta_log ('Fork Padre.')
             //Espero a que termine el proceso.
             while (($wapid = pcntl_waitpid ($pid, $status, WNOHANG)) != $pid) {
                 if ($CONTROLADOR->abortar($db, $proceso['id'])) {
             //Espero a que termine el proceso.
             while (($wapid = pcntl_waitpid ($pid, $status, WNOHANG)) != $pid) {
                 if ($CONTROLADOR->abortar($db, $proceso['id'])) {
+                    yatta_log ('Hay que abortar el proceso en ejecucion.');
                     posix_kill($pid, 15); //SIGTERM
                     $CONTROLADOR->terminarProceso($db, $proceso['id'],
                             $YATTA_SERVER['id'], 4);
                     posix_kill($pid, 15); //SIGTERM
                     $CONTROLADOR->terminarProceso($db, $proceso['id'],
                             $YATTA_SERVER['id'], 4);
@@ -118,12 +123,14 @@ while (1) {
         }
         //}}}
 
         }
         //}}}
 
-        //FORk HIJO {{{
+        //FORK HIJO {{{
         else {
         else {
+            yatta_log ('Fork Hijo.')
             require_once $proceso['script'];
             
             if (function_exists('create_process')) {
                 $SCRIPT =& create_process();
             require_once $proceso['script'];
             
             if (function_exists('create_process')) {
                 $SCRIPT =& create_process();
+                yatta_log ('Se instancio el proceso. Se ejecuta el metodo run.');
                 $SCRIPT->run();
             }
             else {
                 $SCRIPT->run();
             }
             else {
@@ -143,6 +150,7 @@ while (1) {
             $CONROLADOR->terminarProceso($db, $proceso['id'],
                     $YATTA_SERVER['id'], $estado, @$SCRIPT->error,
                     @$SCRIPT->archivo, @$SCRIPT->notificar);
             $CONROLADOR->terminarProceso($db, $proceso['id'],
                     $YATTA_SERVER['id'], $estado, @$SCRIPT->error,
                     @$SCRIPT->archivo, @$SCRIPT->notificar);
+            yatta_log ('Finalizo el proceso.')
         }
         //}}}
 
         }
         //}}}
 
@@ -151,7 +159,7 @@ while (1) {
 
     //No hay proceso {{{
     else {
 
     //No hay proceso {{{
     else {
-        yatta_log('No hay procesos asignados a este servidor.');
+        yatta_log ('No hay procesos asignados a este servidor.');
         sleep(60);
     }
     //}}}
         sleep(60);
     }
     //}}}
@@ -160,6 +168,7 @@ while (1) {
 //}}}
 
 //CIERRO EL ARCHIVO DE LOG {{{
 //}}}
 
 //CIERRO EL ARCHIVO DE LOG {{{
+yatta_log ('*************** Finaliza Ejecución ***************');
 fclose ($FH);
 //}}}
 ?>
\ No newline at end of file
 fclose ($FH);
 //}}}
 ?>
\ No newline at end of file