Delve
What is Delve?
Delve is a Go debugger, written in Go.
Building
Currently, Delve requires the following patch, however this change is vendored until Go 1.4 lands, so the project is go get-able.
For invocation brevity, I prefer this:
$ go build -o dlv && mv dlv $GOPATH/bin
Features
- Attach to an already running process
- Launch a process and begin debug session
- Set breakpoints, single step, step over functions, print variable contents
Usage
The debugger can be launched in three ways:
- 
Compile, run, and attach in one step: $ dlv -run
- 
Provide the name of the program you want to debug, and the debugger will launch it for you. $ dlv -proc path/to/program
- 
Provide the pid of a currently running process, and the debugger will attach and begin the session. $ sudo dlv -pid 44839
Once inside a debugging session, the following commands may be used:
- 
break- Set break point at the entry point of a function, or at a specific file/line. Example:break foo.go:13.
- 
continue- Run until breakpoint or program termination.
- 
step- Single step through program.
- 
next- Step over to next source line.
- 
print $var- Evaluate a variable.
Upcoming features
- In-scope variable setting
- Support for OS X
License
MIT
