Note that if you are writing commercial software and you are not using EurekaLog or similar tools, you are really missing the best way to identify WHERE your apps fail, when they fail.
Usually, that is a when, and not an if - and EL gives you full insight into where something did not go according to plan in your code.
You still have to come up with the why yourself 🙂