kaspad/util/profiling/profiling.go
stasatdaglabs 8a4ece1101
[NOD-1223] Reorganize project (#868)
* [NOD-1223] Move all network stuff into a new network package.

* [NOD-1223] Delete the unused package testutil.

* [NOD-1223] Move infrastructure stuff into a new instrastructure package.

* [NOD-1223] Move domain stuff into a new domain package.
2020-08-13 17:27:25 +03:00

25 lines
622 B
Go

package profiling
import (
"net"
"net/http"
// Required for profiling
_ "net/http/pprof"
"github.com/kaspanet/kaspad/infrastructure/logs"
"github.com/kaspanet/kaspad/util/panics"
)
// Start starts the profiling server
func Start(port string, log *logs.Logger) {
spawn := panics.GoroutineWrapperFunc(log)
spawn("profiling.Start", func() {
listenAddr := net.JoinHostPort("", port)
log.Infof("Profile server listening on %s", listenAddr)
profileRedirect := http.RedirectHandler("/debug/pprof", http.StatusSeeOther)
http.Handle("/", profileRedirect)
log.Error(http.ListenAndServe(listenAddr, nil))
})
}