The problem with failed audits due timeouts - the port is open, but the service is not responsive and cannot provide a piece for audit, because system become unstable and service just too slow to respond (more than 5 minutes).
I have no idea how to detect this except lacks of audits in the logs (usually you should receive not less than 1 audit per hour).
Maybe request the audits history by schedule?
See Node Online status - #4 by Alexey
Also - you can detect with port checker inside the network that service is still running, but not the answer on question - is it available from outside of your network (99.99% cases)?.