def __init__()

in aliyun/log/consumer/shard_worker.py [0:0]


    def __init__(self, log_client, shard_id, consumer_name, processor, cursor_position, cursor_start_time,
                 max_fetch_log_group_size=1000, executor=None, cursor_end_time=None, query=None):
        self.log_client = log_client
        self.shard_id = shard_id
        self.consumer_name = consumer_name
        self.cursor_position = cursor_position
        self.cursor_start_time = cursor_start_time
        self.cursor_end_time = cursor_end_time or None
        self.processor = processor
        self.checkpoint_tracker = ConsumerCheckpointTracker(self.log_client, self.consumer_name,
                                                            self.shard_id)
        self.executor = executor
        self.max_fetch_log_group_size = max_fetch_log_group_size

        self.consumer_status = ConsumerStatus.INITIALIZING
        self.current_task_exist = False
        self.task_future = None
        self.fetch_data_future = None

        self.next_fetch_cursor = ''
        self.fetch_end_cursor = None

        self.shutdown = False
        self.last_fetch_log_group = None

        self.last_log_error_time = 0
        self.last_fetch_time = 0
        self.last_fetch_count = 0
        self.last_fetch_size = 0
        self.rawLogGroupCountBeforeQuery = 0
        self.rawSizeBeforeQuery = 0
        self.last_success_fetch_time = 0
        self.last_success_fetch_time_with_data = 0
        self.save_last_checkpoint = False
        self.query = query
        self.logger = ShardConsumerWorkerLoggerAdapter(
            logging.getLogger(__name__), {"shard_consumer_worker": self})