fetchAllUimDevices UIMAPI request throws HttpResponseException
search cancel

fetchAllUimDevices UIMAPI request throws HttpResponseException

book

Article ID: 262103

calendar_today

Updated On:

Products

DX Unified Infrastructure Management (Nimsoft / UIM) CA Unified Infrastructure Management On-Premise (Nimsoft / UIM) CA Unified Infrastructure Management SaaS (Nimsoft / UIM)

Issue/Introduction

UIM is integrated with DX OI SAAS. This integration is sending metrics and alarms good to the DX OI SAAS.
But the integration is not sending the Inventory/Groups data to the DX OI SAAS.
When we check the apm_bridge.log, we see the following error message.
redeployed umiapi and upgraded java_jre, but it is still not working.

apm_bridge.log:

Mar 14 09:57:04:703 DBLOW [ForkJoinPool-192-worker-1, apm_bridge] fetchAllUimDevices UIMAPI request: GET http://###.###.###.###:80/uimapi/devices?type=apm&origins=XXXXXX&origins=XXXXXX HTTP/1.1
Mar 14 09:57:06:303 ERROR [ForkJoinPool-192-worker-1, apm_bridge] Could not determine UIM or TAS devices to forward for profile 1 with origin UIM_PRI, UIM_HUB01. Exception: org.apache.http.client.HttpResponseException: 
Mar 14 09:57:06:303 ERROR [ForkJoinPool-192-worker-1, apm_bridge] org.apache.http.client.HttpResponseException: 
    at org.apache.http.impl.client.AbstractResponseHandler.handleResponse(AbstractResponseHandler.java:70)
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:223)
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:165)
    at com.uim.probe.bridge.apm.uimapi.UimApiClient.fetchAllUimDevices(UimApiClient.java:238)
    at com.uim.probe.bridge.apm.inventory.APMInventoryService.harvestAllUimDevices(APMInventoryService.java:1061)
    at com.uim.probe.bridge.apm.inventory.APMInventoryService.inventoryProcessWithoutCsFilter(APMInventoryService.java:384)
    at com.uim.probe.bridge.apm.inventory.APMInventoryService.lambda$runOneIteration$0(APMInventoryService.java:205)
    at java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1402)
    at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
    at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
    at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
    at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:175)

UIMAPI log:

2023-03-14 10:47:05.746 [http-nio-80-exec-6]  ERROR com.ca.uimapi.services.controller.DevicesResource:getDevices:401 controller.DevicesResource - getDevices failed: 
java.lang.IllegalStateException: Pool not open

Environment

  • Release: UIM 20.4 CU6
  • UIMAPI v20.46
  • apm_bridge v1.09
  • oi_connector 1.50

Cause

  • Unknown

Resolution

  1. Uninstall OC
  2. Delete the OC wasp folder
  3. Reinstall OC
  4. Redeploy UIMAPI v20.4 to the OC robot
  5. Now all the API calls are working, including the GetDevices.
  6. Delete the profile in the apm_bridge and create a new profile with a fresh token

Errors have now disappeared in the apm_bridge log, and the post to https://<DomainName>/tas/graph/query using Postman now returns 260 vertices and the DX dashboard shows the expected 260 discovered devices. 

Also, in the Edit/Create Service within DX OI we then saw the groups and the virtual machine IPs which are monitored in UIM.