from application.common.log import Local from mq_http_sdk.mq_exception import MQExceptionBase def ack_message(log_type, crawler, recv_msgs, consumer): # msg.next_consume_time前若不确认消息消费成功,则消息会被重复消费。 # 消息句柄有时间戳,同一条消息每次消费拿到的都不一样。 try: receipt_handle_list = [msg.receipt_handle for msg in recv_msgs] consumer.ack_message(receipt_handle_list) Local.logger(log_type, crawler).info( f"Ack {len(receipt_handle_list)} Message Succeed.\n" ) except MQExceptionBase as err: Local.logger(log_type, crawler).info(f"Ack Message Fail! Exception:{err}\n")