This is John Arnesen with NetView level 2 Support.
Octobers Blog entry deals with Automation Table tracing. Have you ever had Automation set up for a specific message but it seems that it never gets hit - even though you see a CNM493I message in the netlog? It must be that a different Automation Table entry is being used for that message.
A fast and easy way to find out what Automation Table entry is being hit is to set up a Automation Table Trace. It is set up as follows:
- Add trace statement to the top of the first Automation table in the concatenation to make sure it is picked up first:
- Reload the Automation Table to pick up the change. Use the AUTOMAN command for this (F4 for Commands is used to reload)
- Trace messages identified by BNH370I will be written to the netlog when the message in the trace is hit in the Automation Table.
- Find the Listing dataset and member so the sequence number in the trace can be matched up to a specific Automation Table entry. This will show what specific table entries were used and were bypassed.
Here is an example using the MVS D T command and the IEE136I message.
First, add the trace entry to the top of the first Automation table:
IF MSGID = 'IEE136I' THEN
Second, use AUTOMAN to reload the Automation Table.
Third, here is what the trace looks like in the netlog:
What do the BNH370I messages tell us (You can issue HELP BNH370I for more information):
- PASS - Means that the conditional test on the Automation Table entry was successful. The trace could also report FAIL which means the conditional test does not match and will be bypassed.
- TRACE - Is the condition being evaluated.
- DSITBL01 DSITBL01 - The Automation Table and Member the match was found in.
- #0000043 - the Sequence Number in the Listing dataset that was matched (more in this in a bit)
- IEE136I_TRACE - this was coded on the TRACE statement to help identify the Trace messages in the netlog. Any trace message can be coded here. It is used to easily find the trace entries in the netlog.
Lastly, lets see the actual Automation Table entry that was evaluated. This is done with the sequence number and the Listing.
- Find the listing by issuing NetView command: LISTA DSILIST. This will identify the dataset containing the listing .
- Browse the dataset in ISPF, and look for a member named LISTING (the default name) and browse it.
- Search for the Sequence number referenced in the Trace entry. Here is what they look like:
- The Sequence number is on the far right (#0000043 and #0000046).
- Notice that #0000046 has several conditions strung together that have to evaluate as true for the statement to be true. There is entry for each one of these conditions in the Automation Table trace. There is why there are eight entries for the #0000046 entry.
Reference the NetView Automation Automation Guide Section 188.8.131.52 Using NetView Automation Table Tracing for more information. Here is a link for the v6r1 manual:
I hope you find this useful!!