Service Protector 8.0 was released on November 9 2021. Here are the most significant changes in this new version:
Easy to use Sanity Checks will help you keep your service running 24/7
Are you struggling with a Windows Service that says it’s running but is actually dead on its feet?
How about a network server that is supposed to accept incoming TCP/IP requests but is suddenly refusing all network connections?
Or a service that is hung and has stopped updating a log file?
Those nuanced situations — where the service is running but not actually working — can torment you and your customers who rely on the service!
Fortunately, Service Protector’s new sanity check feature is here to help.
What is a sanity check?
A sanity check is a “helper” utility that Service Protector runs to detect if a service is not functioning as expected. And whenever a sanity check detects a problem, Service Protector knows that it’s time to restart the service.
Service Protector version 8.0 supports four powerful sanity checks. They can:
Test basic TCP/IP network connectivity;
Check that a log file was recently updated;
Confirm that a web server is responding properly;
Run your own custom program to detect any kind of problem you like.
The user manual describes how to configure a sanity check. For now, let’s review a real-world scenario where a sanity check can improve reliability and uptime.
Protecting the Apache Windows Service with a sanity check
Apache is the world’s premier web server. It installs as a Windows Service, to start at boot and remain running all the time:
This step-by-step guide show how to bulletproof the Apache Windows Service with Service Protector.
Even though Apache is very reliable, customers have reported situations where the service is running but the web server refuses to serve pages. In those cases, attempting to visit a URL fails with a timeout or protocol error.
With Service Protector 8, we can deploy a sanity check to watch out for that. Here’s how:
Start by editing the Apache entry in Service Protector.
Switch to the Monitor tab. Check the Whenever it fails a periodic sanity check box and click the Set button:
In the Add Sanity Check window, choose the Check that a web server is responding properly entry and click Next:
Enter the web address you would like to monitor. If this URL is inaccessible, Service Protector will recycle Apache.
Since Apache is running on your machine, the default localhost URL will likely work:
Note that you can click Check now to run an interactive test and ensure that you have entered the correct URL.
At this point, specify how often Service Protector should fetch the URL. Every 5 minutes is enough for us:
Click Next to move on.
Finally, review the summary and click Add to record your new sanity check:
And with that sanity check in place, Service Protector will attempt to fetch the URL every 5 minutes.
If the page comes back normally, nothing will happen.
But if there is a problem fetching the page, Service Protector will quickly stop and restart the Apache Windows Service to resume normal web services.
In effect, we’ve capped Apache’s downtime at five minutes!
Service Protector is fully compatible with Windows 11
To date, Service Protector 8 has performed very well. We have detected zero incompatibilities. In fact, our testing services (including MySQL, Print Spooler and our home-grown simulators) have performed as well as they did under Windows 10.
Other fixes & improvements
We’ve improved internal logging. As a result, we’ll be able to diagnose problems and resolve thorny issues quicker.
“splwow64.exe” processes, which are spawned to aid in printing, are terminated when launched from a Windows Service.
As usual, please review the release notes for the full list of features, fixes and improvements included in Service Protector version 8.
Upgrading to Service Protector 8
If you purchased Service Protector version 7 (after January 2021), you can upgrade to version 8 for free. Simply download and install over your existing installation to preserve your existing services and all settings. For instance, your registration code will continue to work.
If you bought Service Protector version 6 or earlier (before January 2021), you will need to upgrade to use version 8. Please buy upgrades here — at a 50% discount.
See the complete upgrade policy for more details.