kubo/diagnostics
Juan Batiz-Benet c64338a816 diag/net: io must respect timeout ctx
See the discussion below. A future commit will implement the closer
change below, and rebase this one on top.

<•jbenet> `n.Diagnostics.GetDiagnostic(time.Second * 20)` is not being respected. should it use a context instead? or is it a timeout because the timeout is sent to other nodes?
<•jbenet> oh it's that the io doesnt respect the context so we're stuck waiting for responses.
<•jbenet> this is that complex interface point between the world of contexts, and the world of io. ctxutil.Reader/Writer is made for this, but you have to make sure to defer close the stream. (see how dht_net uses it). i'd love to find a safer interface. not sure what it is, but we have to a) respect contexts, and b) allow using standard io.Reader/Writers. Maybe TRTTD
<•jbenet> is have ctxutil.Reader/Writer take ReadCloser and WriteClosers and always close them. the user _must_ pass an ioutil. NopCloser to avoid ctxutil closing on you when you dont want it to.
<•jbenet> this seems safer to me in the general case.
2015-01-23 02:08:28 -08:00
..
internal/pb fix(diag) rename proto package -> diagnostics_pb 2014-10-22 15:54:18 -07:00
diag.go diag/net: io must respect timeout ctx 2015-01-23 02:08:28 -08:00
README.md Moved out d3view 2015-01-16 11:30:10 -08:00
vis.go diag/net: more powerfil d3 vis 2015-01-16 02:12:24 -08:00

ipfs diagnostics

Usage:

ipfs diag net [--vis=<vis>]

view in d3

Install https://github.com/jbenet/ipfs-diag-net-d3-vis then:

> ipfs diag net --vis=d3 | d3view
http://ipfs.benet.ai:8080/ipfs/QmX8PuUyhSet8fppZHuRNxG7vk949z7XDxnsAz3zN77MGx#QmdhRqGea2QEzyKHG9Zhkc12d2994iah1h47tfHJifuzhT