Consulta os detalhes de um trace de mensagem com base em um ID de tarefa de consulta especificado.
Observações de uso
Antes de chamar esta operação para consultar os detalhes do trace de uma mensagem, crie uma tarefa de consulta de trace usando o ID ou a chave da mensagem e obtenha o ID da tarefa. Em seguida, chame esta operação para consultar os detalhes do trace da mensagem com base no ID da tarefa. Para criar a tarefa e obter o ID no parâmetro de resposta QueryId, use a operação OnsTraceQueryByMsgId ou OnsTraceQueryByMsgKey.
Tarefas de consulta de trace demandam tempo de processamento. Se você consultar os detalhes imediatamente após criar a tarefa, os resultados podem estar vazios. Nesse caso, tente novamente mais tarde.
Limite de solicitações
Cada conta Alibaba Cloud pode chamar esta operação até 10 vezes por segundo. Se o volume de solicitações atingir esse limite dentro de um segundo, as novas solicitações falharão, o que pode interromper seus serviços. Para mais informações sobre limites de taxa de cada operação, consulte Limites de taxa de API.
Autorização
Por padrão, apenas contas Alibaba Cloud podem chamar esta operação. Usuários do Resource Access Management (RAM) precisam receber as permissões necessárias antes de executá-la. A tabela a seguir descreve as permissões obrigatórias para usuários RAM. Para saber como conceder permissões, consulte Políticas e exemplos.
|
API |
Action |
Resource |
|
OnsTraceGetResult |
mq:QueryInstanceBaseInfo |
acs:mq:::{instanceId} |
Parâmetros de solicitação
|
Parâmetro |
Tipo |
Obrigatório |
Exemplo |
Descrição |
|
Action |
String |
Sim |
OnsTraceGetResult |
Operação a ser executada. Defina o valor como OnsTraceGetResult. |
|
QueryId |
String |
Sim |
272967562652883649157096685**** |
ID da tarefa criada para consultar o trace da mensagem. |
Parâmetros de resposta
| Parâmetro | Tipo | Exemplo | Descrição |
| RequestId | String | 84EE24D2-851F-40D6-B99E-4D6AB909**** | ID da solicitação. O sistema gera um identificador único para cada solicitação, útil para solucionar problemas. |
| TraceData | Object | Detalhes do trace da mensagem. |
|
| Status | String | finish | Status da tarefa. Valores válidos:
|
| MsgKey | String | ORDERID_100 | Chave da mensagem consultada. |
| UpdateTime | Long | 1570966877000 | Momento da última atualização da tarefa. |
| CreateTime | Long | 1570966857000 | Momento de criação da tarefa. |
| Topic | String | test | Tópico onde a mensagem está armazenada. |
| UserId | String | 27296756265288**** | ID do usuário que criou a tarefa. |
| InstanceId | String | MQ_INST_111111111111_DOxxxxxx | ID da instância que contém a mensagem. |
| MsgId | String | 1E05791C117818B4AAC23B1BB0CE**** | ID da mensagem consultada. |
| TraceList | Array of TraceMapDo | Informações detalhadas do trace da mensagem. |
|
| TraceMapDo | |||
| Status | String | SEND_SUCCESS | Indica se a mensagem foi enviada. Valores válidos:
|
| MsgKey | String | ORDERID_100 | Chave da mensagem. |
| PubTime | Long | 1570850870478 | Horário de envio da mensagem. |
| SubList | Array of SubMapDo | Traces de consumo da mensagem. |
|
| SubMapDo | |||
| ClientList | Array of SubClientInfoDo | Dados sobre o consumo da mensagem pelos consumidores do grupo. |
|
| SubClientInfoDo | |||
| Status | String | CONSUME_SUCCESS | Indica se a mensagem foi consumida. Valores válidos:
|
| SubTime | Long | 1570851590511 | Primeiro momento em que a mensagem foi consumida. |
| ReconsumeTimes | Integer | 1 | Número de tentativas do broker do Message Queue for Apache RocketMQ para entregar a mensagem ao consumidor. |
| SubGroupName | String | GID_test | ID do grupo ao qual o consumidor pertence. |
| ClientHost | String | 30.5.**.** | Endereço do consumidor. |
| CostTime | Integer | 43 | Tempo gasto pelo sistema para consumir a mensagem. Unidade: milissegundos. |
| FailCount | Integer | 0 | Quantidade de falhas no consumo. |
| SubGroupName | String | GID_test | ID do grupo de consumidores. |
| SuccessCount | Integer | 1 | Total de consumos bem-sucedidos. |
| Topic | String | test | Tópico de armazenamento da mensagem. |
| CostTime | Integer | 24 | Duração do processo de envio da mensagem. Unidade: milissegundos. |
| Tag | String | TagA | Tag associada à mensagem. |
| MsgId | String | 0BC1F01800002A9F000000531246**** | ID da mensagem. |
| PubGroupName | String | GID_test | ID do grupo do produtor. |
| BornHost | String | 30.5.**.** | Endereço do produtor que originou a mensagem. |
| QueryId | String | 272967562652883649157096685**** | ID da tarefa. |
Exemplos
Exemplos de solicitações
http(s)://ons.cn-hangzhou.aliyuncs.com/?Action=OnsTraceGetResult
&QueryId=272967562652883649157096685****
&<Common request parameters>
Exemplos de respostas de sucesso
Formato XML
HTTP/1.1 200 OK
Content-Type:application/xml
<OnsTraceGetResultResponse>
<TraceData>
<MsgId>1E05791C117818B4AAC23B1BB0CE****</MsgId>
<Status>finish</Status>
<TraceList>
<TraceMapDo>
<BornHost>30.5.**.**</BornHost>
<MsgId>0BC1F01800002A9F000000531246****</MsgId>
<Status>SEND_SUCCESS</Status>
<CostTime>24</CostTime>
<PubTime>1570850870478</PubTime>
<Tag>TagA</Tag>
<Topic>test</Topic>
<MsgKey>ORDERID_100</MsgKey>
<PubGroupName>GID_test</PubGroupName>
<SubList>
<SubMapDo>
<ClientList>
<SubClientInfoDo>
<Status>CONSUME_SUCCESS</Status>
<CostTime>43</CostTime>
<ClientHost>30.5.**.**</ClientHost>
<ReconsumeTimes>1</ReconsumeTimes>
<SubTime>1570851590511</SubTime>
<SubGroupName>GID_test</SubGroupName>
</SubClientInfoDo>
</ClientList>
<SuccessCount>1</SuccessCount>
<FailCount>0</FailCount>
<SubGroupName>GID_test</SubGroupName>
</SubMapDo>
</SubList>
</TraceMapDo>
</TraceList>
<CreateTime>1570966857000</CreateTime>
<InstanceId>MQ_INST_111111111111_DOxxxxxx</InstanceId>
<Topic>test</Topic>
<UpdateTime>1570966877000</UpdateTime>
<QueryId>272967562652883649157096685****</QueryId>
<UserId>27296756265288****</UserId>
</TraceData>
<RequestId>84EE24D2-851F-40D6-B99E-4D6AB909****</RequestId>
</OnsTraceGetResultResponse>
Formato JSON
HTTP/1.1 200 OK
Content-Type:application/json
{
"TraceData" : {
"MsgId" : "1E05791C117818B4AAC23B1BB0CE****",
"Status" : "finish",
"TraceList" : {
"TraceMapDo" : [ {
"BornHost" : "30.5.**.**",
"MsgId" : "0BC1F01800002A9F000000531246****",
"Status" : "SEND_SUCCESS",
"CostTime" : 24,
"PubTime" : 1570850870478,
"Tag" : "TagA",
"Topic" : "test",
"MsgKey" : "ORDERID_100",
"PubGroupName" : "GID_test",
"SubList" : {
"SubMapDo" : [ {
"ClientList" : {
"SubClientInfoDo" : [ {
"Status" : "CONSUME_SUCCESS",
"CostTime" : 43,
"ClientHost" : "30.5.**.**",
"ReconsumeTimes" : 1,
"SubTime" : 1570851590511,
"SubGroupName" : "GID_test"
} ]
},
"SuccessCount" : 1,
"FailCount" : 0,
"SubGroupName" : "GID_test"
} ]
}
} ]
},
"CreateTime" : 1570966857000,
"InstanceId" : "MQ_INST_111111111111_DOxxxxxx",
"Topic" : "test",
"UpdateTime" : 1570966877000,
"QueryId" : "272967562652883649157096685****",
"UserId" : "27296756265288****"
},
"RequestId" : "84EE24D2-851F-40D6-B99E-4D6AB909****"
}
Códigos de erro
Para obter uma lista de códigos de erro, acesse a Central de Erros de API.
Consultar o trace de uma mensagem no console
Você também pode consultar o trace de uma mensagem no Message Queue for Apache RocketMQ console. Para mais detalhes, consulte Consultar um trace de mensagem.