Export an Azure Application Gateway (and its associated WAF policy) to a hierarchical JSON file and explore it as an interactive graph in the browser.
The project has two parts:
Dump-AzAppGWInfo.ps1— a PowerShell function that reads a gateway with the Az modules and writes a nesteddata/<gateway>-appgw.jsonexport, with live backend health included.- A Flask app (
app.py) — renders any export as a pan/zoom node graph with a details panel, at http://localhost:5999.
- PowerShell with the Az modules:
Install-Module Az.Accounts, Az.Network, Az.Resources - Python 3.9+ (the start script creates a local
.venvautomatically) - git clone https://github.com/itoleck/AzAppGWVisualizer.git
Runs the whole flow — sign in, pick a gateway, export it, and open the visualizer:
.\Example.ps1Export a gateway, then start the visualizer:
# 1. Load the function and export a gateway to data\<gateway>-appgw.json
. .\Dump-AzAppGWInfo.ps1
Get-AzApplicationGateway -Name myAppGw -ResourceGroupName myRg | Dump-AzAppGWInfo
# 2. Start the app (creates .venv, installs requirements, serves on :5999)
.\start.ps1Then open http://localhost:5999 and pick your export (or any bundled sample)
from the dropdown. Uploading a .json file also works.
The Application Gateway sits at the top of the hierarchy, connected to its
frontend IPs, listeners, routing rules, backend settings, backend pools /
targets, SSL certificates, health probes, and the WAF policy. Backend targets
whose live health probe is not Healthy are drawn as red error nodes.