Windows service - self healing options?

On occasion, an event is logged that says the following: "ejabberd: Erlang machine voluntarily stopped. The service is not restarted as OnFail is set to ignore." Usually we are alerted by a user that the service stopped, but sometimes it can be down for a long time before someone notifies us. Are there service flags that we can set to automatically restart if something stops the ejabberd/erlsrv.exe service? We are using the binary-created Windows service in a Windows 2003 Server environment, not the desktop start link.

Try to set OnFail=restart

I found an option in Erlang/OTP, but it needs to be tested before included in the next installers. I've reported the option, in case it is useful, in Define the Windows service OnFail=restart.

In your case, maybe you can enable that option in your ejabberd's Windows service. if you find where the program erlsrv.exe is installed, you could run it with this command line to set the option:

erlsrv set ejabberd0123456 -onfail restart

You need to replace ejabberd0123456 with the Windows service name in your installation.

Notice that I didn't try that. I just read the documentation :) So, if you try this, please report if it helps or not.

Am trying this option

I stopped, then restarted the service with the using the "-onfail restart" you mentioned, and also added it to the startup parameters in Windows services for when the server restarts. The jabber service has not otherwise stopped recently, but when it does I will report back on the success/failure for future reference. Thanks for your reply!

Syndicate content