Crie uma tarefa para consultar o trace de uma mensagem com base na chave da mensagem e no nome do tópico em que ela está armazenada. Esta operação retorna o ID da tarefa de consulta.
Observações de uso
Ao obter a chave de uma mensagem e precisar consultar seu trace, chame esta operação para criar uma tarefa de consulta. Depois de obter o ID da tarefa, use a operação OnsTraceGetResult para recuperar os detalhes do trace da mensagem correspondente ao ID da tarefa.
Limite de requisições
Cada conta Alibaba Cloud pode chamar esta operação até 30 vezes por minuto. Se o número de requisições enviadas dentro de um minuto atingir esse limite, as novas requisições falharão, o que pode interromper seus serviços. Para mais informações sobre os limites de requisição de cada operação, consulte Limites de taxa de API.
Autorização
Por padrão, apenas contas Alibaba Cloud têm permissão para chamar esta operação. Um usuário do Resource Access Management (RAM) só poderá executá-la após receber as permissões necessárias. A tabela a seguir descreve as permissões obrigatórias para um usuário RAM chamar esta operação. Para saber como conceder permissões, consulte Políticas e exemplos.
|
API |
Action |
Recurso em uma instância com namespace |
Recurso em uma instância sem namespace |
|
OnsTraceQueryByMsgKey |
mq:QueryInstanceBaseInfo mq:QueryTrace |
acs:mq:::{instanceId}%{topic} |
acs:mq:::{topic} |
Parâmetros da requisição
|
Parâmetro |
Tipo |
Obrigatório |
Exemplo |
Descrição |
|
Action |
String |
Sim |
OnsTraceQueryByMsgKey |
A operação a ser executada. Defina o valor como OnsTraceQueryByMsgKey. |
|
Topic |
String |
Sim |
test |
O tópico em que a mensagem a ser consultada está armazenada. |
|
MsgKey |
String |
Sim |
ORDERID_100 |
A chave da mensagem a ser consultada. |
|
BeginTime |
Long |
Sim |
1570852800000 |
O início do intervalo de tempo da consulta. Defina o valor como um timestamp UNIX que representa o número de milissegundos decorridos desde a época (epoch time) de 1º de janeiro de 1970, 00:00:00 UTC. |
|
EndTime |
Long |
Sim |
1570968000000 |
O fim do intervalo de tempo da consulta. Defina o valor como um timestamp UNIX que representa o número de milissegundos decorridos desde a época (epoch time) de 1º de janeiro de 1970, 00:00:00 UTC. |
|
InstanceId |
String |
Sim |
MQ_INST_111111111111_DOxxxxxx |
O ID da instância do Message Queue for Apache RocketMQ que contém o tópico especificado. |
Parâmetros de resposta
|
Parâmetro |
Tipo |
Exemplo |
Descrição |
|
RequestId |
String |
F8654231-122A-4DBD-801F-38E35538**** |
O ID da requisição. O sistema gera um ID exclusivo para cada requisição. Use esse identificador para solucionar problemas. |
|
QueryId |
String |
272967562652883649157096685**** |
O ID da tarefa de consulta. Use a operação OnsTraceGetResult para consultar os detalhes do trace da mensagem com base neste ID de tarefa. |
Exemplos
Exemplos de requisições
http(s)://ons.cn-hangzhou.aliyuncs.com/?Action=OnsTraceQueryByMsgKey
&BeginTime=1570852800000
&EndTime=1570968000000
&InstanceId=MQ_INST_111111111111_DOxxxxxx
&MsgKey=ORDERID_100
&Topic=test
&<Common request parameters>
Exemplos de respostas de sucesso
Formato XML
HTTP/1.1 200 OK
Content-Type:application/xml
<OnsTraceQueryByMsgKeyResponse>
<RequestId>F8654231-122A-4DBD-801F-38E35538****</RequestId>
<QueryId>272967562652883649157096685****</QueryId>
</OnsTraceQueryByMsgKeyResponse>
Formato JSON
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "F8654231-122A-4DBD-801F-38E35538****",
"QueryId" : "272967562652883649157096685****"
}
Códigos de erro
Para obter uma lista de códigos de erro, visite a Central de Erros de API.
Consultar o trace de uma mensagem no console
Também é possível criar uma tarefa para consultar o trace de uma mensagem no console do Message Queue for Apache RocketMQ. Para mais informações, consulte Consultar uma mensagem.