The term "registration fails" can refer to several things.
The first is that the registration file is invalid. Check the system log to determine if it is invalid. The file will also be renamed and left in the registration directory so the client may inspect the file.
Second, the registration may have the wrong permissions on the recovery script or the process may not be able to be authenticated. In this case, registration will fail a message will be logged and the registration file will be removed.
The third case is if a heartbeat written to the FIFO is never received by the daemon. In this case, it could mean that the daemon is not running or there are too many applications such that it needs longer time to process the initial registration. This case is not something that the client should definitely terminate for unless it *must* be monitored when it initially starts. In this case, the client should confirm that the daemon is indeed running and try again.