You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Anis Elleuch 9531cddb06 Add Profiler Admin API (#6463) 6 years ago
..
AUTHORS server: Enable server profiling as needed. (#1565) 9 years ago
LICENSE server: Enable server profiling as needed. (#1565) 9 years ago
README.md Add Profiler Admin API (#6463) 6 years ago
mutex.go Add Profiler Admin API (#6463) 6 years ago
mutex17.go Add Profiler Admin API (#6463) 6 years ago
profile.go Add Profiler Admin API (#6463) 6 years ago
trace.go Add Profiler Admin API (#6463) 6 years ago
trace16.go Add Profiler Admin API (#6463) 6 years ago

README.md

profile

Simple profiling support package for Go

Build Status GoDoc

installation

go get github.com/pkg/profile

usage

Enabling profiling in your application is as simple as one line at the top of your main function

import "github.com/pkg/profile"

func main() {
    defer profile.Start().Stop()
    ...
}

options

What to profile is controlled by config value passed to profile.Start. By default CPU profiling is enabled.

import "github.com/pkg/profile"

func main() {
    // p.Stop() must be called before the program exits to
    // ensure profiling information is written to disk.
    p := profile.Start(profile.MemProfile, profile.ProfilePath("."), profile.NoShutdownHook)
    ...
}

Several convenience package level values are provided for cpu, memory, and block (contention) profiling.

For more complex options, consult the documentation.

contributing

We welcome pull requests, bug fixes and issue reports.

Before proposing a change, please discuss it first by raising an issue.