Interroge les détails d'une trace de message à partir d'un ID de tâche de requête spécifié.
Remarques sur l'utilisation
Avant d'appeler cette opération pour interroger les détails de la trace d'un message, créez une tâche de recherche de trace basée sur l'ID du message ou sa clé, puis récupérez l'ID de la tâche. Utilisez ensuite cette opération pour obtenir les détails de la trace à partir de cet ID. Appelez l'opération OnsTraceQueryByMsgId ou OnsTraceQueryByMsgKey pour créer la tâche et récupérez l'ID dans le paramètre de réponse QueryId.
L'exécution d'une tâche de recherche de trace prend du temps. Si vous appelez cette opération immédiatement après la création de la tâche, les résultats risquent d'être vides. Dans ce cas, réessayez ultérieurement.
Limites des requêtes
Chaque compte Alibaba Cloud peut appeler cette opération jusqu'à 10 fois par seconde. Si le nombre de requêtes envoyées en une seconde atteint cette limite, les nouvelles requêtes échouent, ce qui peut interrompre votre activité. Pour plus d'informations sur les limites de débit de chaque opération, consultez les Limites de débit des API.
Autorisation
Par défaut, seuls les comptes Alibaba Cloud peuvent appeler cette opération. Un utilisateur RAM (Resource Access Management) ne peut l'appeler qu'après avoir reçu les autorisations nécessaires. Le tableau ci-dessous décrit les permissions à accorder à un utilisateur RAM pour utiliser cette opération. Pour savoir comment attribuer ces autorisations, consultez les Politiques et exemples.
|
API |
Action |
Resource |
|
OnsTraceGetResult |
mq:QueryInstanceBaseInfo |
acs:mq:::{instanceId} |
Paramètres de requête
|
Parameter |
Type |
Required |
Example |
Description |
|
Action |
String |
Yes |
OnsTraceGetResult |
Opération à effectuer. Définissez la valeur sur OnsTraceGetResult. |
|
QueryId |
String |
Yes |
272967562652883649157096685**** |
ID de la tâche créée pour interroger la trace du message. |
Paramètres de réponse
| Parameter | Type | Example | Description |
| RequestId | String | 84EE24D2-851F-40D6-B99E-4D6AB909**** | ID de la requête. Le système génère un identifiant unique pour chaque requête. Vous pouvez résoudre les problèmes en vous basant sur cet ID. |
| TraceData | Object | Détails de la trace du message. |
|
| Status | String | finish | État de la tâche. Valeurs possibles :
|
| MsgKey | String | ORDERID_100 | Clé du message interrogé. |
| UpdateTime | Long | 1570966877000 | Dernier instant de mise à jour de la tâche. |
| CreateTime | Long | 1570966857000 | Instant de création de la tâche. |
| Topic | String | test | Rubrique dans laquelle le message est stocké. |
| UserId | String | 27296756265288**** | ID de l'utilisateur ayant créé la tâche. |
| InstanceId | String | MQ_INST_111111111111_DOxxxxxx | ID de l'instance contenant le message. |
| MsgId | String | 1E05791C117818B4AAC23B1BB0CE**** | ID du message interrogé. |
| TraceList | Array of TraceMapDo | Détails de la trace du message. |
|
| TraceMapDo | |||
| Status | String | SEND_SUCCESS | Indique si le message a été envoyé. Valeurs possibles :
|
| MsgKey | String | ORDERID_100 | Clé du message. |
| PubTime | Long | 1570850870478 | Instant d'envoi du message. |
| SubList | Array of SubMapDo | Traces de consommation du message. |
|
| SubMapDo | |||
| ClientList | Array of SubClientInfoDo | Informations sur la consommation des messages par les consommateurs du groupe. |
|
| SubClientInfoDo | |||
| Status | String | CONSUME_SUCCESS | Indique si le message a été consommé. Valeurs possibles :
|
| SubTime | Long | 1570851590511 | Premier instant de consommation du message. |
| ReconsumeTimes | Integer | 1 | Nombre de tentatives effectuées par le courtier Message Queue for Apache RocketMQ pour envoyer le message au consommateur. |
| SubGroupName | String | GID_test | ID du groupe auquel appartient le consommateur. |
| ClientHost | String | 30.5.**.** | Adresse du consommateur. |
| CostTime | Integer | 43 | Durée nécessaire au système pour consommer le message. Unité : millisecondes. |
| FailCount | Integer | 0 | Nombre d'échecs de consommation. |
| SubGroupName | String | GID_test | ID du groupe de consommateurs. |
| SuccessCount | Integer | 1 | Nombre de consommations réussies. |
| Topic | String | test | Rubrique dans laquelle le message est stocké. |
| CostTime | Integer | 24 | Durée nécessaire au système pour envoyer le message. Unité : millisecondes. |
| Tag | String | TagA | Tag du message. |
| MsgId | String | 0BC1F01800002A9F000000531246**** | ID du message. |
| PubGroupName | String | GID_test | ID du groupe auquel appartient le producteur. |
| BornHost | String | 30.5.**.** | Adresse du producteur ayant généré le message. |
| QueryId | String | 272967562652883649157096685**** | ID de la tâche. |
Exemples
Exemple de requête
http(s)://ons.cn-hangzhou.aliyuncs.com/?Action=OnsTraceGetResult
&QueryId=272967562652883649157096685****
&<Common request parameters>
Exemple de réponse réussie
Format 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>
Format 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****"
}
Codes d'erreur
Pour obtenir la liste des codes d'erreur, visitez le Centre d'erreur de l'API.
Interroger la trace d'un message dans la console
Vous pouvez également interroger la trace d'un message directement depuis la console Message Queue for Apache RocketMQ. Pour plus d'informations, consultez la rubrique Interroger une trace de message.