使用 OnsDLQMessageResendById 重发指定 Message ID 的死信消息,使该消息能够被 Consumer 再次消费。

本接口让死信消息复活,让消息能够被 Consumer 再消费一次。

死信消息已达最大重试次数,若重发后再次消费失败,则死信队列中将增加一条 Message ID 相同的消息,可通过控制台死信队列的查询页面或者管控 API 查看该结果。您可通过同一 Message ID 的消息出现次数判断重发后依然消费失败的次数。

注意
  • 由于死信消息是经过重试逻辑依然消费失败的消息,通常意味着消费逻辑可能存在问题,故请先查明多次消费失败的原因,再调用本接口重新发送。
  • 当前消息队列 Apache RocketMQ 版(简称 RocketMQ)不管理死信重发的状态,重发后消费成功的消息不会从死信队列中移除。需自行管理、判断消息是否需要重发。避免多次无意义地重发,从而造成重复消费。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String OnsDLQMessageResendById

系统规定参数。取值:OnsDLQMessageResendById。

GroupId String GID_test_group_id

需查询的消费端 Group ID。

InstanceId String MQ_INST_111111111111_DOxxxxxx

需查询消息所对应的实例 ID。

MsgId String 1E0578FE110F18B4AAC235C0C******

需查询的消息的 ID,即 Message ID。

返回数据

名称 类型 示例值 描述
Data List 1E0578FE110F18B4AAC235C0C******

消息 ID,即 Message ID。

RequestId String D94CC769-4DC3-4690-A868-9D0631B*****

为公共参数,每个请求的 ID 都是唯一的。

示例

请求示例

http(s)://[Endpoint]/?Action=OnsDLQMessageResendById
&GroupId=GID_test_group_id
&InstanceId=MQ_INST_111111111111_DOxxxxxx
&MsgId=1E0578FE110F18B4AAC235C0C******
&<公共请求参数>

正常返回示例

XML 格式

<OnsDLQMessageResendByIdResponse>
  <Data>1E0578FE110F18B4AAC235C0C******</Data>
  <RequestId>D94CC769-4DC3-4690-A868-9D0631B*****</RequestId>
</OnsDLQMessageResendByIdResponse>

JSON 格式

{
  "Data": [
    "1E0578FE110F18B4AAC235C0C******"
  ],
  "RequestId": "D94CC769-4DC3-4690-A868-9D0631B*****"
}

错误码

访问错误中心查看更多错误码。