use throwable as context.exception