code: def _start(self):
          
          self._enable_logpersist()
          logcat_file_path = self._configs.output_file_path
          if not logcat_file_path:
              f_name = 'adblog,%s,%s.txt' % (self._ad.model,
                                             self._ad._normalized_serial)
              logcat_file_path = os.path.join(self._ad.log_path, f_name)
          utils.create_dir(os.path.dirname(logcat_file_path))
          cmd = '"%s" -s %s logcat -v threadtime %s >> "%s"' % (
              adb.ADB, self._ad.serial, self._configs.logcat_params,
              logcat_file_path)
          process = utils.start_standing_subprocess(cmd, shell=True)
          self._adb_logcat_process = process
          self.adb_logcat_file_path = logcat_file_path
docs: The actual logic of starting logcat.