def get_checkpoint_snapshot(self):
        """Fetch snapshot hash from checkpoint file.

        Returns:
            List: hash_list
        """
        try:
            __method_name = inspect.currentframe().f_code.co_name
            checkpoint = self.state.get()
            if checkpoint:
                checkpoint = json.loads(checkpoint)
                checkpoint = checkpoint.get("snapshot")
                self.applogger.info(
                    "{}(method={}) : {} : Checkpoint list fetched successfully. checkpoint={}".format(
                        consts.LOGS_STARTS_WITH,
                        __method_name,
                        self.function_name,
                        checkpoint,
                    )
                )
            else:
                checkpoint = []
                self.state.post(json.dumps({"snapshot": checkpoint}))
                self.applogger.info(
                    "{}(method={}) : {} : Checkpoint list not found. Created new checkpoint list.".format(
                        consts.LOGS_STARTS_WITH, __method_name, self.function_name
                    )
                )
            return checkpoint
        except Exception as ex:
            self.applogger.error(
                '{}(method={}) : {} : Unexpected error while getting checkpoint list: err="{}"'.format(
                    consts.LOGS_STARTS_WITH, __method_name, self.function_name, str(ex)
                )
            )
            raise Exception(ex)
Fetch snapshot hash from checkpoint file.

        Returns:
            List: hash_list
        
Solutions/Vectra XDR/Data Connectors/VectraDataConnector/SharedCode/collector.py