fgprof: github.com/felixge/fgprof Index | Files | Directories

package fgprof

import "github.com/felixge/fgprof"

fgprof is a sampling Go profiler that allows you to analyze On-CPU as well as [Off-CPU](http://www.brendangregg.com/offcpuanalysis.html) (e.g. I/O) time together.


Package Files

fgprof.go format.go handler.go pprof.go

func Handler Uses

func Handler() http.Handler

Handler returns an http handler that takes an optional "seconds" query argument that defaults to "30" and produces a profile over this duration. The optional "format" parameter controls if the output is written in Google's "pprof" format (default) or Brendan Gregg's "folded" stack format.

func Start Uses

func Start(w io.Writer, format Format) func() error

Start begins profiling the goroutines of the program and returns a function that needs to be invoked by the caller to stop the profiling and write the results to w using the given format.

type Format Uses

type Format string

Format decides how the ouput is rendered to the user.

const (
    // FormatFolded is used by Brendan Gregg's FlameGraph utility, see
    // https://github.com/brendangregg/FlameGraph#2-fold-stacks.
    FormatFolded Format = "folded"
    // FormatPprof is used by Google's pprof utility, see
    // https://github.com/google/pprof/blob/master/proto/README.md.
    FormatPprof Format = "pprof"



Package fgprof imports 9 packages (graph) and is imported by 12 packages. Updated 2020-12-14. Refresh now. Tools for package owners.