OO10.70 Rest API Issues
I have an external program that uses the HP OO API to trigger flows. (Execute a Flow by UUID). I have this program designed to handle these repsonses from page 46 of the API Guide:
From time to time I am getting an undocument response "NOT_EXECUTED" and no execution ID is given in the REST response.
1. What log file should I be looking at to find where these calls are being made?
2. Where is this response documented, assuming it is an actual response?
3. What is contributing to the response? Why does it happen?
4. What can I do to limit its occurence?
When talking about the post /executions you should always get an execution id if the response code is 201. In the off chance that you should get response code 201, but no execution id then there are some log which you could check to see what happened:
- localhost access log provides the api calls that the central received and the status
- general log if there was an error related to central and database related interaction
- server log if there was a worker related error
- wrapper log if something related to the normal operation of central occured and security related errors occured.
- execution log if the execution process started and then various execution related errors occured
Hope this helps,
Hi Vlad, thanks for the information. If I have two Centrals in HA mode behind a load balancer, is there anyway to know which one got the call and therefore which log to check?
You can check the worker group and worker id in central in run explorer
and afterwards go to the topology and match the worker id with the actual worker machine.
can you provide some screenshots and more details about the flow?
That's true if you got an execution ID., which I do not. I thhink sometimes I'm just not getting any response at all. What kind of connection and socket timeout values should I be setting? It is not any one flow. I have many flows that can be invoked via the API to Execute by UUID.
I am not sure at this stage you should do any connection or socket timeouts.
we need to first understand if we can somehow isolate this.
The thing is that I do not see NOT_EXECUTED within the code
OK, happy to know that. Let me take a closer look at my calling code to see how its handling no response or a repsonse that does not include an Execution ID.
Ok, I confirmed that it is our code writing to my Db the status NOT_EXECUTED and TRIGGERED based on a few findings. NOT_EXECUTED is just an intial value written to indicate that I have identified a UUID to run. TRIGGERED represents the status I set when I send the request and an Execution ID is provided from HPOO, after that I'm just using the status reported when I query HPOO like RUNNING, SYSTEM_FAILURE, COMPLETED, etc. We've updated the code to trap the entire response and to ERROR if there is no response. My two Centrals are in a round robin load balancer configuration and I'm thinking there are times when the execute request never makes it either Central.