better loging exceptions by keeping the orginal error (otherwise it's swallowed and hard to debug precisely)