I'm not sure exactly what the problem is in that there seems, if anything, an over-abundance of logging in the system.
Things like 'query did not return any rows' are, I would argue, pretty self-explanatory. i.e. you tried to select rows that don't exist.
Also, the error logs also seem to dump out an entire mine of information when theres some form of error. I actually think its way too much.
One of the best ways to avoid the need for endless log hunting wi=hile developing is to get into the write an automated test, before writing the routine, mode of operation. In this was you test harnesses catch the output and report in whatever fashion you like.
You can see examples of this using the acs-automated-testing package.
anyway, sorry for wandering off topic slightly, but for my tuppence worth can we leave the logging well alone?
Cheers
Simon