A Python package for visualizing ACI vetR JSON data from vetr-collector
This tool summarizes data from any APIC collected by vetr-collector.
This tool processes data collected by vetr-collector for the ACI health check and displays it in a pretty HTML tabluar format. This tool can also be run from any computer having aci-vetr-data
collected from any APIC.
In vetr-collector
v3.3.0, the aci-vetr-data
directory you get from includes around 91 JSON files.
$ ls aci-vetr-data
apPlugin.json
bgpRRNodePEp.json
configRsRemotePath.json
coopPol.json
ctxClassCnt.json
datetimeNtpProv.json
datetimePol.json
epControlP.json
epIpAgingP.json
epLoopProtectP.json
...
<output_truncated>
A sample preview of the output HTML
This tool visualizes data collection for the ACI health check from vetr-collector.
Once the analysis is complete, the tool creates a vetr-summary.html
file. This file displays the raw JSON data in a DataTable tabular format. DataTable adds the ability to easily search for properties in concern.
Almost all MOs include unnecessary configuration properties. Some of these properties: extMngdBy
, childAction
, userdom
, etc. These unnecessary properties (key-value pairs) are excluded from the report for a neater representation of the output in the HTML file.
All excluded keys can be found in
config/excluded_keys
file. You can also customize these keys-to-exclude according to your own case. An empty excluded_keys file will not exclude any keys.
Raw JSON files with empty
imdata
(i.e."[]"
) andtotalCount
equal to"0"
are not presented in the HTMLvetr-summary.html
summary report.
Install from PyPi
System-wide
$ pip install --user vetr-summarizer
Virtual Environment
$ python3 -m venv .venv
$ source .venv/bin/activate .
(.venv)$ pip install vetr-summarizer
Both keyword arguments are optional. Currently
html
is the only supported output format.
$ vetr-summarizer --help
usage: vetr-summarizer [-h] [-f {html}] [-x EXCLUDED_KEYS_FILE] [-v] directory
Process and summarize aci-vetr-data JSON files into HTML reports.
positional arguments:
directory A path to the directory containing the JSON files.
options:
-h, --help show this help message and exit
-f {html}, --format {html}
Output format (default: html)
-x EXCLUDED_KEYS_FILE, --excluded-keys-file EXCLUDED_KEYS_FILE
File with keys to exclude from raw JSON files. (default: excluded_keys)
-v, --version show program's version number and exit
Thanks for using vetr-summarizer! :)
$ vetr-summarizer "/path/to/aci-vetr-data"
HTML output is written to /path/to/vetr-summary.html
With custom excluded keys
$ vetr-summarizer -x custom_excluded_keys "/path/to/aci-vetr-data"
HTML output is written to '/path/to/vetr-summary.html'
I was once going through the Cisco Community searching for an answer to my ACI fabric issue, and I came across that question: VetR Zip logs, what is actually vetr zip logs?
So, I decided to try vetr-collector
on an environment. But, I had to open each JSON file to check whether it has objects or not and read the entire JSON file if it has valuable data, and that was time-consuming. So, I made this package to summarize the output from vetr-collector
in a pretty HTML tabular format.
As there is always a room for imporovment, you are welcome to contribute to vetr-summarizer
.