Refactor dispatch to log any exceptions during send()

Also fix up any calls to logger.exception. It takes a text string
and implictly captures the exception with sys.exc_info().