Sorry, backseat reviewer again.  There should be a crash report if rex goes down.  Given that the point of this function is to convert an exception into an error tuple shouldn't it be up to the caller to decide if a log message is needed?  The caller may not care if rex is down and choose to ignore this situation.