
Due to some very old mistakes too many of Delve's flags are declared as persistent on cobra's root command. For example the headless flag is a global flag but does not apply to connect, dap or trace; the backend flag does not apply to replay, core and dap; etc. Almost all global flags should have been declared as local flags on individual subcommands. Unfortunately we can not change this without breaking backwards compatibility, for example: dlv --headless debug would not parse if headless was a flag of debug instead of a global flag. Instead we alter usage function and the markdown generation script to strategically hide the flags that don't apply. Fixes #2361
1.5 KiB
dlv
Delve is a debugger for the Go programming language.
Synopsis
Delve is a source level debugger for Go programs.
Delve enables you to interact with your program by controlling the execution of the process, evaluating variables, and providing information of thread / goroutine state, CPU register state and more.
The goal of this tool is to provide a simple yet powerful interface for debugging Go programs.
Pass flags to the program you are debugging using --
, for example:
dlv exec ./hello -- server --config conf/config.toml
Options
-h, --help help for dlv
SEE ALSO
-
dlv attach - Attach to running process and begin debugging.
-
dlv connect - Connect to a headless debug server with a terminal client.
-
dlv core - Examine a core dump.
-
dlv dap - Starts a headless TCP server communicating via Debug Adaptor Protocol (DAP).
-
dlv debug - Compile and begin debugging main package in current directory, or the package specified.
-
dlv exec - Execute a precompiled binary, and begin a debug session.
-
dlv replay - Replays a rr trace.
-
dlv test - Compile test binary and begin debugging program.
-
dlv trace - Compile and begin tracing program.
-
dlv version - Prints version.
-
dlv log - Help about logging flags
-
dlv backend - Help about the
--backend
flag