Skip to main content

A Python package for visualizing ACI vetR JSON data

Project description

published PyPI - Python Version Code style: black Imports: isort PyPI - License PyPI - Version PyPI - Status Pepy Total Downlods Commit Activity Say Thanks!

vetR Summarizer

A Python package for visualizing ACI vetR JSON data from vetr-collector

Table of Contents

ACI

What is vetR Summarizer?

This tool summarizes data from any APIC collected by vetr-collector.

Objective

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

Preview

How it works

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. "[]") and totalCount equal to "0" are not presented in the HTML vetr-summary.html summary report.

Installation

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

Usage

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'

Use Case

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?

Question

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.

Author(s)

Osama Abbas

Contributions

As there is always a room for imporovment, you are welcome to contribute to vetr-summarizer.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vetr_summarizer-0.3.4.tar.gz (13.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vetr_summarizer-0.3.4-py3-none-any.whl (16.1 kB view details)

Uploaded Python 3

File details

Details for the file vetr_summarizer-0.3.4.tar.gz.

File metadata

  • Download URL: vetr_summarizer-0.3.4.tar.gz
  • Upload date:
  • Size: 13.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.9

File hashes

Hashes for vetr_summarizer-0.3.4.tar.gz
Algorithm Hash digest
SHA256 131894072aa477d96c9282bbc81a8cf604b8ccbd04490d6b55ed4348ef06901a
MD5 2a8002c10304cd2f0d68bc391331932b
BLAKE2b-256 4337ec0d50ff11f9bd4f7373b99488ce78d63cf860f8a629275919f472cc6371

See more details on using hashes here.

File details

Details for the file vetr_summarizer-0.3.4-py3-none-any.whl.

File metadata

File hashes

Hashes for vetr_summarizer-0.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 dd1a5f99fcb233df4e0d0a7e077101f7ced1f7d55fbf752b9468a0ccc5757d41
MD5 b1abb6aa59374e937ef4f3156e95ba74
BLAKE2b-256 d6f4b02b2bb35faeb68fba32c88fcd56d76a5fc4cc3927628e9ba66001cda8ed

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page