> I believe logging has an 'exception' method which would be a better fit for this method.
You would only like `self.logger.exception(msg, *args)` for the `IceLogger.log_exception()` function, right?

> Also, any reason why these methods are called 'log_exception', 'log_error' etc instead of 'exception', 'error', etc like logger has them named?

No, there's no specific reason. I chose it to keep a consistency with the old logging functions.