If the server is really busy (and about to start to fall over) it could be that the logging will stop while the application is still up (because the server is so busy trying to serve the users that there is no time left for the logs). But you will get notified about that situation because the application will be really slow and you get a warning notification that your application is not working normal.
Furthermore the logging is seperate from the database size. So your database size could be above the allowed space but the logs would still function (we had this situation once, but may be Mendix can elaborate a bit more about the finer details).
Writing a test log message and checking whether it arrived via a Health Microflow seems to match your use case exactly? I wouldn't consider that a dirty solution at all.
Although writing logs to your application's database is generally considered a bad idea, you could log/check for logs on a separate lognode and filter that way? (ie: set the loglevel to NONE for all other lognodes)