закешированный к нам в целях безопасности дебаггер
Go to file
2014-10-25 11:07:12 -05:00
_fixtures Improve support for int variable evaluation 2014-10-25 11:07:12 -05:00
command Add 'help' command 2014-10-20 12:06:36 -05:00
dwarf Rename project 2014-10-15 09:28:22 -05:00
goreadline Save readline history 2014-09-21 18:59:19 -05:00
helper (Mostly) working multithreaded tracing implementation 2014-10-25 08:59:22 -05:00
proctl Improve support for int variable evaluation 2014-10-25 11:07:12 -05:00
vendor Rename project 2014-10-15 09:28:22 -05:00
.gitignore Ignore tag files 2014-09-29 20:25:45 -05:00
LICENSE Add License and README 2014-05-03 15:31:52 -05:00
main_test.go (Mostly) working multithreaded tracing implementation 2014-10-25 08:59:22 -05:00
main.go (Mostly) working multithreaded tracing implementation 2014-10-25 08:59:22 -05:00
README.md Update README.md 2014-10-20 11:58:56 -05:00

Delve

What is Delve?

Delve is a Go debugger, written primarily 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.

Features

  • Attach to (trace) a running process
  • Ability to launch a process and begin debugging it
  • Set breakpoints
  • Single step through a process
  • Next through a process (step over / out of subroutines)
  • Never retype commands, empty line defaults to previous command
  • Readline integration

Usage

The debugger can be launched in three ways:

  • Allow it to compile, run, and attach to a program:

    $ 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

  • Handle Gos multithreaded nature better
  • In-scope variable evaluation
  • In-scope variable setting
  • Support for OS X

License

MIT