Distributed Db2 for z/OS Observability
Created , Updated
z/IRIS enables observability for JDBC calls processed by IBM Db2 for z/OS systems. Users gain access to performance metrics and processing information related to JDBC call processing. z/IRIS will also create events with information about errors that occurred on the mainframe. These events can be integrated with alerting rules, so that teams are always aware of any situations affecting business services.

Transaction Workflow for Distributed Db2 for z/OS support
Traces
z/IRIS creates Db2 z/OS traces from SMF record types 101 and 102.

Distributed Db2 for z/OS APM trace example
Supported Db2 IFCIDs
IFCID | SMF Type | z/IRIS Spans | Descriptions |
---|---|---|---|
31 | 101 | DRDA or SQL Spans | Provides performance and resource utilization metrics for Db2 processing on z/OS as well as identifiers for the distributed allied threads. |
172 | 102 | Db2 Deadlock, Db2 Deadlock Participant | Each deadlock event, detected by the Db2 z/OS manager, creates deadlock records. It identifies access threads and resources impacted by the deadlock. Additional information about thread locking behavior is helpful for root cause analysis. |
1ACCUMACC (roll-up records) must be disabled.
DRDA or SQL spans
z/IRIS processes IFCID 3 data into APM traces or spans. Db2 spans contain system identifiers, duration information and metadata about resource consumption and performance like:
CPU and zIIP processor time,
elapsed time (duration),
latency/wait time.
This metadata can be included in capacity planning or application tuning analysis.
>> DRDA or DQL span attributes
Db2 Deadlock span
Represents the occurrence of a deadlock between this span's parent and another JDBC request. The other request will either be automatically linked to this span via APM span linking, or through the holder and waiter child spans.
This span provides:
the timestamp of the event,
has a duration of <1ms ,
the number of database resources impacted by the deadlock,
the Db2 and z/OS system names, where the deadlock occurred.
>> Db2 Deadlock span attributes
Db2 Resource Name child span
Represents the Db2 RNA (resource name) impacted by the deadlock. The name of the resource will be the name of this span. The following is a list of possible resource name values:
collection.id = collectionId
package.name= packageName
plan.name= planName
dbid=dbid
obid=obid
smallResource
where smallResource could point to one of the following:partition.number=partitionNumber
bucket.number=bucketNumber
xml.doc.id=xml.doc.id
lob.row.id=lob.row.id
lob.version.number=lob.version.number
physical.page.number=physical.page.number
subpage.number=subpage.number
page.record.id=page.record.id
>> Db2 Deadlock Resource Name span attributes
Holder and Waiter child spans
Represent the requests that deadlocked on the parent Db2 Resource Names.
This span contains:
Request APM trace.ids (i.e. the current trace tree is either a holder or a waiter of the specified Db2 resource name.)
Lock configuration
Db2 client application identifiers
Other Db2 access thread identifiers
Mainframe systems information
>> Db2 Deadlock Waiter span attributes
>> Db2 Deadlock Holder span attributes
Db2 Deadlock participant
Represents the occurrence of a deadlock between this span’s parent and another request.
Contains the following information:
trace.id of the request that deadlocked with this request instance.
The trace.id is either provided automatically using APM span linking or manually in a trace tag.
>> Db2 Deadlock Participant span attributes
Db2 Workflow Tracing
z/IRIS can append a Db2 span to APM traces depending on the application workflow. This enables DevOps engineers to examine how Db2 for z/OS is utilized for complex digital business services.
The following workflows are supported for Db2:
Contact z/IRIS engineering about additional Db2 Workflow Tracing support.