Level 1 and level 2 trace from CICS event capture 'EC' component

You can determine entry and exit points from the event capture process using level 1 trace. You can determine all the stages of event point filter evaluation and event capture using a level 2 trace.

Event capture level 1 trace

Level 1 trace records entry to and exit from the event capture process at an event point as follows:
AP 3530 ECEC ENTRY - FUNCTION(EVENT_CAPTURE) PARM_LIST(2AD09BA0) EVP_ADDRESS(294C214A) :CMD-POST(SIGNAL_EVENT)

         TASK-00057 KE_NUM-0076 TCB-QR   /009BAA68 RET-80083AA4 TIME-11:02:29.6997843842 INTERVAL-00.0000007187        =000585=
           1-0000  00300000 0000026B 00000000 00000000  AB000000 00000000 01000100 2AD09BA0  *.......,.....................}..*
             0020  00000000 00000000 294C214A 00000000                                       *.........<.$....                *
           2-0000  28020000 02280200 02010020 00000000  2B9A3420 000CE2C9 C7D5C1D3 6DC5E5C5  *......................SIGNAL_EVE*
             0020  D5E30000 00000000 00000000 00000000  05C5E5C5 D5E30000 00000000 00        *NT...............EVENT.......   *
…
AP 3531 ECEC EXIT  - FUNCTION(EVENT_CAPTURE) RESPONSE(OK) EVENTS(1)

         TASK-00057 KE_NUM-0076 TCB-QR   /009BAA68 RET-80083AA4 TIME-11:02:29.7011492756 INTERVAL-00.0000005937        =000655=
           1-0000  00300000 0000026B 00000000 00000000  AB000000 00000000 01000100 2AD09BA0  *.......,.....................}..*
             0020  00000000 00000000 294C214A 00000001                                       *.........<.$....                *
The parts of most use in problem determination are the event point on entry CMD-POST(SIGNAL_EVENT) and the number of events captured on exit EVENTS(1).

Event capture level 2 trace

Level 2 trace records all the stages of event point filter evaluation and event capture. It is particularly useful to see why a filter evaluated to true or false, and to see the data that was captured.

When the event point has filters on the primary predicate, a match or non match is traced:
AP 353C ECEC EVENT - PRIMARY_PREDICATE MATCHED

         TASK-00057 KE_NUM-0076 TCB-QR   /009BAA68 RET-A99F44AA TIME-11:02:29.6961430400 INTERVAL-00.0000003593        =000444=
           1-0000  03000000 E3C5E2E3 F1404040 00000000  00000000 00000000 00000000 00000000  *....TEST1   ....................*
             0020  00000000                                                                  *....                            *
When evaluation of the filter of a CAPTURESPEC starts:
AP 353B ECEC EVENT - FILTERING CAPTURESPEC(Prog_Init_capturespec)

         TASK-00057 KE_NUM-0076 TCB-QR   /009BAA68 RET-A99F44AA TIME-11:02:29.6961442431 INTERVAL-00.0000012031        =000445=
           1-0000  00A86EC4 C6C8C5C3 C3E24040 40404040  D7999687 6DC99589 A36D8381 97A3A499  *.y>DFHECCS      Prog_Init_captur*
             0020  85A29785 83404040 40404040 40404040                                       *espec                           *
For each filter predicate, the result (true or false) is traced. Here, an EVENT parameter is tested:
AP 3534 ECEC EVENT - PREDICATE_TRUE - TESTING PARAMETER(EVENT) EQUAL

         TASK-00057 KE_NUM-0076 TCB-QR   /009BAA68 RET-80083AA4 TIME-11:02:29.6997860092 INTERVAL-00.0000003437        =000587=
           1-0000  006D6EC4 C6C8C5C3 C6D74040 40404040  00000000 00010402 80058000 00000000  *._>DFHECFP      ................*
             0020  00007780 00000000 00000005 C5E5C5D5  E3404040 40404040                    *............EVENT               *
           2-0000  C5A58595 A3                                                               *Event                           *
           3-0000  C5A58595 A3                                                               *Event                           *
Here, data in a FROM parameter is tested. The result is TRUE because the test was NOT_EQUAL, the FROM parameter (trace item 2) field was blanks, and the tested for value (trace item 3) was SOMEVALUE:
AP 3534 ECEC EVENT - PREDICATE_TRUE - TESTING BYTES IN PARAMETER(FROM) NOT_EQUAL

         TASK-00057 KE_NUM-0076 TCB-QR   /009BAA68 RET-80083AA4 TIME-11:02:29.7020589155 INTERVAL-00.0000004375        =000697=
           1-0000  00916EC4 C6C8C5C3 C6D74040 40404040  00000000 00180802 40050080 0C022005  *.j>DFHECFP      ........ .......*
             0020  00808780 0000001B 00000009 C6D9D6D4  40404040 40404040                    *..g.........FROM                *
           2-0000  40404040 40404040 40                                                      *                                *
           3-0000  E2D6D4C5 E5C1D3E4 C5                                                      *SOMEVALUE                       *
Here, the result is FALSE because the field offset (trace item 2) and the field length (trace item 3) take it beyond the length of the FROM parameter:
AP 3536 ECEC EVENT - PREDICATE_FALSE - NO FIELD FOR BYTES IN PARAMETER(FROM)

         TASK-00057 KE_NUM-0076 TCB-QR   /009BAA68 RET-80083AA4 TIME-11:02:30.9828421982 INTERVAL-00.0000003593        =001713=
           1-0000  00916EC4 C6C8C5C3 C6D74040 40404040  00000000 00180802 40050080 0C022005  *.j>DFHECFP      ........ .......*
             0020  00807780 00000064 00000009 C6D9D6D4  40404040 40404040                    *............FROM                *
           2-0000  00000064                                                                  *....                            *
           3-0000  00000009                                                                  *....                            *
Here, the result is FALSE because zoned decimal data (trace item 2) is invalid:
AP 3538 ECEC EVENT - PREDICATE_FALSE - BAD DATA IN ZONED IN PARAMETER(INTO-SET)

         TASK-00057 KE_NUM-0076 TCB-QR   /009BAA68 RET-80083AA4 TIME-11:02:30.9827011962 INTERVAL-00.0000059218        =001689=
           1-0000  00C76EC4 C6C8C5C3 C6D74040 40404040  2B9A4140 001E0802 40050180 00000000  *.G>DFHECFP      ... .... .......*
             0020  00008780 00000005 0000001F C9D5E3D6  60E2C5E3 40404040                    *..g.........INTO-SET            *
           2-0000  40404000 57404040 40404040 40404040  40404040 40404040 40404040 404040    *   ..                           *
           3-0000  F1F2F3F4 F5F6F7F8 F9F0F1F2 F3F4F5F6  F7F8F9F0 F1F2F3F4 F5F6F7F8 F9F0D1    *123456789012345678901234567890J *
If all the filter predicates for a CAPTURESPEC are TRUE, event capture starts:
AP 353E ECEC EVENT - CAPTURING_EVENT CAPTURESPEC(EXEC_DELETEQ_TS)

         TASK-00057 KE_NUM-0076 TCB-QR   /009BAA68 RET-80083AA4 TIME-11:02:30.9857027761 INTERVAL-00.0000005781        =001741=
           1-0000  00A86EC4 C6C8C5C3 C3E24040 40404040  C5E7C5C3 6DC4C5D3 C5E3C5D8 6DE3E240  *.y>DFHECCS      EXEC_DELETEQ_TS *
             0020  40404040 40404040 40404040 40404040                                       *                                *
The capture data containers are traced so that the data (trace item 2) can be checked:
AP 3533 ECEC EVENT - CAPTURE_CONTAINER CONTAINER(DFHEP.DATA.00001)

         TASK-00057 KE_NUM-0076 TCB-QR   /009BAA68 RET-80083AA4 TIME-11:02:30.9868634948 INTERVAL-00.0000003750        =001771=
           1-0000  C4C6C8C5 D74BC4C1 E3C14BF0 F0F0F0F1                                       *DFHEP.DATA.00001                *
           2-0000  D4E8D8E4 C5E4C5F1 F2404040 40404040                                       *MYQUEUE12                       *
If capture data is not available, that fact is traced too:
AP 353A ECEC EVENT - UNAVAILABLE_DATA IN(CHANNEL)

         TASK-00057 KE_NUM-0076 TCB-QR   /009BAA68 RET-80082918 TIME-11:02:35.2281765703 INTERVAL-00.0000006562        =002288=
           1-0000  C3C8C1D5 D5C5D340 40404040                                                *CHANNEL                         *

For information about using CICS® debugging tools, trace, and dump, see Troubleshooting and support.