All Products
Search
Document Center

Simple Message Queue (formerly MNS):End-to-End Tracing Solution

Last Updated:Mar 12, 2026

This topic describes the core capabilities, trace definition, and data ingestion options for the Lightweight Message Queue (formerly MNS) end-to-end tracing solution.

Overview

In a distributed application system, interactions between services involve complex network communication and data transfer. A single request often requires multiple internal service calls to complete. As a core component for asynchronous communication between services, the message queue handles critical tasks such as peak-load shifting and application decoupling. When messages move between producers, the message queue, and consumers, any failure in the chain can cause message loss, delays, or duplicate consumption. This makes it difficult to quickly locate the root cause of an issue.

The Lightweight Message Queue (formerly MNS) end-to-end tracing solution records the full transmission path of a message throughout its lifecycle, providing detailed logs and performance metrics. Lightweight Message Queue supports ingesting OpenTelemetry-compliant trace data into Alibaba Cloud's Tracing Analysis service. This helps you quickly diagnose anomalies in distributed messaging systems.

Core Capabilities

  • Production and consumption audit: Records operation details, running time, and result status.

  • Conditional query: Quickly locates issues using filters such as message ID, queue name, and time range.

  • Standardized integration: Follows the OpenTelemetry standard and seamlessly integrates with application tracing data.

  • Anomaly detection: Automatically detects and marks abnormal traces to accelerate fault diagnosis.

Trace Definition

Lightweight Message Queue tracing follows the OpenTelemetry Messaging Spans specification and extends the specification with attributes specific to message queues.

Generic Messaging Span Attributes

Lightweight Message Queue supports the generic messaging tracing attributes defined in the OpenTelemetry standard. For more information, see the OpenTelemetry Messaging Spans specification.

These attributes include the following:

  • messaging.system: Identifier for the messaging system.

  • messaging.operation.name: Name of the operation.

  • messaging.operation.type: Type of the operation.

  • messaging.destination.name: Name of the destination queue or subject.

  • messaging.message.id: Message ID.

  • error.type: Error type (when the operation fails).

Lightweight Message Queue-Specific Attributes

In addition to the standard attributes, Lightweight Message Queue provides the following span-specific attributes:

Attribute Name

Type

Description

Example Value

Requirement Level

messaging.smq.operation

string

Name of the specific Lightweight Message Queue operation method.

SendMessage, ReceiveMessage, PublishMessage

Required

messaging.smq.request_id

string

The unique id of the request.

6733433D43444218004FAED2

Required

messaging.smq.message_tag

string

Message tag for messages published to a subject.

order, payment

Optional

messaging.smq.next_visible_time

int

UNIX timestamp (in seconds) when the message becomes visible again.

1731413593

Optional

messaging.smq.receipt_handle.in_response

string

Receipt handle returned when receiving a message.

8-oMWXHzxBZlgIlzuz8ztxz0z8MHzcT8Z3Zsy3y0

Optional

messaging.smq.receipt_handle.in_request

string

Receipt handle used to delete or modify a message.

8-oMWXHzxBZlgIlzuz8ztxz0z8MHzcT8Z3Zsy3y0

Optional

messaging.smq.subscription.type

string

Subscription type.

HTTP, HTTPS, QUEUE

Optional

Attribute Value Details

The following values are supported for messaging.smq.operation:

  • SendMessage: Send a queue message.

  • BatchSendMessage: Send queue messages in batches.

  • ReceiveMessage: Receive a queue message.

  • BatchReceiveMessage: Receive queue messages in batches.

  • DeleteMessage: Delete a queue message.

  • BatchDeleteMessage: Delete queue messages in batches.

  • ChangeMessageVisibility: Change the visibility timeout of a message.

  • PeekMessage: Peek at a queue message without removing it.

  • BatchPeekMessage: Peek at queue messages in batches without removing them.

  • PublishMessage: Publish a message to a subject.

  • ConsumeMessage: Consume a subscribed message.

  • AckMessage: Confirm message consumption.

  • Notify: Push a notification.

The following values are supported for messaging.smq.subscription.type:

  • HTTP: HTTP endpoint subscription.

  • HTTPS: HTTPS endpoint subscription.

  • QUEUE: Queue subscription.

Limits

  • Only the Java SDK client (version 1.3.0 or later) supports reporting trace data to Tracing Analysis. For more information about SDK versions, see Version history.

Trace Data Ingestion Options

You can integrate Lightweight Message Queue with Application Real-Time Monitoring Service (ARMS) to enable unified collection, storage, and analysis of trace data. For more information, see What is application monitoring?.

Integration with ARMS Application Monitoring

For step-by-step instructions, see Application onboarding.