go-httpstat is a golang package to trace golang HTTP request latency (DNSLookup, TCP Connection and so on). Because it uses
httptrace internally, just creating
context and giving it your
http.Request kicks tracing (no big code modification is required). The original idea came from
httpstat command ( and Dave Cheney's golang implementation)
See usage and example on GoDoc.
httptrace was introduced after go1.7, this package may not work with old HTTP client. Especially, if you don't use
net.DialContext it can not trace DNS and connection.
$ go get github.com/tcnksm/go-httpstat