XCT data in CICS TG

Within the Gateway daemon, the XCT context data is available in the request monitoring exits.

At all request monitoring exit points, three XCT request identifiers are available:
  • XctRoot, the initial context of the component at the point of entry.
  • XctParent, the context of the calling component.
  • XctCurrent, the context of the current component, CICS® TG.
The XCT data in the Gateway daemon is available for all CICS server protocols but it is only when using IPIC that the context data is propagated to CICS in the origin data. The root and current XCT contexts are available in the origin data at the RequestDetails and ResponseExit exit points.
The following example shows the XCT and origin data entries in the request monitoring log when using the supplied sample request monitor BasicMonitor:
 [00000000001]: com.ibm.ctg.samples.requestexit.BasicMonitor:eventFired called with event = RequestEntry
   : : : : : : 
 [00000000001]: XctRoot = BKwWqX+HPuK-AAAAAAAAAAG
 [00000000001]: XctParent = BKwWqz2kOGV-AAAAAAAAAAD
 [00000000001]: XctCurrent = BKwWqz2kOGV-AAAAAAAAAAE
  
 [00000000001]: com.ibm.ctg.samples.requestexit.BasicMonitor:eventFired called with event = RequestDetails
  : : : : : : 
 [00000000001]: OriginData - Transaction Group ID = 1A10C2C1 E8D3C9E2 E22EC7C1 E3C5E6C1 E8F1CA1D BCBD6459 8200 
                           - User Correlator = XCT     BKwWqX+HPuK-AAAAAAAAAAG BKwWqz2kOGV-AAAAAAAAAAE
  : : : : : : 
 [00000000001]: XctRoot = BKwWqX+HPuK-AAAAAAAAAAG
 [00000000001]: XctParent = BKwWqz2kOGV-AAAAAAAAAAD
 [00000000001]: XctCurrent = BKwWqz2kOGV-AAAAAAAAAAE
  
 [00000000001]: com.ibm.ctg.samples.requestexit.BasicMonitor:eventFired called with event = ResponseExit
  : : : : : : 
 [00000000001]: OriginData - Transaction Group ID = 1A10C2C1 E8D3C9E2 E22EC7C1 E3C5E6C1 E8F1CA1D BCBD6459 8200 
                           - User Correlator = XCT     BKwWqX+HPuK-AAAAAAAAAAG BKwWqz2kOGV-AAAAAAAAAAE
  : : : : : : 
 [00000000001]: XctRoot = BKwWqX+HPuK-AAAAAAAAAAG
 [00000000001]: XctParent = BKwWqz2kOGV-AAAAAAAAAAD
 [00000000001]: XctCurrent = BKwWqz2kOGV-AAAAAAAAAAE
If the CICS TS version of the connected CICS TS is greater than 4.2, then the XCTTokens are populated to Adaperdata1, within Origindata as shown in the following.
[00000000001]: com.ibm.ctg.samples.requestexit.BasicMonitor:eventFired called with event = RequestEntry
................
[00000000001]: XctRoot = AAAYoNVxV8E-AAAAAAAAAA+
[00000000001]: XctParent = AAAYoNVxV8E-AAAAAAAAAA+
[00000000001]: XctCurrent = AAAYoNVxV8E-AAAAAAAAAA/

[00000000001]: com.ibm.ctg.samples.requestexit.BasicMonitor:eventFired called with event = ResponseExit
................
[00000000001]: OriginData - Transaction Group ID = 1B114040 40404040 40402EF0 F0F0F0F0 F0F0F7D6 A29E05D3 A00200
[00000000001]: OriginData - Adapter Id = IBM CICS Transaction Gateway 9.3.0.0c930-20190826-1725 - Adapter Data1 = XCT     AAAYoNVxV8E-AAAAAAAAAA+ AAAYoNVxV8E-AAAAAAAAABA
.................
[00000000001]: XctRoot = AAAYoNVxV8E-AAAAAAAAAA+
[00000000001]: XctParent = AAAYoNVxV8E-AAAAAAAAAA+
[00000000001]: XctCurrent = AAAYoNVxV8E-AAAAAAAAABA
If otherwise (Earlier to 4.2), the XCTTokens are written to UserCorrelator within OriginData as shown in the following.
[00000000009]: com.ibm.ctg.samples.requestexit.BasicMonitor:eventFired called with event = RequestEntry
.........
[00000000009]: XctRoot = AAAawHqgHgA-AAAAAAAAAAi
[00000000009]: XctParent = AAAawHqgHgA-AAAAAAAAAAi
[00000000009]: XctCurrent = AAAawHqgHgA-AAAAAAAAAAj

[00000000009]: com.ibm.ctg.samples.requestexit.BasicMonitor:eventFired called with event = ResponseExit
.........
[00000000009]: OriginData - Transaction Group ID = 1B114040 40404040 40402EF0 F0F0F0F0 F0F0F1D6 A2AB2FF7 3D8300
[00000000009]: OriginData - User Correlator = XCT     AAAawHqgHgA-AAAAAAAAAAi AAAawHqgHgA-AAAAAAAAAAj
.........
[00000000009]: XctRoot = AAAawHqgHgA-AAAAAAAAAAi
[00000000009]: XctParent = AAAawHqgHgA-AAAAAAAAAAi
[00000000009]: XctCurrent = AAAawHqgHgA-AAAAAAAAAAj
For more information about when the XCT request identifiers are available, see Data available by FlowType and RequestEvent.