Sometimes it is necessary to troubleshoot a specific schedule record that is processed and deleted too fast to be manually updated, and to stop a background process to start a trace is not possible because a trace can be too big.
In order to take a trace for a specific schedule record, the following actions can be done:
1. Create a trigger for schedule table and add the following script. The trigger should be “before add”.
if(record._class=="sla" && record.application=="sla.refresh.active.wrapper" && record.name.substr(0,30)=="SLA Refresh for probsummary:IM") //This condition can be adjusted based on the schedule record characteristics
//The two values assigned below are the name of the debug background process that will be started.
NOTE: Notice that this is an example of a schedule record that is processed by SLA, but it can be adjusted to any schedule record. Just determine what is a characteristic of the schedule record you are trying to troubleshoot and adjust the condition and assign the _class and sched_class values.
2. Start the background process from command line with the debug parameters, for example:
sm -bg scheduler sladebug 60 1 -RTM:4 -debugdbquery:999 -log:sladebug.log
NOTE: notice that sladebug above, is the name of the background process and is the same as the one assigned in the trigger in step 1.
3. Once the traces is reviewed and it is confirmed that the data is valid, disable the trigger and the command line.
4. The trace can be reviewed now to determine what the problem is.