A process that we run is intermittently failing. When it does fail, it fails while running the same operator: CA ServiceDesk -> Select Object.
Process Automation Release : 4.3.05 CP03.
ServiceDesk Manager Release : 17.3.05
The causes of failures will vary. This article recommends some techniques for troubleshooting.
To help isolate the root cause, there are a couple of techniques that can help. They are outlined below, but most focus on finding the details behind the failure. Process Automation uses WebService calls to communicate with SDM. It is not uncommon for these problems to fall under one of the following two categories:
Using the "Operation Results" -> SoapErrorResponse
This assumes the data passed to SDM is invalid and rejected accordingly.
"Fault returned by the WebService:" in the c2o.log
This also assumes the data passed to SDM is invalid and was rejected by SDM. These occurrences often show some of the rejection info in the c2o.log.
"Error in post-execution code"
This assumes that the SDM call completed successfully. But there was an error while executing the "Execution Settings" -> "Post-execution code". This could be for any reason since it's code. However, if the code usually works then an occasional failure will often mean that the code is trying to handle unexpected data. You can usually find out more in the dataset after the failure. When experiencing this type of problem you will see this error when navigating to:
Sometimes, additional information will appear at the bottom of this variable data. For example, maybe it will show:
-- TypeError. Cannot read property "0" from undefined (#3).
If you are receiving an error like this then it would indicate that the data it is expecting is not available. Continue by researching the "Operation Results" and why the post-execution code thinks data is not available.
If the problem is related to receiving unexpected results from SDM then using Wireshark can help by confirming the exact request being sent from ITPAM and the response being seen by ITPAM. If you capture the packets via Wireshark then the data exchanged between the ITPAM server and SDM server can be filtered using the filters: