private void OnExceptionCaught(Exception cause)
 {
     try
     {
         OutboundHandler.ExceptionCaught(_outboundCtx, cause);
     }
     catch (Exception error)
     {
         if (Logger.DebugEnabled)
         {
             Logger.FreedThreadLocalBufferFromThreadFull(error, cause);
         }
         else if (Logger.WarnEnabled)
         {
             Logger.FreedThreadLocalBufferFromThread(error, cause);
         }
     }
 }