code: def _report_exception(self, msg, frame_skip=2):
          
          # We use a hash to see if the message is being repeated.
          msg_hash = hash(msg)
          if msg_hash in self._report_exception_cache:
              return
          self._report_exception_cache.add(msg_hash)
  
          # If we just report the error the traceback will end in the try
          # except block that we are calling from.
          # We want to show the traceback originating from the module that
          # called the Py3 method so get the correct error frame and pass this
          # along.
          error_frame = sys._getframe(0)
          while frame_skip:
              error_frame = error_frame.f_back
              frame_skip -= 1
          self._py3_wrapper.report_exception(
              msg, notify_user=False, error_frame=error_frame
          )
docs: THIS IS PRIVATE AND UNSUPPORTED.
          logs an exception that occurs inside of a Py3 method.  We only log the
          exception once to prevent spamming the logs and we do not notify the
          user.
  
          frame_skip is used to change the place in the code that the error is
          reported as coming from.  We want to show it as coming from the
          py3status module where the Py3 method was called.