Traceroute to Graphviz: Difference between revisions
From Federal Burro of Information
Jump to navigationJump to search
No edit summary |
No edit summary |
||
Line 17: | Line 17: | ||
send all this awk output to a file, then wrap it in a graphviz header, and close the graph... then run graphviz on it... and .. well voila pending. | send all this awk output to a file, then wrap it in a graphviz header, and close the graph... then run graphviz on it... and .. well voila pending. | ||
for vi find replace: | |||
( | :s:^:awk '{if ( length(last) > 0 \&\& ( $2 != "*" ) ) {print "\\"" last "\\"->\\"" $3"\\\\n"$2"\\" [ color=\\":g | ||
:s:<control-v><tab>:\\"];"} ; last=$3"\\\\n"$2}' :g | |||
escapes are escaped, sigh. |
Revision as of 20:25, 26 January 2010
Traceroute from various places to your destination, dump the resu;ts to a file.
then awk it up yo!
awk '{if ( length(last) > 0 && ( $2 != "*" ) ) {print "\"" last "\"->\"" $3"\\n"$2"\" [ color=\"red\"];"} ; last=$3"\\n"$2}' trace1.out awk '{if ( length(last) > 0 && ( $2 != "*" ) ) {print "\"" last "\"->\"" $3"\\n"$2"\" [ color=\"green\"];"} ; last=$3"\\n"$2}' trace1.out awk '{if ( length(last) > 0 && ( $2 != "*" ) ) {print "\"" last "\"->\"" $3"\\n"$2"\" [ color=\"blue\"];"} ; last=$3"\\n"$2}' trace1.out awk '{if ( length(last) > 0 && ( $2 != "*" ) ) {print "\"" last "\"->\"" $3"\\n"$2"\" [ color=\"black\"];"} ; last=$3"\\n"$2}' trace1.out awk '{if ( length(last) > 0 && ( $2 != "*" ) ) {print "\"" last "\"->\"" $3"\\n"$2"\" [ color=\"orange\"];"} ; last=$3"\\n"$2}' trace1.out awk '{if ( length(last) > 0 && ( $2 != "*" ) ) {print "\"" last "\"->\"" $3"\\n"$2"\" [ color=\"salmon\"];"} ; last=$3"\\n"$2}' trace1.out awk '{if ( length(last) > 0 && ( $2 != "*" ) ) {print "\"" last "\"->\"" $3"\\n"$2"\" [ color=\"yellow\"];"} ; last=$3"\\n"$2}' trace1.out awk '{if ( length(last) > 0 && ( $2 != "*" ) ) {print "\"" last "\"->\"" $3"\\n"$2"\" [ color=\"darkgreen\"];"} ; last=$3"\\n"$2}' trace1.out awk '{if ( length(last) > 0 && ( $2 != "*" ) ) {print "\"" last "\"->\"" $3"\\n"$2"\" [ color=\"thistle2\"];"} ; last=$3"\\n"$2}' trace1.out
send all this awk output to a file, then wrap it in a graphviz header, and close the graph... then run graphviz on it... and .. well voila pending.
for vi find replace:
- s:^:awk '{if ( length(last) > 0 \&\& ( $2 != "*" ) ) {print "\\"" last "\\"->\\"" $3"\\\\n"$2"\\" [ color=\\":g
- s:<control-v><tab>:\\"];"} ; last=$3"\\\\n"$2}' :g
escapes are escaped, sigh.