cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
418
Views
1
Helpful
3
Replies

ServiceNow Cisco ACI Application integration - errors, data missing

michael-bourla
Level 1
Level 1

We use the Cisco ACI Application to bring data into our ServiceNow instance from Cisco ACI.  We've had it running for several years.  Recently we are seeing some errors in the Application Logs, and we appear to not be getting data coming into ServiceNow for leafs, spines and controllers. 

The Cisco ACI Dashboard in the ServiceNow application shows 0 for those device types:

michaelbourla_0-1723134057070.png

The errors we see multiple times in Diagnostics > Application Logs are:

MessageApp ScopeSource Script
Error while processing bundleCisco ACI ApplicationBusiness Rule: Process ACI Inventory Bundle
Error while reading attachment. Exception:SyntaxError: Empty JSON stringCisco ACI ApplicationBusiness Rule: Process ACI Inventory Bundle

Does anyone know what might be causing those errors, and why we're not getting data coming through into ServiceNow for those 3 device types?

Thanks
Michael

3 Replies 3

AshSe
Level 4
Level 4

Hello @michael-bourla 

The errors you're encountering in the ServiceNow application logs suggest that there is an issue with the data being received from Cisco ACI. Specifically, the error "SyntaxError: Empty JSON string" indicates that the JSON payload being processed is empty or malformed. This can cause the data import process to fail, resulting in the absence of data for leafs, spines, and controllers in your ServiceNow instance.

 

Here are some steps to troubleshoot and resolve the issue:

 

1. Verify Data Export from Cisco ACI:

 

Ensure that Cisco ACI is correctly exporting the data. Check the following:

 

  • API Endpoints: Verify that the API endpoints used to fetch data from Cisco ACI are still valid and accessible.
  • Data Format: Ensure that the data being exported is in the correct JSON format and is not empty.

 

2. Check Network Connectivity:

Ensure that there are no network connectivity issues between Cisco ACI and ServiceNow. Any disruptions in the network can cause data transfer failures.

 

3. Review ServiceNow Integration Configuration:

Check the configuration settings in the Cisco ACI application within ServiceNow:

 

  • API Credentials: Ensure that the API credentials used to connect to Cisco ACI are still valid and have the necessary permissions.
  • Endpoint URLs: Verify that the endpoint URLs configured in ServiceNow are correct and have not changed.

 

4. Inspect the Application Logs:

Review the detailed logs in ServiceNow to get more context about the errors:

 

  • Diagnostics > Application Logs: Look for any additional error messages or warnings that might provide more insight into the issue.
  • Business Rule: Process ACI Inventory Bundle: Check the script associated with this business rule to ensure it is correctly handling the data.

 5. Test API Calls Manually:

Manually test the API calls from Cisco ACI to ServiceNow to ensure that the data is being fetched correctly:

 

  • Use tools like curl or Postman to make API requests to Cisco ACI and inspect the responses.
  • Ensure that the responses contain valid JSON data and are not empty.

 

6. Update or Reinstall the Cisco ACI Application:

If the issue persists, consider updating or reinstalling the Cisco ACI application in ServiceNow:

  • Update: Check if there are any updates available for the Cisco ACI application in the ServiceNow Store and apply them.
  • Reinstall: If updating does not resolve the issue, try reinstalling the application to ensure that all components are correctly configured.

 

7. Contact Cisco and ServiceNow Support:

If you are unable to resolve the issue through the above steps, consider reaching out to Cisco and ServiceNow support for further assistance. Provide them with the detailed error logs and any other relevant information to help diagnose the problem.

 

Example of Manual API Call Testing:

 

Using curl to test the API call:

 

curl -k -u <username>:<password> https://<APIC-IP>/api/node/class/fabricNode.json

 

Using Postman to test the API call:

  1. Open Postman and create a new GET request.
  2. Enter the URL: https://<APIC-IP>/api/node/class/fabricNode.json
  3. Set the authorization type to Basic Auth and enter your username and password.
  4. Send the request and inspect the response.

 

AshSe

Please rate this post if it was helpful; your feedback is appreciated!

 

Hi @AshSe ,

Many thanks for all that information - it is definitely going to be really helpful.  No doubt there's been some sort of configuration change somewhere that's causing the problem, and just need to track it down.  As you say, with help if needed from Cisco and/or ServiceNow.

Many thanks again!

Dear Michael, I am glad that I could help you. 

Review Cisco Networking for a $25 gift card

Save 25% on Day-2 Operations Add-On License