Interroge les messages de file morte envoyés à un groupe de consommateurs spécifié dans une plage horaire donnée.
Notes d'utilisation
Si vous ne connaissez pas l'ID du message de file morte que vous souhaitez interroger, appelez cette opération pour rechercher tous les messages de file morte envoyés à un groupe de consommateurs dans une plage horaire définie. Les résultats s'affichent sous forme paginée.
-
Nous vous recommandons de spécifier une plage horaire courte pour vos recherches. Une plage trop étendue renvoie un grand nombre de messages, ce qui rallonge le temps nécessaire pour identifier le message ciblé. Procédez comme suit pour interroger les messages de file morte :
1. Spécifiez les paramètres Topic, BeginTime, EndTime et PageSize pour appeler cette opération et créer une tâche de requête. Par défaut, cette opération renvoie les informations relatives aux messages de file morte de la première page, le nombre total de pages et l'ID de la tâche.
2. Indiquez l'ID de la tâche et un numéro de page pour rappeler cette opération et interroger les messages de file morte de la page spécifiée. Lors de cette seconde requête, les paramètres BeginTime, EndTime et PageSize ne sont pas pris en compte. Le système réutilise automatiquement les valeurs définies lors de la création initiale de la tâche de requête.
Limites de 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 consulter les limites de débit de chaque opération, reportez-vous à la section 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'utiliser qu'après avoir reçu les autorisations nécessaires. Le tableau ci-dessous décrit les permissions à attribuer à un utilisateur RAM pour appeler cette opération. Pour savoir comment accorder ces autorisations, consultez la page Politiques et exemples.
|
API |
Action |
Ressource dans une instance utilisant un namespace |
Ressource dans une instance n'utilisant pas de namespace |
|
OnsDLQMessagePageQueryByGroupId |
mq:QueryInstanceBaseInfo mq:QueryDLQMessage |
acs:mq:::{instanceId}%{groupId} |
acs:mq:::{groupId} |
Paramètres de requête
|
Paramètre |
Type |
Obligatoire |
Exemple |
Description |
|
Action |
String |
Oui |
OnsDLQMessagePageQueryByGroupId |
L'opération à effectuer. Définissez la valeur sur OnsDLQMessagePageQueryByGroupId. |
|
GroupId |
String |
Oui |
GID_test_group_id |
L'ID du groupe de consommateurs dont vous souhaitez interroger les messages de file morte. |
|
BeginTime |
Long |
Oui |
1570723200000 |
Le début de la plage horaire à interroger. Indiquez un horodatage UNIX représentant le nombre de millisecondes écoulées depuis le 1er janvier 1970, 00:00:00 UTC. Si vous spécifiez une valeur valide pour le paramètre TaskId dans la requête, ce paramètre est ignoré. Le système utilise la valeur BeginTime définie lors de la création de la tâche de requête correspondante. |
|
EndTime |
Long |
Oui |
1570809600000 |
La fin de la plage horaire à interroger. Indiquez un horodatage UNIX représentant le nombre de millisecondes écoulées depuis le 1er janvier 1970, 00:00:00 UTC. Si vous spécifiez une valeur valide pour le paramètre TaskId dans la requête, ce paramètre est ignoré. Le système utilise la valeur EndTime définie lors de la création de la tâche de requête correspondante. |
|
TaskId |
String |
Non |
0BC1310300002A9F000021E4D7A48346 |
L'ID de la tâche de requête. Ce paramètre n'est pas requis lors du premier appel pour interroger les messages de file morte d'un groupe de consommateurs sur une période donnée. Il devient obligatoire pour les requêtes suivantes visant à obtenir les pages spécifiques. Vous pouvez récupérer l'ID de tâche dans la réponse de la première requête. |
|
CurrentPage |
Integer |
Oui |
2 |
Le numéro de la page à renvoyer. La pagination commence à 1. Valeurs valides : 1 à 50. |
|
PageSize |
Integer |
Non |
5 |
Le nombre de messages à renvoyer par page. Valeurs valides : 5 à 50. Valeur par défaut : 20. Si vous spécifiez une valeur valide pour le paramètre TaskId dans la requête, ce paramètre est ignoré. Le système utilise la valeur PageSize définie lors de la création de la tâche de requête correspondante. |
|
InstanceId |
String |
Oui |
MQ_INST_111111111111_DOxxxxxx |
L'ID de l'instance Message Queue for Apache RocketMQ contenant le groupe de consommateurs. |
Pour plus d'informations sur les paramètres de requête, consultez
et
.
Paramètres de réponse
| Paramètre | Type | Exemple | Description |
| RequestId | String | B00CD3C8-D81E-4A41-85E2-38F19252**** | L'ID de la requête. Le système génère un ID unique pour chaque requête. Vous pouvez résoudre les problèmes en vous basant sur cet identifiant. |
| MsgFoundDo | Object | Les informations relatives aux messages de file morte interrogés. |
|
| CurrentPage | Long | 1 | Le numéro de la page renvoyée. |
| MsgFoundList | Array of OnsRestMessageDo | Les informations relatives aux messages de file morte renvoyés sur la page actuelle. Le contenu de ce paramètre est identique aux informations renvoyées par l'opération OnsDLQMessageGetById. |
|
| OnsRestMessageDo | |||
| StoreSize | Integer | 406 | La taille du message. Unité : Ko. |
| ReconsumeTimes | Integer | 1 | Le nombre de tentatives effectuées par Message Queue for Apache RocketMQ pour envoyer le message de file morte aux consommateurs. |
| StoreTimestamp | Long | 1570760999811 | L'horodatage auquel le broker Message Queue for Apache RocketMQ a stocké le message. |
| InstanceId | String | MQ_INST_111111111111_DOxxxxxx | L'ID de l'instance. |
| MsgId | String | 1E0578FE110F18B4AAC235C05F2***** | L'ID du message. |
| StoreHost | String | 11.193.***.***:10911 | Le broker Message Queue for Apache RocketMQ qui stocke le message. |
| Topic | String | test-mq_topic | Le topic dans lequel le message est stocké. |
| PropertyList | Array of MessageProperty | Les propriétés du message. |
|
| MessageProperty | |||
| Value | String | TagA | La valeur de la propriété. |
| Name | String | TAGS | Le nom de la propriété. Valeurs valides :
Pour plus d'informations sur les termes utilisés dans Message Queue for Apache RocketMQ, consultez la section Termes. |
| BornTimestamp | Long | 1570760999721 | L'horodatage de production du message. |
| BodyCRC | Integer | 914112295 | La valeur de contrôle de redondance cyclique (CRC) du corps du message. |
| BornHost | String | 42.120.***.***:59270 | L'instance productrice ayant généré le message. |
| MaxPageCount | Long | 400 | Le nombre total de pages de résultats. |
| TaskId | String | 0BC1310300002A9F000021E4D7A48346 | L'ID de la tâche de requête. Ce paramètre est renvoyé lors du premier appel pour interroger les messages de file morte publiés sur un topic dans une plage horaire donnée. Vous pouvez utiliser cet ID pour interroger les détails des messages de file morte sur les autres pages renvoyées. |
Exemples
Exemple de requête
http(s)://ons.cn-hangzhou.aliyuncs.com/?Action=OnsDLQMessagePageQueryByGroupId
&BeginTime=1570723200000
&CurrentPage=2
&EndTime=1570809600000
&GroupId=GID_test_group_id
&InstanceId=MQ_INST_111111111111_DOxxxxxx
&TaskId=0BC1310300002A9F000021E4D7A48346
&PageSize=5
&<Common request parameters>
Exemple de réponse réussie
XML format
HTTP/1.1 200 OK
Content-Type:application/xml
<OnsDLQMessagePageQueryByGroupIdResponse>
<MsgFoundDo>
<MaxPageCount>400</MaxPageCount>
<MsgFoundList>
<OnsRestMessageDo>
<MsgId>1E0578FE110F18B4AAC235C05F2*****</MsgId>
<InstanceId>MQ_INST_111111111111_DOxxxxxx</InstanceId>
<ReconsumeTimes>1</ReconsumeTimes>
<BornHost>42.120.***.***:59270</BornHost>
<StoreTimestamp>1570760999811</StoreTimestamp>
<StoreHost>11.193.***.***:10911</StoreHost>
<BodyCRC>914112295</BodyCRC>
<Topic>test-mq_topic</Topic>
<BornTimestamp>1570760999721</BornTimestamp>
<StoreSize>406</StoreSize>
<PropertyList>
<MessageProperty>
<Name>TAGS</Name>
<Value>TagA</Value>
</MessageProperty>
</PropertyList>
</OnsRestMessageDo>
</MsgFoundList>
<TaskId>0BC1310300002A9F000021E4D7A48346</TaskId>
<CurrentPage>1</CurrentPage>
</MsgFoundDo>
<RequestId>5DC2A47E-2B31-4722-96C8-FA59C9*****</RequestId>
</OnsDLQMessagePageQueryByGroupIdResponse>
JSON format
HTTP/1.1 200 OK
Content-Type:application/json
{
"OnsDLQMessagePageQueryByGroupIdResponse" : {
"MsgFoundDo" : {
"MaxPageCount" : 400,
"MsgFoundList" : {
"OnsRestMessageDo" : {
"MsgId" : "1E0578FE110F18B4AAC235C05F2*****",
"InstanceId" : "MQ_INST_111111111111_DOxxxxxx",
"ReconsumeTimes" : 1,
"BornHost" : "42.120.***.***:59270",
"StoreTimestamp" : 1570760999811,
"StoreHost" : "11.193.***.***:10911",
"BodyCRC" : 914112295,
"Topic" : "test-mq_topic",
"BornTimestamp" : 1570760999721,
"StoreSize" : 406,
"PropertyList" : {
"MessageProperty" : [ {
"Name" : "TAGS",
"Value" : "TagA"
} ]
}
}
},
"TaskId" : "0BC1310300002A9F000021E4D7A48346",
"CurrentPage" : 1
},
"RequestId" : "5DC2A47E-2B31-4722-96C8-FA59C9*****"
}
}
Codes d'erreur
Pour obtenir la liste des codes d'erreur, visitez le Centre d'erreurs API.
Interroger les messages de file morte dans la console
Vous pouvez également interroger les messages de file morte d'un groupe de consommateurs directement dans la console Message Queue for Apache RocketMQ. Pour plus d'informations, reportez-vous à la section Files mortes.