Bem, acho que no monitoramento geral é uma ótima idéia. A reinicialização automática, no entanto, precisa ser implementada com cuidado. Dependendo da sua aplicação, provavelmente existem serviços que precisam ser iniciados em uma determinada ordem. Essa lógica precisa ser incorporada em suas rotinas de reinicialização automática para que as coisas apareçam e sejam encerradas em um estado saudável. Além disso, incluído na sua lógica precisa ser algum limite no número de vezes que ele tentará e reiniciará um serviço em um determinado período de tempo. Se algo faz um serviço falhar de tal forma que a intervenção manual seja necessária, você não quer que o monitor tente constantemente reiniciar as coisas a cada 10 segundos.
Em suma, se esta é ou não uma boa ideia depende completamente dos seus requisitos e do seu ambiente.