I have an app that runs a long batch process where many exceptions could potentially be thrown. If a non-critical exception is thrown during one item in the batch, I want to
Don't catch any exceptions you don't know how to handle safely.
Catching Exception is a particularly bad practice, the only one worse is a catch that doesn't specify any managed exception type (as it would catch non-managed exceptions as well).