Monitoring Tasks
How to access trail-info on a particular MAC?
Step: Use showcommand API and use CLI command: show ap trail-info
API: GET /object/show ap trail-info
URL: https://1.1.1.10:4343/v1/configuration/showcommand?command=show+ap+client+trail-info+&UIDARUBA=xxxx
JSON input: No input required
Expected Response:
JSON formatted data having the following as lists:
- Alerts
- Client Trail Info
- Deauth Reason
- Mobility Trail
How to use configuration on a node to parse and check controller config deviation from best practice?
Step: Get the full configuration of a node and then parse relevant information.
URL: https://1.1.1.10:4343/v1/configuration/object/config?config_path=&type=&UIDARUBA=xxxx
JSON input: No input required
= type of configuration needed
Values for are as follows:
pending
committed
local
committed, local
How to track if Config push happened to all controllers after POST API in Mobility Conductor at a certain config path
Answer: 200 Success HTTP code returned by the POST API request doesn’t mean the config is pushed to all the controllers in mentioned config path. Use showcommand API (/v1/configuration/showcommand) to execute CLI based “show switches” command. Based on Config ID and Configuration State, we can know if the config is in sync with all/required controllers after POST. Config ID for all controllers will increase regardless of change to a specific controller.
Step: Use showcommand API
API: GET /v1/configuration/showcommand
URL: https://1.1.1.10:4343/v1/configuration/showcommand?UIDARUBA=xxxx&command=show+switches
None
{
"All Switches": [
{
"Config ID": "214",
"Config Sync Time (sec)": "0",
"Configuration State": "UPDATE SUCCESSFUL",
"IP Address": "1.1.124.1",
"IPv6 Address": "None",
"Location": "Building1.floor1",
"Model": "ArubaMM-VA",
"Name": "ARUBA-MM",
"Status": "up",
"Type": "master",
"Version": "8.5.0.0_70258"
},
{
"Config ID": "201",
"Config Sync Time (sec)": "0",
"Configuration State": "NO MM LICENSE",
"IP Address": "1.1.124.2",
"IPv6 Address": "None",
"Location": "Building1.floor1",
"Model": "ArubaMC-VA",
"Name": "ArubaMC-VA",
"Status": "down",
"Type": "MD",
"Version": "8.5.0.0_70258"
}
],
"_data": [
"2"
],
"_meta": [
"IP Address",
"IPv6 Address",
"Name",
"Location",
"Type",
"Model",
"Version",
"Status",
"Configuration State",
"Config Sync Time (sec)",
"Config ID"
]
}
Updated about 4 years ago
To find out more on how to use APIs in playbooks using Ansible as your automation tool: