Tous les produits
Search
Centre de documentation

Simple Message Queue (formerly MNS):Gestion des journaux

Dernière mise à jour :Aug 21, 2026

La fonctionnalité de gestion des journaux de Simple Message Queue (SMQ) transfère les journaux de requêtes de messages vers le service Simple Log Service (SLS). Utilisez ensuite SLS pour interroger et analyser les journaux de requêtes afin de résoudre les problèmes de production.

Cas d'utilisation

Problèmes courants lors de l'envoi et de la réception de messages :

  • Un message est envoyé avec succès à une file d'attente, mais le client consommateur ne le reçoit pas. Où est passé le message ?

  • Qui a consommé un message spécifique ? Combien de fois a-t-il été consommé ?

  • Le client consommateur tombe en panne. Quand un message dont la consommation a échoué pourra-t-il être consommé à nouveau ?

  • Un message est publié sur une rubrique, mais le endpoint ne l'a pas reçu après un long délai. Quelle est la cause de ce retard ?

La gestion des journaux dans SMQ permet de résoudre ces problèmes :

  • Transférez les journaux vers SLS et consultez la trace complète du message dans la console.

  • Utilisez l'outil d'interrogation fourni sur le site officiel. Spécifiez des paramètres pour afficher les journaux de traitement des messages.

Facturation

  • SMQ ne facture pas de frais supplémentaires pour la fonctionnalité de gestion des journaux.

  • Lorsque SMQ transfère les journaux vers SLS, SLS vous facture en fonction de l'espace de stockage, du trafic et du volume de requêtes. Présentation de la facturation.

Format des journaux de file d'attente

Les opérations sur les messages de file d'attente (envoi, consommation, suppression) génèrent des entrées de journal. Les champs inclus varient selon l'opération.

  • Champs de journal

    Les entrées de journal de file d'attente peuvent inclure les champs suivants.

    Champ

    Description

    Time

    Horodatage de l'opération.

    MessageId

    ID unique du message.

    QueueName

    Nom de la file d'attente cible.

    AccountId

    ID du compte propriétaire de la file d'attente.

    RemoteAddress

    Adresse IP du client.

    NextVisibleTime

    Moment où le message redevient visible.

    ReceiptHandleInRequest

    ReceiptHandle fourni par le client.

    ReceiptHandleInResponse

    ReceiptHandle renvoyé au client.

    ProcessTime

    Durée de traitement de l'opération.

    RequestId

    ID de la requête.

    Action

    L'action, telle que DeleteMessage ou SendMessage.

  • Champs par opération

    Le tableau suivant indique quels champs chaque opération inclut.

    Opération

    Time

    QueueName

    AccountId

    MessageId

    RemoteAddress

    NextVisibleTime

    ReceiptHandleInResponse

    ReceiptHandleInRequest

    SendMessage/BatchSendMessage

    Oui

    Oui

    Oui

    Oui

    Oui

    Oui

    Non

    Non

    PeekMessage/BatchPeekMessage

    Oui

    Oui

    Oui

    Oui

    Oui

    Non

    Non

    Non

    ReceiveMessage/BatchReceiveMessage

    Oui

    Oui

    Oui

    Oui

    Oui

    Oui

    Oui

    Non

    ChangeMessageVisibility

    Oui

    Oui

    Oui

    Oui

    Oui

    Oui

    Oui

    Oui

    DeleteMessage/BatchDeleteMessage

    Oui

    Oui

    Oui

    Oui

    Oui

    Oui

    Non

    Oui

Format des journaux de rubrique

Les opérations sur les messages de rubrique (publication et push) génèrent des entrées de journal. Les champs inclus varient selon l'opération.

  • Champs de journal

    Les entrées de journal de rubrique peuvent inclure les champs suivants.

    Champ

    Description

    Time

    Horodatage de l'opération.

    MessageId

    ID unique du message.

    TopicName

    Nom de la rubrique cible.

    SubscriptionName

    Nom de l'abonnement.

    AccountId

    ID du compte propriétaire de la rubrique.

    RemoteAddress

    Adresse IP du client.

    NotifyStatus

    Code d'état ou erreur provenant du endpoint lorsque SMQ pousse un message.

    ProcessTime

    Durée de traitement de l'opération.

    MessageTag

    Tag du message.

    RequestId

    ID de la requête.

    Action

    L'action, telle que PublishMessage ou Notify.

  • Champs par opération

    Le tableau suivant indique quels champs chaque opération inclut.

    Opération

    Time

    MessageId

    TopicName

    SubscriptionName

    AccountId

    RemoteAddress

    NotifyStatus

    MessageTag

    PublishMessage

    Oui

    Oui

    Oui

    Non

    Oui

    Oui

    Non

    Non

    Notify

    Oui

    Oui

    Oui

    Oui

    Oui

    Non

    Oui

    Oui

  • NotifyStatus

    Le champ NotifyStatus dans les journaux de push indique pourquoi SMQ n'a pas réussi à remettre un message. Résolvez les problèmes en fonction des valeurs suivantes.

    Code d'erreur

    Description

    Action recommandée

    2xx

    Le message a été poussé avec succès.

    Aucune.

    Autres codes d'état HTTP

    Le endpoint a renvoyé un code d'état autre que 2xx.

    Vérifiez la logique de traitement au niveau de votre endpoint.

    InvalidHost

    Endpoint d'abonnement non valide.

    Vérifiez que l'endpoint d'abonnement est valide et accessible avec curl ou telnet.

    ConnectTimeout

    La connexion à l'endpoint d'abonnement a expiré.

    Vérifiez que l'endpoint d'abonnement est accessible avec curl ou telnet.

    ConnectFailure

    Échec de la connexion à l'endpoint d'abonnement.

    Vérifiez que l'endpoint d'abonnement est accessible avec curl ou telnet.

    UnknownError

    Une erreur inconnue s'est produite.

    Contactez le support technique SMQ.

Opérations sur les journaux

Avant d'utiliser la gestion des journaux, assurez-vous que les conditions suivantes sont remplies :

  • Créez un projet et un Logstore dans SLS. Gérer un projet. Créer un Logstore.

    Les journaux d'opérations de votre service SMQ ne peuvent être transférés que vers un projet SLS situé dans la même région.

  • Autorisez SMQ à exporter les journaux avec le rôle RAM AliyunMNSLoggingRole.

    Cliquez sur Autorisation d'accès aux ressources cloud et suivez les instructions à l'écran pour terminer l'autorisation.

    Avertissement

    Ne révoquez pas l'autorisation et ne supprimez pas le rôle RAM. Sinon, les journaux SMQ ne pourront pas être transférés vers SLS.

Activer ou désactiver la journalisation

Activer ou désactiver la journalisation des files d'attente

  1. Connectez-vous à la console Simple Message Queue (anciennement MNS).

  2. Dans le volet de navigation de gauche, cliquez sur Queues.

  3. Dans la barre de menu supérieure, sélectionnez une région.

  4. Sur la page Queues, recherchez la file d'attente cible. Dans la colonne Actions, choisissez image > Edit.

  5. Dans le panneau Edit Queue Parameters, activez ou désactivez l'interrupteur Enable Logging Feature.

    Sur la page Queues, la colonne Logging de la file d'attente cible affiche Enabled ou Disabled.

Activer ou désactiver la journalisation des rubriques

  1. Connectez-vous à la console Simple Message Queue (anciennement MNS).

  2. Dans le volet de navigation de gauche, cliquez sur Topics.

  3. Dans la barre de menu supérieure, sélectionnez une région.

  4. Sur la page Topics, recherchez la rubrique cible et cliquez sur Edit dans la colonne Actions.

  5. Dans le panneau Edit Topic Parameters, activez ou désactivez l'interrupteur Enable Logging Feature.

    Sur la page Topics, la colonne Logging de la rubrique cible affiche Enabled ou Disabled.

Transférer les journaux vers SLS

Procédure

  1. Connectez-vous à la console Simple Message Queue (anciennement MNS).

  2. Dans le volet de navigation de gauche, cliquez sur Logging.

  3. Dans la barre de menu supérieure, sélectionnez une région.

  4. Sur la page Logging, sous l'onglet Select Target, sélectionnez Simple Log Service (SLS).

  5. Sous l'onglet Configure Target, sélectionnez un Project Name et un Logstore Name, puis cliquez sur Enable.

    La page Logging affiche le projet et le Logstore configurés.

Consulter les journaux

Procédure

  1. Connectez-vous à la console Simple Log Service.

  2. Dans la section Projects, cliquez sur celui que vous souhaitez.

    image

  3. Sous l'onglet Log Storage > Logstores, cliquez sur le Logstore cible.

  4. Saisissez une instruction de requête et cliquez sur Last 15 Minutes pour définir la plage de temps. Démarrage rapide pour la recherche et l'analyse.

Exemples d'analyse des journaux

Interroger la trace des messages de file d'attente

Pour tracer un message de file d'attente, effectuez une requête par nom de file d'attente et ID de message : $QueueName and $MessageId. Par exemple : log and EED287A265726135146E6A9CADC8XXXX.

Le résultat affiche le cycle de vie du message, de l'envoi à la réception.

Les deux entrées de journal partagent le même MessageId. L'entrée 5 correspond à l'opération SendMessage et l'entrée 4 correspond à l'opération ReceiveMessage.

4  10-21 16:50:57  MNSLogging  1603270323

  NextVisibleTime :1603270287
  ProcessTime :2
  ReceiptHandleInResponse :8-BBMzv7glMLMzuzazpcz0z6GXz23TAhoSh7bA
  Time :2020-10-21 16:50:57.097000
  AccountId :1xxx xxx5
  Action :ReceiveMessage
    MessageId :EED287A265726135146E6A9CADC8xxx
    RequestId :5F8FF671454539F442BF7CE9
    RemoteAddress :1xxx xxx4
    QueueName :sgw-express-sync-queue-gw-0008q1m4pv7qjse4na31-5796

5  10-21 16:50:53  MNSLogging  1603270327

  NextVisibleTime :1603270253
  ProcessTime :1
  Time :2020-10-21 16:50:53.001000
  AccountId :17xxx xxx2745
  Action :SendMessage
    MessageId :EED287A265726135146E6A9CADC8xxx
    RequestId :5F8FF66D3030359405DF281F
    RemoteAddress :xxx xxx1
    QueueName :sgw-express-sync-queue-gw-0008q1m4pv7qjse4na31-5796

Interroger la trace des messages de rubrique

Pour tracer un message de rubrique, effectuez une requête par nom de rubrique et ID de message : $TopicName and $MessageId. Par exemple : logtest and 8798453B65727FC6433E6AB4F746XXXX.

Le résultat affiche le cycle de vie du message, de la publication à la notification.

4  10-21 16:50:57  MNSLogging  1603270323

  NextVisibleTime :1603270287
  ProcessTime :2
  ReceiptHandleInResponse :8-BBMzv7glMLMzuzazpcz0z6GXz23TAhoSh7bA
  Time :2020-10-21 16:50:57.097000
  AccountId :1xxx xxx5
  Action :ReceiveMessage
    MessageId :EED287A265726135146E6A9CADC8xxx
    RequestId :5F8FF671454539F442BF7CE9
    RemoteAddress :1xxx xxx4
    QueueName :sgw-express-sync-queue-gw-0008q1m4pv7qjse4na31-5796

5  10-21 16:50:53  MNSLogging  1603270327

  NextVisibleTime :1603270253
  ProcessTime :1
  Time :2020-10-21 16:50:53.001000
  AccountId :17xxx xxx2745
  Action :SendMessage
    MessageId :EED287A265726135146E6A9CADC8xxx
    RequestId :5F8FF66D3030359405DF281F
    RemoteAddress :xxx xxx1
    QueueName :sgw-express-sync-queue-gw-0008q1m4pv7qjse4na31-5796

Interroger les messages envoyés à la file d'attente

Pour interroger les messages envoyés à une file d'attente, utilisez le nom de la file d'attente et l'opération d'envoi : $QueueName and (SendMessage or BatchSendMessage). Par exemple : log and (SendMessage or BatchSendMessage).

Après avoir saisi une instruction de requête et défini la plage de temps (par exemple, Last 15 Minutes (Relative)), cliquez sur Query/Analyze. Le résultat de la requête indique qu'un producteur a envoyé trois messages à la file d'attente de journalisation dans la plage de temps spécifiée. Chaque entrée de journal contient des champs tels que Action, QueueName, MessageId, RequestId et AccountId.

Interroger les messages publiés sur la rubrique

Pour interroger les messages publiés sur une rubrique, utilisez le nom de la rubrique et l'opération de publication : $TopicName and PublishMessage. Par exemple : logtest and PublishMessage.

Après avoir exécuté la requête, les résultats indiquent que trois messages ont été publiés par un producteur sur la rubrique logtest dans la plage de temps spécifiée. Chaque enregistrement de journal contient des champs incluant TopicName (valeur : logtest), Action (valeur : PublishMessage), ProcessTime, Time, AccountId, MessageId, RequestId, RemoteAddress et MessageTag.

Interroger les messages consommés depuis la file d'attente

Pour interroger les messages consommés depuis une file d'attente, utilisez le nom de la file d'attente et l'opération de consommation : $QueueName and (ReceiveMessage or BatchReceiveMessage). Par exemple : log and (ReceiveMessage or BatchReceiveMessage).

Après avoir exécuté la requête, les résultats indiquent que 12 messages ont été consommés depuis la file d'attente de journalisation dans la plage de temps spécifiée. Dans les détails du journal, le champ Action est ReceiveMessage et le champ QueueName est log, ce qui confirme que les enregistrements de consommation de la file d'attente spécifiée correspondent.

Interroger les messages supprimés de la file d'attente

Pour interroger les messages supprimés d'une file d'attente, utilisez le nom de la file d'attente et l'opération de suppression : $QueueName and (DeleteMessage or BatchDeleteMessage). Par exemple : log and (DeleteMessage or BatchDeleteMessage).

Cliquez sur Query/Analyze. Le résultat de la requête indique que 61 messages ont été supprimés de la file d'attente de journalisation dans la plage de temps spécifiée. Dans les détails du journal, le champ Action est DeleteMessage et le champ QueueName est log.

Interroger les messages par client

Pour interroger les messages traités par un client spécifique, utilisez l'adresse IP du client : $ClientIP. Par exemple : 10.10.10.0.

Pour filtrer par type d'opération, combinez les mots-clés. Par exemple : $ClientIP and (SendMessage or BatchSendMessage).

Après avoir saisi une instruction de requête, cliquez sur Query/Analyze et utilisez le sélecteur de temps à droite pour définir la plage de temps (par exemple, Last 15 Minutes (Relative)). Le résultat de la requête indique que le client a traité 66 messages dans la plage de temps spécifiée. La page affiche l'état Query Results comme étant Precise ainsi que le Log Count, et l'histogramme des résultats de la requête montre la distribution des journaux dans le temps.