Go 1.7 introduces
net/http/httptrace package. That provides mechanisms for tracing within HTTP requests. Since it only provides the low level struct to set hooks for various states of request, you need to write logging or displaying part by yourself.
go-httptraceutils is a small helper package for logging out each hook info of
httptrace. See example.
$ go get github.com/tcnksm/go-httptraceutils