all exceptions have __class__.__name__, not all have __name__

the previous logging of errors raised an `AttributeError`, at least on `ValueError`s, because they don't have a `__name__` attribute.