code: def consumer_process_task(processor, log_groups, check_point_tracker):
      
      try:
          check_point = processor.process(log_groups, check_point_tracker)
          check_point_tracker.flush_check()
      except Exception as e:
          return TaskResult(e)
      return ProcessTaskResult(check_point)
docs: return TaskResult if failed,
      return ProcessTaskResult if succeed
      :param processor:
      :param log_groups:
      :param check_point_tracker:
      :return: