Description
Traceanal is the visualization tool that displays the summary table (HTML) of archived IEPM traceroute results. The data is visualized using Simile Exhibit framework (http://simile.mit.edu/exhibit/).
Functionality
There are two files that needs to be deployed.
- traceanal.pl: It is the CGI script that takes destination IP/Names and no. of hours of traceroutes to be analyzed. It only prints HTML in an Exhibit format to display traceroutes. It fetch the data in a form of JavaScript Object Notation (JSON) and plot that data using external API (Exhibit) in a form of Html Table.
- traceroute_json.pl: The CGI that gets the hour and dest parameter from traceanal.pl and fetch traceroutes for that specific hour from IEPM database. It then parse that traceroutes into JSON and prints it.
Packages and Libraries Used
- IEPM-DB library: This perl library is used to fetch and parse traceroute data from iepm database
- Exhibit API 1.0: This is external JavaScript Library linked to (http://static.simile.mit.edu/exhibit/api/exhibit-api.js). The API accept data in JSON format and visualized the data in any format without writing a bunch of HTML lines. It also simplifies the debugging and maintenance issues by decreasing the no. of html lines of actual code. The API is tested using firebug (www.firebug.com).
- WZ_Tooltip: This is another JavaScript API that shows the Graphiz visualization of traceroute in an HTML popup. The link to the library is internal.
- Topology.pl: The CGI script implemented by Yee-Ting Li to visualize the traceroute(s) using Graphiz. The current link to script is from my local machine i.e. (http://aegir.slac.stanford.edu/cgi-bin/traceroute_topology.pl).
Detail Code Explanation
- /afs/slac.stanford.edu/u/sg/lonex/traceanal/iepm/trunk/lib/IEPM/Tools/Traceroute.pm
TODO:
- Find and change the link of topology.pl link in traceanal.pl.
Source Code:
The code is also committed to SVN. One can get the source code using the following commands.
svn co file:///afs/slac.stanford.edu/g/scs/net/netmon/repo/svn/topology svn co file:///afs/slac.stanford.edu/g/scs/net/netmon/repo/svn/iepm svn co file:///afs/slac.stanford.edu/g/scs/net/netmon/repo/svn/iepm-bw
The current version of traceanal.pl and traceroute_json.pl scripts are placed in (/afs/slac/g/scs/net/netmon/projects/iepm/topology/trunk/bin/). The required images, CSS and javascript are placed at (/afs/slac.stanford.edu/g/www/www-iepm/monitoring/files) and (/afs/slac.stanford.edu/g/www/www-iepm/monitoring/images/traceanal).