[z/OS][MQ 10.0.0 Jun 2026]

Span attributes

This topic lists the attributes that can be in spans emitted by IBM® MQ for z/OS®.

Spans beginning with messaging, that do not contain ibmmq, are defined by the OpenTelemetry semantic conventions for messaging (https://opentelemetry.io/docs/specs/semconv/attributes-registry/messaging/).

Common attributes for both consumer and producer spans

Table 1. Common attributes for both consumer and producer spans
Attribute name Example value Description
end_time "2022-04-29T18:52:58.114304Z"

String

When the messaging operation returned to the caller.

mainframe.lpar.name "MV4C"

String

LPAR name.

messaging.client.id "DF2A711CF2D90001"

String

8 byte CONN value from DIS CONN encoded as 16 upper case characters.

messaging.destination.name

"QUEUE1"

String

Destination name.

If the application performs MQOPEN on an object of type queue this is the ObjectName passed back after MQOPEN/MQPUT1. Therefore, it is the name of the queue before name resolution occurs. If a model queue is opened this will be the name of the generated dynamic queue.

The destination name will be a transmission queue if the chinit is taking a message from the queue prior to sending the message over the network.

If the application performs MQOPEN on an object of type topic then this will be a topic string. Topic strings can be up to 10240 characters in length so this value might be very long. The value will not be truncated. For producer spans in a publish/subscribe fan out this will be the name of the subscriber’s queue.

messaging.destination.temporary true

Boolean

true if the message destination is temp-dynamic and might not exist anymore after messages are processed. Not included otherwise, that is, never set to false.

messaging.ibmmq.application.channel_name "MY.APP.SVRCONN"

String

CHANNEL from DIS CONN. Only included for client or queue manager to queue manager connections.

messaging.ibmmq.application.cics_task_id "0000034"

String

TASKNO from DIS CONN. Only included for CICS® applications.

messaging.ibmmq.application.cics_trans_id "TRAN1"

String

TRANSID from DIS CONN. Only included for CICS applications.

messaging.ibmmq.application.completion_code

"MQCC_OK"

"MQCC_WARNING"

String

IBM MQ completion code in string format.

messaging.ibmmq.application.conname "9.140.109.78"

String

CONNAME from DIS CONN. Only included for client or queue manager to queue manager connections.

messaging.ibmmq.application.description "IBM MQ Channel Initiator"

String

APPLDESC from DIS CONN. Only included if there is a non-blank description.

messaging.ibmmq.application.external_transaction_id

"000000000"

"BC8571519B60222D"

String

EXTURID from DIS CONN.

messaging.ibmmq.application.ims_psb_name "CSQQTRMN"

String

PSBNAME from DIS CONN. Only included for IMS applications.

messaging.ibmmq.application.ims_pst_id "0004"

String

PSBTID from DIS CONN. Only included for IMS applications.

messaging.ibmmq.application.name "MQ21CHIN"

String

APPLTAG from DIS CONN.

messaging.ibmmq.application.pid 1234

Integer

ASID from DIS CONN in decimal.

messaging.ibmmq.application.qmgr_transaction_id "0000002B4BEFAEFC"

String

QMGRURID from DIS CONN.

messaging.ibmmq.application.reason_code

"MQRC_NONE"

"MQRC_TRUNCATED_MSG_ACCEPTED"

String

IBM MQ reason code in string format.

messaging.ibmmq.application.smf_correlator
"E09D83F4B8DE52527
C63A5A07C658600"

String

32 character string formed from 16 byte value of WTASCORR field.

Only included if SMF 116 data is being captured. Allows correlation between accounting data and OpenTelemetry trace.

messaging.ibmmq.application.transaction_type "QMGR"

String

URTYPE from DIS CONN.

messaging.ibmmq.application.type "CHIN"

String

APPLTYPE from DIS CONN.

messaging.ibmmq.application.user_id "USER1"

String

USERID from DIS CONN.

messaging.ibmmq.destination.resolved_name "A.REMOTE.Q"

String

The value of MQOD.ResolvedQName[MQ 10.0.0 Jun 2026] or if type = topic, the topic string from ResObjectString but truncated to 128 characters if necessary.

messaging.ibmmq.destination.resolved_qmgr_name "REMOTE.QMGR"

String

The value of MQOD.ResolvedQMGRName. Might be the local queue manager, or a different one.

messaging.ibmmq.destination.resolved_type "queue"

String

If the application opens an alias queue, the type of object that the alias resolves to. Always "queue".

messaging.ibmmq.destination.type "queue"

String

The type of destination the application is interacting with.

messaging.ibmmq.message.accounting_token
"00000000000000000
00000000000000000"

String

Value of MQMD.AccountingToken.

messaging.ibmmq.message.appl_identity_data ""

String

Value of MQMD.ApplIdentityData.

messaging.ibmmq.message.appl_origin_data ""

String

Value of MQMD.ApplOriginData.

messaging.ibmmq.message.expiry

8000

-1

Integer

Message expiry converted to milliseconds. -1 if the message will not expire.

messaging.ibmmq.message.feedback

"MQFB_EXPIRATION"

"MQRC_Q_FULL"

String

Value of MQMD.Feedback converted to a string. If a MQFB_* or MQRC_* value then this will be converted to its text equivalent. If the value is an unknown integer, then that integer will be represented as a string.

messaging.ibmmq.message.persistent true

Boolean

true if the message is persistent, false otherwise.

messaging.ibmmq.message.priority 1

Integer

Value of MQMD.Priority.

messaging.ibmmq.message.put_appl_name "USER8"

String

Value of MQMD.PutApplName.

messaging.ibmmq.message.put_appl_type

"MQAT_QMGR"

String

Value of MQMD.PutApplType converted to a string.

messaging.ibmmq.message.put_date "20240618"

String

Value of MQMD.PutDate.

messaging.ibmmq.message.put_time "16244201"

String

Value of MQMD.PutTime.

messaging.ibmmq.message.reply_destination_name "Q1"

String

Value of MQMD.ReplyToQ.

messaging.ibmmq.message.reply_qmgr_name "QMGR1"

String

Value of MQMD.ReplyToQMgr.

messaging.ibmmq.message.report

"MQRO_NONE"

"MQRO_EXCEPTION, MQRC_COA"

String

MQMD.Report converted to a comma separated string. If not a value that the queue manager understands, then will be an integer in string format.

messaging.ibmmq.message.type "MQMT_DATAGRAM"

String

MQMD.MsgType converted to a string. If not a value that the queue manager understands, then will be an integer in string format.

messaging.ibmmq.message.user_id "MLEMING"

String

Value of MQMD.UserID.

messaging.ibmmq.transaction.committed true

Boolean.

Whether the transaction was committed (true) or rolledback (false). Only set if the message was put or got in a transaction. This includes scenarios where internal transactions are used, for example with MCA channels, or with JMS.

messaging.ibmmq.transaction.end_time

String

UTC timestamp indicating when the transaction completed. Only set if the message was put or got in a transaction.

messaging.ibmmq.transaction.start_time

String

UTC timestamp indicating when the transaction started. Only set if the message was put or got in a transaction.

messaging.message.body.size 4096

Integer

Message body size in bytes.

On MQPUT/MQPUT1: this is the value of the BufferLength passed in by the application. This might include the size of the RFH2 header if the application uses one, for example, with JMS.

On MQGET: the value of DataLength returned to the application. If the application requested properties in RFH2 format then those count towards the length

messaging.message.conversation_id
"C3E2D840D4D8F2F14040404
040404040DED163210A4A88A1"

String

Correlation ID represented as a hex string of 48 upper case characters.

messaging.message.envelope.size 9002

Integer

Message and meta data size in bytes. Includes message properties and MQMD.

On MQPUT: the size of the body, plus the size of either a V1 or V2 MQMD, and if message properties are used the size of the merged properties from OriginalMsgHandle and NewMsgHandle before any trace context property manipulation occurs

On MQGET: the size of the body, plus the size of either a V1 or V2 MQMD, and the size of any properties returned via a handle, after any trace context property manipulation occurs

messaging.message.id
"C3E2D840D4D8F2F14040404
040404040DED163210A4A88A1"

String

Message ID represented as a hex string of 48 upper case characters.

messaging.operation.name "MQPUT"

String

Messaging operation. One of MQPUT, MQPUT1, MQGET.

messaging.operation.type "send"

String

Messaging operation type. One of:
  • send – when sending a message.
  • receive – when receiving a message using MQGET.
  • process – when receiving a message using async consume.
messaging.system "ibmmq"

String

Indicates that IBM MQ was the messaging system that generated the span.

name

"MQPUT Q1"

String

The messaging operation and the destination it was performed on.

[MQ 10.0.0 Jun 2026]If messaging.destination.name is longer than 128 bytes, which might be the case for topics, the value used in the name attribute will be truncated at exactly 128 bytes.

os.type "z_os"

String

Type of operating system the queue manager is running on.

service.name "MQ21"

String

The name of the queue manager emitting the span. For MQGET the queue being consumed from is local to this queue manager. For MQPUT the ultimate destination queue might, or might not be local to this queue manager.

service.version "09.04.03.00"

String

IBM MQ version, encoded as VV.RR.MM.FF.

span_kind "producer"

String

"producer" on MQPUT.

"consumer" on MQGET or async consume.

start_time "2022-04-29T18:52:58.114304Z"

String

For MQPUT, the time the application called MQPUT. For MQGET, or async consume, the time when the message was taken off the queue.

W3C.tracestate “rojo=00f067aa0ba902b7,congo=t61rcWkgMzE.”

String.

Value of tracestate header if in message. Not included otherwise.

Producer span attributes

Table 2. Producer span attributes
Attribute name Example value Description
messaging.ibmmq.destination.transmission_queue "MQ21"

String

The name of the transmission queue that the message will be put on next. Only included if the message will be put to a transmission queue.

messaging.ibmmq.message.delay 5000

Integer

JMS 2 delivery delay set on the message, in milliseconds. Only included if delivery delay is used.

messaging.ibmmq.message.original_conversation_id

String

In scenarios where a queue manager generated MQMD is used, this is the CorrelID from the application provided MQMD. Not set otherwise.

messaging.ibmmq.message.original_message_id

String

In scenarios where a queue manager generated MQMD is used, this is the MessagelID from the application provided MQMD. Not set otherwise.

messaging.ibmmq.message.retained_publication true

Boolean

Set to true if the message being published is a retained publication. Not set otherwise.

messaging.ibmmq.message.streamed_from

true

Boolean

Set to true if a copy of this message has been sent to a different queue as a result of STREAMQ being set on this queue. Not set otherwise.

If set, there might be another span with the same message ID and correlation ID.

messaging.ibmmq.message.streamed_to true

Boolean

Set to true if this message has been put to this queue as a result of STREAMQ being set on another queue. Not set otherwise.

If set, there might be a span with the same message ID and correlation ID.

messaging.ibmmq.producer.publication_fail_count 0

Integer.

Number of delivery failures to subscribers. Can only be non-zero if topic is configured with (N)PMSGDLV(ALLAVAIL|ALLDUR). Only included in the “publish” span when publishing to a topic, either directly, or via an alias queue.

messaging.ibmmq.producer.subscriber_count 5

Integer.

Number of matching subscribers, which may be zero. Only included in the “publish” span when publishing to a topic, either directly, or via an alias queue.

Consumer span attributes

Table 3. Consumer span attributes
Attribute name Example value Description
messaging.ibmmq.consumer.administrative_subscription false

Boolean

Whether this is an administrative subscription (true) or not (false).

messaging.ibmmq.consumer.durable_subscription false

Boolean

Whether this is a durable subscription (true) or not (false).

messaging.ibmmq.consumer.managed_subscription true

Boolean

Whether this is a managed subscription (true) or not (false).

messaging.ibmmq.consumer.no_child_spans true

Boolean

If set to true, this indicates that there can be no child spans of this consumer span as trace context cannot be propagated to the getting application. That is:
  • OTELPCTL(AUTO) and the application is in a version of CICS or IMS that does not support automatic propagation, or in which automatic propagation has been disabled.
  • OTELPCTL(AUTO) and the application is not running in CICS or IMS and has specified MQGMO_PROPERTIES_AS_Q_DEF or MQGMO_NO_PROPERTIES.
  • OTELPCTL(MANUAL) and the getting application specifies MQGMO_PROPERTIES_AS_Q_DEF and the queue is configured with PROPCTL(NONE).
  • OTELPCTL(MANUAL) and the getting application specifies MQGMO_NO_PROPERTIES.

Never set to false.

messaging.ibmmq.consumer.original_wait_interval 1000

Integer

The wait interval, in milliseconds, that the caller originally specified on the MQGET. Only set if get with wait used. -1 indicates wait forever. Not set when the application is using async-consume.

messaging.ibmmq.consumer.subscription_id C3E2D840D4D8F2F14040404 040404040DED163210A4A88A1

String

Subscription ID from DIS SBSTATUS.

messaging.ibmmq.consumer.used_wait_interval 400

Integer

How long the caller had to wait in milliseconds before a message was returned. Only in span if get with wait used. Only set if get with wait used. -1 indicates wait forever. Not set when the application is using async-consume.

messaging.ibmmq.message.delivery_count 1

Integer

Value of MQMD.BackoutCount + 1.

messaging.ibmmq.message.time_on_queue 400000

Integer

How long the message was on the queue, in microseconds. 0 means that put with waiting getter was used and the queue was bypassed.

If delivery delay was used, this value does not include the delivery delay time.

IMS bridge client span attributes

Table 4. IMS bridge client span attributes
Attribute name Example value Description
end_time "2025-10-29T18:52:58.114304Z"

String

The time when the IMS bridge received an acknowledgement from IMS that the message data has been received. The acknowledgement will indicate whether the message data can, or cannot, be processed. If the message data cannot be processed then the error.type, otel.status_code and ibm.mq.ims_bridge.reason_code attributes will be set indicating why.

error.type “00F2020A”

String

An 8 character upper case hexadecimal code. Either an OTMA sense code with four leading zeros, or the value 00F2020A indicating that the message could not be converted to OTMA format.

Only set if the IMS bridge detects an error, or receives an error back from IMS during initial message transfer.

ibm.mq.ims_bridge.cant_propagate true

Boolean

Set to true if trace context cannot be propagated through the IMS bridge. That is, there was not space to propagate trace context to IMS, or to any reply or report messages generated by the IMS bridge. Not set otherwise.

If this value is set in a span, the QMSTOBCD attribute is incremented.

ibm.mq.ims_bridge.ims_member_name “IYEAZI5A”

String

The name of the IMS member that the IMS bridge is connected to.

ibm.mq.ims_bridge.ims_not_otel_enabled true

Boolean

Set to true if the IMS bridge detects that IMS is not enabled for OTel. Not set otherwise.

ibm.mq.ims_bridge.reason_code “00001B25”

String

An 8 character upper case hexadecimal reason code associated with error.type. For more information, see OTMA sense codes for NAK messages in the IBM Information Management System (IMS) documentation.

ibm.mq.ims_bridge.tpipe_name “M210004C”

String

The name of the IMS TPIPE being used by the IMS bridge.

ibm.mq.ims_bridge.transaction_name “TRAN1” The name of the IMS transaction that will process the message data. Not set if the message data is going to be sent to an IMS command.
name “MQ IMS Bridge: IYEAZI5A”

String

The name of the span. Formed by "MQ IMS Bridge: " with the IMS member name appended.

os.type “z_os”

String

Always z_os.

otel.status_code “ERROR”

String

Indicates that an error has occurred. If set, then the error.type and ibm.mq.ims_bridge.reason_code attributes provide information about the error.

service.name “MQ21”

String

The name of the queue manager emitting the span.

service.version "10.00.00.00"

String

IBM MQ version, encoded as VV.RR.MM.FF.

span_kind “client”

String

Always “client”.

start_time 2025-10-29T18:52:58.114004Z"

String

The time the IMS bridge issued the MQGET call.

W3C.tracestate “rojo=00f067aa0ba902b7,congo=t61rcWkgMzE.”

String.

The value of the tracestate header if in the message. Not included otherwise.