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!

Table of Contents

  1. vetR Summarizer
  2. Objective
  3. How it Works
  4. Installation
  5. Usage
  6. Use Case

ACI

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.

The aci-vetr-data directory you get from vetr-collector v3.3.0 includes 91 raw 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 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 and found a question, what is actually vetr zip logs?

Question

So, I decided to try vetr-collector on an environment. But, I got to open each raw JSON file to check whether it has objects and was time-consuming going through all the files. So, I made this package to summarize the output from vetr-collector in a pretty HTML tabular format.

Author

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.0.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

vetr_summarizer-0.3.0-py3-none-any.whl (12.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vetr_summarizer-0.3.0.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for vetr_summarizer-0.3.0.tar.gz
Algorithm Hash digest
SHA256 d104b1abe8160d59a1b2e5cf3f8646f71f84c20e19c4f456c05775cede21a497
MD5 a02882239a7f0487ff8297eaf9a65093
BLAKE2b-256 7e776ac4ed9fb2775637d8fe0cead794e6b625081a7b40f9e4734f235d50fd21

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for vetr_summarizer-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 70163b8b444ee9c7e8271b89e5e8dfafb50cabcfec91d6a2761d791a38fd5cd4
MD5 1ef1f5c585dc9b10dd16b93b8f0d6092
BLAKE2b-256 5d9668d622b4eafaae75ac0d72c136b9b96ce90d17151a1949d8033a67d3bf64

See more details on using hashes here.

Supported by

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