Você está procurando pelo programa daemontools . (Se é isso que você quer dizer com o monitor "Supervisor", fique à vontade para ignorar o resto da minha resposta).
daemontools is a collection of tools for managing UNIX services.
supervise monitors a service. It starts the service and restarts the service if it dies. Setting up a new service is easy: all supervise needs is a directory with a run script that runs the service.
multilog saves error messages to one or more logs. It optionally timestamps each line and, for each log, includes or excludes lines matching specified patterns. It automatically rotates logs to limit the amount of disk space used. If the disk fills up, it pauses and tries again, without losing any data.
É simples, flexível e muito poderoso. A ideia básica é que para cada serviço que você deseja executar, o daemontools inicia um processo filho (chamado supervise
) que, em seguida, inicia seu serviço. supervise
configura as variáveis de ambiente do serviço e uid / gid e, em seguida, mantém o padrão e o padrão do serviço abertos para que ele possa enviar sinais. O serviço não precisa se daemonizar e você não precisa gerenciar arquivos pid. O serviço principal não requer que o root seja executado e você pode colocar os diretórios dos serviços monitorados em qualquer lugar.