Was this written by AI? The formatting and tone certainly sound like it, and the correctness of the content leaves a suspicious finger pointing in that direction too!
For example, "Your change to start the sender channel directly (bypassing the process definition) is generally the more predictable and modern approach" - no it isn't. Trigger starting is best practice. Manual start channel is not the "modern approach".
If there is evidence of PROCESS objects causing trigger setups to behave badly under load, please provide it. I have not heard of this. There are likely thousands of channels triggered this way on z/OS queue managers all over the world, just like Peter's, because they were set up that way back in MQSeries V1 and have never changed because they just worked. The change to the product to not need that any more was a simplification of definition idea, not an issue with the channel being started.
Trigger First is designed to ensure that if the trigger message generated for the transition from zero to one is part of a transaction that gets rolled back, then the trigger message is still forward completed, so that it isn't missed. Given that your channel did start, albeit 40 minutes later, we know that the trigger message did get produced and was correctly formed and could be correctly processed by the CHIN.
Anyway, just my rant. I do not want to see this forum taken over by incorrect AI answers. If you don't know that what AI is showing you is incorrect, don't post it on here as some kind of authoritative answer!
Cheers,
Morag
------------------------------
Morag Hughson
MQ Technical Education Specialist
MQGem Software Limited
Website:
https://www.mqgem.com------------------------------
Original Message:
Sent: Sat April 25, 2026 07:12 AM
From: Noor Fatima
Subject: Logging of Process definition executions on z/OS
Hi Peter,
Interesting setup - using a triggered process to issue a START CHANNEL via CSQX is definitely something you still see on older IBM MQ on z/OS, but as you've noticed, it can introduce some unpredictability under load.
Regarding your main question: unfortunately, there isn't a single "central" log specifically for process definition executions in the way you might expect. However, there are a few places you can check that together usually give a good picture:
CHINIT job logs (JESMSGLG / JESJCL / JESYSMSG)
These often show when the trigger monitor (channel initiator) processes the initiation queue and attempts to start the process. Delays under heavy CPU load can show up here indirectly.
Queue manager logs (CSQLOG / active logs)
If the START CHANNEL command was actually issued, you may see related activity or command processing entries.
System log (SYSLOG / OPERLOG)
Sometimes command execution via CSQX or related failures (authorization, resource issues) are recorded here.
SMF records (especially type 116)
If you have SMF enabled for MQ, this is one of the more reliable ways to trace what actually happened with triggers, channel starts, and delays.
From your description, the ~40 minute delay strongly suggests that the trigger was not processed immediately - likely due to system load or dispatching delays affecting the channel initiator, even if it has high priority. Triggering on depth 1 can also be sensitive to timing if the first event is missed or delayed.
Your change to start the sender channel directly (bypassing the process definition) is generally the more predictable and modern approach, especially for FTE workloads where timing is critical.
If you still want to validate root cause, I'd focus on correlating CHINIT logs with SMF 116 records around the delay window - that usually gives the clearest answer.
Thanks for raising this - it's a great example of how legacy trigger setups can behave under load.
------------------------------
Noor Fatima
------------------------------