Monitorear procesos de programas externo con PERL
Luis Vivero
morenisco en gmail.com
Lun Ene 22 13:07:30 CLST 2007
On 1/22/07, Andrés Ruz Salinas <andres en efusion.tv> wrote:
>
> Hola lista,
>
> Estoy armando un daemon en Perl que se encargue de ejecutar
> "rsync"
> para sincronizar archivos entre el servidor y unas máquinas cliente. La
> parte que más me interesa de esta tarea es poder monitorear el inicio y
> fin
> del proceso relacionado con "rsync" de forma que yo sepa cuando termina la
> transferencia de el(los) archivo(s) y recuperar los mensajes que este
> programa envía para saber si todo terminó bien o no y según eso realizar
> otras tareas.
[...]
Holas, yo he hecho cosas asi con ps, por jemplo, esto es con el servicio
sshd:
root en movexzone:/home/morenisco# ps -fea | grep "/usr/sbin/sshd" | awk
'{print $8}' | head -1
/usr/sbin/sshd
root en movexzone:/home/morenisco# /etc/init.d/ssh stop
* Stopping OpenBSD Secure Shell
server...
[ ok ]
root en movexzone:/home/morenisco#
root en movexzone:/home/morenisco# ps -fea | grep "/usr/sbin/sshd" | awk
'{print $8}' | head -1
grep
root en movexzone:/home/morenisco# /etc/init.d/ssh start
* Starting OpenBSD Secure Shell
server...
[ ok ]
root en movexzone:/home/morenisco# ps -fea | grep "/usr/sbin/sshd" | awk
'{print $8}' | head -1
/usr/sbin/sshd
En las lineas de arriba, si el servicio esta corriendo, la salida del
comando es /usr/sbin/sshd , de lo contrario es grep. Si le pones un
if...podrias poner una variable que infique el estado.
Saludos.
Morenisco.
Más información sobre la lista de distribución Linux