Actually guys, I just realized a huge flaw, regardless of the the debug messages being on or off.
The flaw is having the server do exhaustion checks on a fixed frequency (such as every 50 seconds), because the debuffs a player incurs from reaching certain levels of exhaustion are on that same, fixed, 50 second frequency as the "neary exhausted" message. Then after two more fixed, 50 second exhaustion checks pass with the character running, a player can see their debuffs get even worse.
With that information, a player can still easily figure out the server's fixed frequency using a stopwatch, and from then on, easily circumvent the exhaustion checks, and run for an infinite amount of time if they want to.
It would be more work than just having the debug messages tell players the exhaustion checks each step of the way though. That's for sure.
Just saying, randomized checks would be the only sure-fire way to stop any exploitation. Though, like I said earlier, maybe I just need to accept that, not exploit, and trust that others won't exploit.