The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

App::Netdisco::Util::Graph

SYNOPSIS

 $ brew install graphviz   <-- install graphviz on your system
 
 $ ~/bin/localenv bash
 $ cpanm --notest Graph GraphViz
 $ mkdir ~/graph
 
 use App::Netdisco::Util::Graph;
 graph;

DESCRIPTION

Generate GraphViz output from Netdisco data. Requires that the Graph and GraphViz distributions be installed.

Requires the same config as for Netdisco 1, but within a graph key. See share/config.yml in the source distribution for an example.

The graph subroutine is exported by default. The :all tag will export all subroutines.

EXPORT

graph()

Creates netmap of network.

EXPORT_OK

graph_each($graph_obj, $name)

Generates subgraph. Does actual GraphViz calls.

graph_addnode($graphviz_obj, $node_ip)

Checks for mapping settings in config file and adds node to the GraphViz object.

make_graph()

Returns Graph::Undirected object that represents the discovered network.

Graph is made by loading all the device_port entries that have a neighbor, using them as edges. Then each device seen in those entries is added as a vertex.

Nodes without topology information are not included.