whatcanGOwrong
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
# Using Delve
|
||||
|
||||
You can invoke Delve in [multiple ways](dlv.md), depending on your usage needs. Delve makes every attempt to be user-friendly, ensuring the user has to do the least amount of work possible to begin debugging their program.
|
||||
|
||||
The [available commands](dlv.md) can be grouped into the following categories:
|
||||
|
||||
* Specify target and start debugging with the default [terminal interface](../cli/README.md):
|
||||
* [dlv debug [package]](dlv_debug.md)
|
||||
* [dlv test [package]](dlv_test.md)
|
||||
* [dlv exec \<exe\>](dlv_exec.md)
|
||||
* [dlv attach \<pid\>](dlv_attach.md)
|
||||
* [dlv core \<exe\> \<core\>](dlv_core.md)
|
||||
* [dlv replay \<rr trace\> ](dlv_replay.md)
|
||||
* Trace target program execution
|
||||
* [dlv trace [package] \<regexp\>](dlv_trace.md)
|
||||
* Start a headless backend server only and connect with an external [frontend client](../EditorIntegration.md):
|
||||
* [dlv **--headless** \<command\> \<target\> \<args\> ](../api/ClientHowto.md#spawning-the-backend)
|
||||
* starts a server, enters a debug session for the specified target and waits to accept a client connection over JSON-RPC or DAP
|
||||
* `<command>` can be any of `debug`, `test`, `exec`, `attach`, `core` or `replay`
|
||||
* if `--headless` flag is not specified the default [terminal client](../cli/README.md) will be automatically started instead
|
||||
* compatible with [dlv connect](dlv_connect.md), [VS Code Go](https://github.com/golang/vscode-go/blob/master/docs/debugging.md#remote-debugging), [GoLand](https://www.jetbrains.com/help/go/attach-to-running-go-processes-with-debugger.html#attach-to-a-process-on-a-remote-machine)
|
||||
* [dlv dap](dlv_dap.md)
|
||||
* starts a DAP-only server and waits for a DAP client connection to specify the target and arguments
|
||||
* compatible with [VS Code Go](https://github.com/golang/vscode-go/blob/master/docs/debugging.md#remote-debugging)
|
||||
* NOT compatible with [dlv connect](dlv_connect.md), [GoLand](https://www.jetbrains.com/help/go/attach-to-running-go-processes-with-debugger.html#attach-to-a-process-on-a-remote-machine)
|
||||
* [dlv connect \<addr\>](dlv_connect.md)
|
||||
* starts a [terminal interface client](../cli/README.md) and connects it to a running headless server over JSON-RPC
|
||||
* Help information
|
||||
* [dlv help [command]](dlv.md)
|
||||
* [dlv log](dlv_log.md)
|
||||
* [dlv backend](dlv_backend.md)
|
||||
* [dlv redirect](dlv_redirect.md)
|
||||
* [dlv version](dlv_version.md)
|
||||
|
||||
The above list may be incomplete. Refer to the auto-generated [complete usage document](dlv.md) to further explore all available commands.
|
||||
|
||||
## Environment variables
|
||||
|
||||
Delve also reads the following environment variables:
|
||||
|
||||
* `$DELVE_EDITOR` is used by the `edit` command (if it isn't set the `$EDITOR` variable is used instead)
|
||||
* `$DELVE_PAGER` is used by commands that emit large output (if it isn't set the `$PAGER` variable is used instead, if neither is set `more` is used)
|
||||
* `$TERM` is used to decide whether or not ANSI escape codes should be used for colorized output
|
||||
* `$DELVE_DEBUGSERVER_PATH` is used to locate the debugserver executable on macOS
|
||||
@@ -0,0 +1,38 @@
|
||||
## 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](dlv_attach.md) - Attach to running process and begin debugging.
|
||||
* [dlv connect](dlv_connect.md) - Connect to a headless debug server with a terminal client.
|
||||
* [dlv core](dlv_core.md) - Examine a core dump.
|
||||
* [dlv dap](dlv_dap.md) - Starts a headless TCP server communicating via Debug Adaptor Protocol (DAP).
|
||||
* [dlv debug](dlv_debug.md) - Compile and begin debugging main package in current directory, or the package specified.
|
||||
* [dlv exec](dlv_exec.md) - Execute a precompiled binary, and begin a debug session.
|
||||
* [dlv replay](dlv_replay.md) - Replays a rr trace.
|
||||
* [dlv test](dlv_test.md) - Compile test binary and begin debugging program.
|
||||
* [dlv trace](dlv_trace.md) - Compile and begin tracing program.
|
||||
* [dlv version](dlv_version.md) - Prints version.
|
||||
|
||||
* [dlv log](dlv_log.md) - Help about logging flags
|
||||
* [dlv backend](dlv_backend.md) - Help about the `--backend` flag
|
||||
@@ -0,0 +1,48 @@
|
||||
## dlv attach
|
||||
|
||||
Attach to running process and begin debugging.
|
||||
|
||||
### Synopsis
|
||||
|
||||
Attach to an already running process and begin debugging it.
|
||||
|
||||
This command will cause Delve to take control of an already running process, and
|
||||
begin a new debug session. When exiting the debug session you will have the
|
||||
option to let the process continue or kill it.
|
||||
|
||||
|
||||
```
|
||||
dlv attach pid [executable] [flags]
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--continue Continue the debugged process on start.
|
||||
-h, --help help for attach
|
||||
--waitfor string Wait for a process with a name beginning with this prefix
|
||||
--waitfor-duration float Total time to wait for a process
|
||||
--waitfor-interval float Interval between checks of the process list, in millisecond (default 1)
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--accept-multiclient Allows a headless server to accept multiple client connections via JSON-RPC or DAP.
|
||||
--allow-non-terminal-interactive Allows interactive sessions of Delve that don't have a terminal as stdin, stdout and stderr
|
||||
--api-version int Selects JSON-RPC API version when headless. New clients should use v2. Can be reset via RPCServer.SetApiVersion. See Documentation/api/json-rpc/README.md. (default 1)
|
||||
--backend string Backend selection (see 'dlv help backend'). (default "default")
|
||||
--check-go-version Exits if the version of Go in use is not compatible (too old or too new) with the version of Delve. (default true)
|
||||
--headless Run debug server only, in headless mode. Server will accept both JSON-RPC or DAP client connections.
|
||||
--init string Init file, executed by the terminal client.
|
||||
-l, --listen string Debugging server listen address. Prefix with 'unix:' to use a unix domain socket. (default "127.0.0.1:0")
|
||||
--log Enable debugging server logging.
|
||||
--log-dest string Writes logs to the specified file or file descriptor (see 'dlv help log').
|
||||
--log-output string Comma separated list of components that should produce debug output (see 'dlv help log')
|
||||
--only-same-user Only connections from the same user that started this instance of Delve are allowed to connect. (default true)
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
|
||||
* [dlv](dlv.md) - Delve is a debugger for the Go programming language.
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
## dlv backend
|
||||
|
||||
Help about the --backend flag.
|
||||
|
||||
### Synopsis
|
||||
|
||||
The --backend flag specifies which backend should be used, possible values
|
||||
are:
|
||||
|
||||
default Uses lldb on macOS, native everywhere else.
|
||||
native Native backend.
|
||||
lldb Uses lldb-server or debugserver.
|
||||
rr Uses mozilla rr (https://github.com/mozilla/rr).
|
||||
|
||||
Some backends can be configured using environment variables:
|
||||
|
||||
* DELVE_DEBUGSERVER_PATH specifies the path of the debugserver executable for the lldb backend
|
||||
* DELVE_RR_RECORD_FLAGS specifies additional flags used when calling 'rr record'
|
||||
* DELVE_RR_REPLAY_FLAGS specifies additional flags used when calling 'rr replay'
|
||||
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
-h, --help help for backend
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--accept-multiclient Allows a headless server to accept multiple client connections via JSON-RPC or DAP.
|
||||
--allow-non-terminal-interactive Allows interactive sessions of Delve that don't have a terminal as stdin, stdout and stderr
|
||||
--api-version int Selects JSON-RPC API version when headless. New clients should use v2. Can be reset via RPCServer.SetApiVersion. See Documentation/api/json-rpc/README.md. (default 1)
|
||||
--backend string Backend selection (see 'dlv help backend'). (default "default")
|
||||
--build-flags string Build flags, to be passed to the compiler. For example: --build-flags="-tags=integration -mod=vendor -cover -v"
|
||||
--check-go-version Exits if the version of Go in use is not compatible (too old or too new) with the version of Delve. (default true)
|
||||
--disable-aslr Disables address space randomization
|
||||
--headless Run debug server only, in headless mode. Server will accept both JSON-RPC or DAP client connections.
|
||||
--init string Init file, executed by the terminal client.
|
||||
-l, --listen string Debugging server listen address. Prefix with 'unix:' to use a unix domain socket. (default "127.0.0.1:0")
|
||||
--log Enable debugging server logging.
|
||||
--log-dest string Writes logs to the specified file or file descriptor (see 'dlv help log').
|
||||
--log-output string Comma separated list of components that should produce debug output (see 'dlv help log')
|
||||
--only-same-user Only connections from the same user that started this instance of Delve are allowed to connect. (default true)
|
||||
-r, --redirect stringArray Specifies redirect rules for target process (see 'dlv help redirect')
|
||||
--wd string Working directory for running the program.
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
|
||||
* [dlv](dlv.md) - Delve is a debugger for the Go programming language.
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
## dlv connect
|
||||
|
||||
Connect to a headless debug server with a terminal client.
|
||||
|
||||
### Synopsis
|
||||
|
||||
Connect to a running headless debug server with a terminal client. Prefix with 'unix:' to use a unix domain socket.
|
||||
|
||||
```
|
||||
dlv connect addr [flags]
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
-h, --help help for connect
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--backend string Backend selection (see 'dlv help backend'). (default "default")
|
||||
--init string Init file, executed by the terminal client.
|
||||
--log Enable debugging server logging.
|
||||
--log-dest string Writes logs to the specified file or file descriptor (see 'dlv help log').
|
||||
--log-output string Comma separated list of components that should produce debug output (see 'dlv help log')
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
|
||||
* [dlv](dlv.md) - Delve is a debugger for the Go programming language.
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
## dlv core
|
||||
|
||||
Examine a core dump.
|
||||
|
||||
### Synopsis
|
||||
|
||||
Examine a core dump (only supports linux and windows core dumps).
|
||||
|
||||
The core command will open the specified core file and the associated
|
||||
executable and let you examine the state of the process when the
|
||||
core dump was taken.
|
||||
|
||||
Currently supports linux/amd64 and linux/arm64 core files, windows/amd64 minidumps and core files generated by Delve's 'dump' command.
|
||||
|
||||
```
|
||||
dlv core <executable> <core> [flags]
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
-h, --help help for core
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--accept-multiclient Allows a headless server to accept multiple client connections via JSON-RPC or DAP.
|
||||
--allow-non-terminal-interactive Allows interactive sessions of Delve that don't have a terminal as stdin, stdout and stderr
|
||||
--api-version int Selects JSON-RPC API version when headless. New clients should use v2. Can be reset via RPCServer.SetApiVersion. See Documentation/api/json-rpc/README.md. (default 1)
|
||||
--check-go-version Exits if the version of Go in use is not compatible (too old or too new) with the version of Delve. (default true)
|
||||
--headless Run debug server only, in headless mode. Server will accept both JSON-RPC or DAP client connections.
|
||||
--init string Init file, executed by the terminal client.
|
||||
-l, --listen string Debugging server listen address. Prefix with 'unix:' to use a unix domain socket. (default "127.0.0.1:0")
|
||||
--log Enable debugging server logging.
|
||||
--log-dest string Writes logs to the specified file or file descriptor (see 'dlv help log').
|
||||
--log-output string Comma separated list of components that should produce debug output (see 'dlv help log')
|
||||
--only-same-user Only connections from the same user that started this instance of Delve are allowed to connect. (default true)
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
|
||||
* [dlv](dlv.md) - Delve is a debugger for the Go programming language.
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
## dlv dap
|
||||
|
||||
Starts a headless TCP server communicating via Debug Adaptor Protocol (DAP).
|
||||
|
||||
### Synopsis
|
||||
|
||||
Starts a headless TCP server communicating via Debug Adaptor Protocol (DAP).
|
||||
|
||||
The server is always headless and requires a DAP client like VS Code to connect and request a binary
|
||||
to be launched or a process to be attached to. The following modes can be specified via the client's launch config:
|
||||
- launch + exec (executes precompiled binary, like 'dlv exec')
|
||||
- launch + debug (builds and launches, like 'dlv debug')
|
||||
- launch + test (builds and tests, like 'dlv test')
|
||||
- launch + replay (replays an rr trace, like 'dlv replay')
|
||||
- launch + core (replays a core dump file, like 'dlv core')
|
||||
- attach + local (attaches to a running process, like 'dlv attach')
|
||||
|
||||
Program and output binary paths will be interpreted relative to dlv's working directory.
|
||||
|
||||
This server does not accept multiple client connections (--accept-multiclient).
|
||||
Use 'dlv [command] --headless' instead and a DAP client with attach + remote config.
|
||||
While --continue is not supported, stopOnEntry launch/attach attribute can be used to control if
|
||||
execution is resumed at the start of the debug session.
|
||||
|
||||
The --client-addr flag is a special flag that makes the server initiate a debug session
|
||||
by dialing in to the host:port where a DAP client is waiting. This server process
|
||||
will exit when the debug session ends.
|
||||
|
||||
```
|
||||
dlv dap [flags]
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--client-addr string host:port where the DAP client is waiting for the DAP server to dial in
|
||||
-h, --help help for dap
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--check-go-version Exits if the version of Go in use is not compatible (too old or too new) with the version of Delve. (default true)
|
||||
--disable-aslr Disables address space randomization
|
||||
-l, --listen string Debugging server listen address. Prefix with 'unix:' to use a unix domain socket. (default "127.0.0.1:0")
|
||||
--log Enable debugging server logging.
|
||||
--log-dest string Writes logs to the specified file or file descriptor (see 'dlv help log').
|
||||
--log-output string Comma separated list of components that should produce debug output (see 'dlv help log')
|
||||
--only-same-user Only connections from the same user that started this instance of Delve are allowed to connect. (default true)
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
|
||||
* [dlv](dlv.md) - Delve is a debugger for the Go programming language.
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
## dlv debug
|
||||
|
||||
Compile and begin debugging main package in current directory, or the package specified.
|
||||
|
||||
### Synopsis
|
||||
|
||||
Compiles your program with optimizations disabled, starts and attaches to it.
|
||||
|
||||
By default, with no arguments, Delve will compile the 'main' package in the
|
||||
current directory, and begin to debug it. Alternatively you can specify a
|
||||
package name and Delve will compile that package instead, and begin a new debug
|
||||
session.
|
||||
|
||||
```
|
||||
dlv debug [package] [flags]
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--continue Continue the debugged process on start.
|
||||
-h, --help help for debug
|
||||
--output string Output path for the binary.
|
||||
--tty string TTY to use for the target program
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--accept-multiclient Allows a headless server to accept multiple client connections via JSON-RPC or DAP.
|
||||
--allow-non-terminal-interactive Allows interactive sessions of Delve that don't have a terminal as stdin, stdout and stderr
|
||||
--api-version int Selects JSON-RPC API version when headless. New clients should use v2. Can be reset via RPCServer.SetApiVersion. See Documentation/api/json-rpc/README.md. (default 1)
|
||||
--backend string Backend selection (see 'dlv help backend'). (default "default")
|
||||
--build-flags string Build flags, to be passed to the compiler. For example: --build-flags="-tags=integration -mod=vendor -cover -v"
|
||||
--check-go-version Exits if the version of Go in use is not compatible (too old or too new) with the version of Delve. (default true)
|
||||
--disable-aslr Disables address space randomization
|
||||
--headless Run debug server only, in headless mode. Server will accept both JSON-RPC or DAP client connections.
|
||||
--init string Init file, executed by the terminal client.
|
||||
-l, --listen string Debugging server listen address. Prefix with 'unix:' to use a unix domain socket. (default "127.0.0.1:0")
|
||||
--log Enable debugging server logging.
|
||||
--log-dest string Writes logs to the specified file or file descriptor (see 'dlv help log').
|
||||
--log-output string Comma separated list of components that should produce debug output (see 'dlv help log')
|
||||
--only-same-user Only connections from the same user that started this instance of Delve are allowed to connect. (default true)
|
||||
-r, --redirect stringArray Specifies redirect rules for target process (see 'dlv help redirect')
|
||||
--wd string Working directory for running the program.
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
|
||||
* [dlv](dlv.md) - Delve is a debugger for the Go programming language.
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
## dlv exec
|
||||
|
||||
Execute a precompiled binary, and begin a debug session.
|
||||
|
||||
### Synopsis
|
||||
|
||||
Execute a precompiled binary and begin a debug session.
|
||||
|
||||
This command will cause Delve to exec the binary and immediately attach to it to
|
||||
begin a new debug session. Please note that if the binary was not compiled with
|
||||
optimizations disabled, it may be difficult to properly debug it. Please
|
||||
consider compiling debugging binaries with -gcflags="all=-N -l" on Go 1.10
|
||||
or later, -gcflags="-N -l" on earlier versions of Go.
|
||||
|
||||
```
|
||||
dlv exec <path/to/binary> [flags]
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--continue Continue the debugged process on start.
|
||||
-h, --help help for exec
|
||||
--tty string TTY to use for the target program
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--accept-multiclient Allows a headless server to accept multiple client connections via JSON-RPC or DAP.
|
||||
--allow-non-terminal-interactive Allows interactive sessions of Delve that don't have a terminal as stdin, stdout and stderr
|
||||
--api-version int Selects JSON-RPC API version when headless. New clients should use v2. Can be reset via RPCServer.SetApiVersion. See Documentation/api/json-rpc/README.md. (default 1)
|
||||
--backend string Backend selection (see 'dlv help backend'). (default "default")
|
||||
--check-go-version Exits if the version of Go in use is not compatible (too old or too new) with the version of Delve. (default true)
|
||||
--disable-aslr Disables address space randomization
|
||||
--headless Run debug server only, in headless mode. Server will accept both JSON-RPC or DAP client connections.
|
||||
--init string Init file, executed by the terminal client.
|
||||
-l, --listen string Debugging server listen address. Prefix with 'unix:' to use a unix domain socket. (default "127.0.0.1:0")
|
||||
--log Enable debugging server logging.
|
||||
--log-dest string Writes logs to the specified file or file descriptor (see 'dlv help log').
|
||||
--log-output string Comma separated list of components that should produce debug output (see 'dlv help log')
|
||||
--only-same-user Only connections from the same user that started this instance of Delve are allowed to connect. (default true)
|
||||
-r, --redirect stringArray Specifies redirect rules for target process (see 'dlv help redirect')
|
||||
--wd string Working directory for running the program.
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
|
||||
* [dlv](dlv.md) - Delve is a debugger for the Go programming language.
|
||||
|
||||
@@ -0,0 +1,63 @@
|
||||
## dlv log
|
||||
|
||||
Help about logging flags.
|
||||
|
||||
### Synopsis
|
||||
|
||||
Logging can be enabled by specifying the --log flag and using the
|
||||
--log-output flag to select which components should produce logs.
|
||||
|
||||
The argument of --log-output must be a comma separated list of component
|
||||
names selected from this list:
|
||||
|
||||
|
||||
debugger Log debugger commands
|
||||
gdbwire Log connection to gdbserial backend
|
||||
lldbout Copy output from debugserver/lldb to standard output
|
||||
debuglineerr Log recoverable errors reading .debug_line
|
||||
rpc Log all RPC messages
|
||||
dap Log all DAP messages
|
||||
fncall Log function call protocol
|
||||
minidump Log minidump loading
|
||||
stack Log stacktracer
|
||||
|
||||
Additionally --log-dest can be used to specify where the logs should be
|
||||
written.
|
||||
If the argument is a number it will be interpreted as a file descriptor,
|
||||
otherwise as a file path.
|
||||
This option will also redirect the "server listening at" message in headless
|
||||
and dap modes.
|
||||
|
||||
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
-h, --help help for log
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--accept-multiclient Allows a headless server to accept multiple client connections via JSON-RPC or DAP.
|
||||
--allow-non-terminal-interactive Allows interactive sessions of Delve that don't have a terminal as stdin, stdout and stderr
|
||||
--api-version int Selects JSON-RPC API version when headless. New clients should use v2. Can be reset via RPCServer.SetApiVersion. See Documentation/api/json-rpc/README.md. (default 1)
|
||||
--backend string Backend selection (see 'dlv help backend'). (default "default")
|
||||
--build-flags string Build flags, to be passed to the compiler. For example: --build-flags="-tags=integration -mod=vendor -cover -v"
|
||||
--check-go-version Exits if the version of Go in use is not compatible (too old or too new) with the version of Delve. (default true)
|
||||
--disable-aslr Disables address space randomization
|
||||
--headless Run debug server only, in headless mode. Server will accept both JSON-RPC or DAP client connections.
|
||||
--init string Init file, executed by the terminal client.
|
||||
-l, --listen string Debugging server listen address. Prefix with 'unix:' to use a unix domain socket. (default "127.0.0.1:0")
|
||||
--log Enable debugging server logging.
|
||||
--log-dest string Writes logs to the specified file or file descriptor (see 'dlv help log').
|
||||
--log-output string Comma separated list of components that should produce debug output (see 'dlv help log')
|
||||
--only-same-user Only connections from the same user that started this instance of Delve are allowed to connect. (default true)
|
||||
-r, --redirect stringArray Specifies redirect rules for target process (see 'dlv help redirect')
|
||||
--wd string Working directory for running the program.
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
|
||||
* [dlv](dlv.md) - Delve is a debugger for the Go programming language.
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
## dlv redirect
|
||||
|
||||
Help about file redirection.
|
||||
|
||||
### Synopsis
|
||||
|
||||
The standard file descriptors of the target process can be controlled using the '-r' and '--tty' arguments.
|
||||
|
||||
The --tty argument allows redirecting all standard descriptors to a terminal, specified as an argument to --tty.
|
||||
|
||||
The syntax for '-r' argument is:
|
||||
|
||||
-r [source:]destination
|
||||
|
||||
Where source is one of 'stdin', 'stdout' or 'stderr' and destination is the path to a file. If the source is omitted stdin is used implicitly.
|
||||
|
||||
File redirects can also be changed using the 'restart' command.
|
||||
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
-h, --help help for redirect
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--accept-multiclient Allows a headless server to accept multiple client connections via JSON-RPC or DAP.
|
||||
--allow-non-terminal-interactive Allows interactive sessions of Delve that don't have a terminal as stdin, stdout and stderr
|
||||
--api-version int Selects JSON-RPC API version when headless. New clients should use v2. Can be reset via RPCServer.SetApiVersion. See Documentation/api/json-rpc/README.md. (default 1)
|
||||
--backend string Backend selection (see 'dlv help backend'). (default "default")
|
||||
--build-flags string Build flags, to be passed to the compiler. For example: --build-flags="-tags=integration -mod=vendor -cover -v"
|
||||
--check-go-version Exits if the version of Go in use is not compatible (too old or too new) with the version of Delve. (default true)
|
||||
--disable-aslr Disables address space randomization
|
||||
--headless Run debug server only, in headless mode. Server will accept both JSON-RPC or DAP client connections.
|
||||
--init string Init file, executed by the terminal client.
|
||||
-l, --listen string Debugging server listen address. Prefix with 'unix:' to use a unix domain socket. (default "127.0.0.1:0")
|
||||
--log Enable debugging server logging.
|
||||
--log-dest string Writes logs to the specified file or file descriptor (see 'dlv help log').
|
||||
--log-output string Comma separated list of components that should produce debug output (see 'dlv help log')
|
||||
--only-same-user Only connections from the same user that started this instance of Delve are allowed to connect. (default true)
|
||||
-r, --redirect stringArray Specifies redirect rules for target process (see 'dlv help redirect')
|
||||
--wd string Working directory for running the program.
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
|
||||
* [dlv](dlv.md) - Delve is a debugger for the Go programming language.
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
## dlv replay
|
||||
|
||||
Replays a rr trace.
|
||||
|
||||
### Synopsis
|
||||
|
||||
Replays a rr trace.
|
||||
|
||||
The replay command will open a trace generated by mozilla rr. Mozilla rr must be installed:
|
||||
https://github.com/mozilla/rr
|
||||
|
||||
|
||||
```
|
||||
dlv replay [trace directory] [flags]
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
-h, --help help for replay
|
||||
-p, --onprocess int Pass onprocess pid to rr.
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--accept-multiclient Allows a headless server to accept multiple client connections via JSON-RPC or DAP.
|
||||
--allow-non-terminal-interactive Allows interactive sessions of Delve that don't have a terminal as stdin, stdout and stderr
|
||||
--api-version int Selects JSON-RPC API version when headless. New clients should use v2. Can be reset via RPCServer.SetApiVersion. See Documentation/api/json-rpc/README.md. (default 1)
|
||||
--check-go-version Exits if the version of Go in use is not compatible (too old or too new) with the version of Delve. (default true)
|
||||
--headless Run debug server only, in headless mode. Server will accept both JSON-RPC or DAP client connections.
|
||||
--init string Init file, executed by the terminal client.
|
||||
-l, --listen string Debugging server listen address. Prefix with 'unix:' to use a unix domain socket. (default "127.0.0.1:0")
|
||||
--log Enable debugging server logging.
|
||||
--log-dest string Writes logs to the specified file or file descriptor (see 'dlv help log').
|
||||
--log-output string Comma separated list of components that should produce debug output (see 'dlv help log')
|
||||
--only-same-user Only connections from the same user that started this instance of Delve are allowed to connect. (default true)
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
|
||||
* [dlv](dlv.md) - Delve is a debugger for the Go programming language.
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
## dlv run
|
||||
|
||||
Deprecated command. Use 'debug' instead.
|
||||
|
||||
```
|
||||
dlv run [flags]
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
-h, --help help for run
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--accept-multiclient Allows a headless server to accept multiple client connections via JSON-RPC or DAP.
|
||||
--allow-non-terminal-interactive Allows interactive sessions of Delve that don't have a terminal as stdin, stdout and stderr
|
||||
--api-version int Selects JSON-RPC API version when headless. New clients should use v2. Can be reset via RPCServer.SetApiVersion. See Documentation/api/json-rpc/README.md. (default 1)
|
||||
--backend string Backend selection (see 'dlv help backend'). (default "default")
|
||||
--build-flags string Build flags, to be passed to the compiler. For example: --build-flags="-tags=integration -mod=vendor -cover -v"
|
||||
--check-go-version Exits if the version of Go in use is not compatible (too old or too new) with the version of Delve. (default true)
|
||||
--disable-aslr Disables address space randomization
|
||||
--headless Run debug server only, in headless mode. Server will accept both JSON-RPC or DAP client connections.
|
||||
--init string Init file, executed by the terminal client.
|
||||
-l, --listen string Debugging server listen address. Prefix with 'unix:' to use a unix domain socket. (default "127.0.0.1:0")
|
||||
--log Enable debugging server logging.
|
||||
--log-dest string Writes logs to the specified file or file descriptor (see 'dlv help log').
|
||||
--log-output string Comma separated list of components that should produce debug output (see 'dlv help log')
|
||||
--only-same-user Only connections from the same user that started this instance of Delve are allowed to connect. (default true)
|
||||
-r, --redirect stringArray Specifies redirect rules for target process (see 'dlv help redirect')
|
||||
--wd string Working directory for running the program.
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
|
||||
* [dlv](dlv.md) - Delve is a debugger for the Go programming language.
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
## dlv test
|
||||
|
||||
Compile test binary and begin debugging program.
|
||||
|
||||
### Synopsis
|
||||
|
||||
Compiles a test binary with optimizations disabled and begins a new debug session.
|
||||
|
||||
The test command allows you to begin a new debug session in the context of your
|
||||
unit tests. By default Delve will debug the tests in the current directory.
|
||||
Alternatively you can specify a package name, and Delve will debug the tests in
|
||||
that package instead. Double-dashes `--` can be used to pass arguments to the test program:
|
||||
|
||||
dlv test [package] -- -test.run TestSomething -test.v -other-argument
|
||||
|
||||
See also: 'go help testflag'.
|
||||
|
||||
```
|
||||
dlv test [package] [flags]
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
-h, --help help for test
|
||||
--output string Output path for the binary.
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--accept-multiclient Allows a headless server to accept multiple client connections via JSON-RPC or DAP.
|
||||
--allow-non-terminal-interactive Allows interactive sessions of Delve that don't have a terminal as stdin, stdout and stderr
|
||||
--api-version int Selects JSON-RPC API version when headless. New clients should use v2. Can be reset via RPCServer.SetApiVersion. See Documentation/api/json-rpc/README.md. (default 1)
|
||||
--backend string Backend selection (see 'dlv help backend'). (default "default")
|
||||
--build-flags string Build flags, to be passed to the compiler. For example: --build-flags="-tags=integration -mod=vendor -cover -v"
|
||||
--check-go-version Exits if the version of Go in use is not compatible (too old or too new) with the version of Delve. (default true)
|
||||
--disable-aslr Disables address space randomization
|
||||
--headless Run debug server only, in headless mode. Server will accept both JSON-RPC or DAP client connections.
|
||||
--init string Init file, executed by the terminal client.
|
||||
-l, --listen string Debugging server listen address. Prefix with 'unix:' to use a unix domain socket. (default "127.0.0.1:0")
|
||||
--log Enable debugging server logging.
|
||||
--log-dest string Writes logs to the specified file or file descriptor (see 'dlv help log').
|
||||
--log-output string Comma separated list of components that should produce debug output (see 'dlv help log')
|
||||
--only-same-user Only connections from the same user that started this instance of Delve are allowed to connect. (default true)
|
||||
-r, --redirect stringArray Specifies redirect rules for target process (see 'dlv help redirect')
|
||||
--wd string Working directory for running the program.
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
|
||||
* [dlv](dlv.md) - Delve is a debugger for the Go programming language.
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
## dlv trace
|
||||
|
||||
Compile and begin tracing program.
|
||||
|
||||
### Synopsis
|
||||
|
||||
Trace program execution.
|
||||
|
||||
The trace sub command will set a tracepoint on every function matching the
|
||||
provided regular expression and output information when tracepoint is hit. This
|
||||
is useful if you do not want to begin an entire debug session, but merely want
|
||||
to know what functions your process is executing.
|
||||
|
||||
The output of the trace sub command is printed to stderr, so if you would like to
|
||||
only see the output of the trace operations you can redirect stdout.
|
||||
|
||||
```
|
||||
dlv trace [package] regexp [flags]
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--ebpf Trace using eBPF (experimental).
|
||||
-e, --exec string Binary file to exec and trace.
|
||||
--follow-calls int Trace all children of the function to the required depth
|
||||
-h, --help help for trace
|
||||
--output string Output path for the binary.
|
||||
-p, --pid int Pid to attach to.
|
||||
-s, --stack int Show stack trace with given depth. (Ignored with --ebpf)
|
||||
-t, --test Trace a test binary.
|
||||
--timestamp Show timestamp in the output
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--backend string Backend selection (see 'dlv help backend'). (default "default")
|
||||
--build-flags string Build flags, to be passed to the compiler. For example: --build-flags="-tags=integration -mod=vendor -cover -v"
|
||||
--check-go-version Exits if the version of Go in use is not compatible (too old or too new) with the version of Delve. (default true)
|
||||
--disable-aslr Disables address space randomization
|
||||
--log Enable debugging server logging.
|
||||
--log-dest string Writes logs to the specified file or file descriptor (see 'dlv help log').
|
||||
--log-output string Comma separated list of components that should produce debug output (see 'dlv help log')
|
||||
-r, --redirect stringArray Specifies redirect rules for target process (see 'dlv help redirect')
|
||||
--wd string Working directory for running the program.
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
|
||||
* [dlv](dlv.md) - Delve is a debugger for the Go programming language.
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
## dlv version
|
||||
|
||||
Prints version.
|
||||
|
||||
```
|
||||
dlv version [flags]
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
-h, --help help for version
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--accept-multiclient Allows a headless server to accept multiple client connections via JSON-RPC or DAP.
|
||||
--allow-non-terminal-interactive Allows interactive sessions of Delve that don't have a terminal as stdin, stdout and stderr
|
||||
--api-version int Selects JSON-RPC API version when headless. New clients should use v2. Can be reset via RPCServer.SetApiVersion. See Documentation/api/json-rpc/README.md. (default 1)
|
||||
--backend string Backend selection (see 'dlv help backend'). (default "default")
|
||||
--build-flags string Build flags, to be passed to the compiler. For example: --build-flags="-tags=integration -mod=vendor -cover -v"
|
||||
--check-go-version Exits if the version of Go in use is not compatible (too old or too new) with the version of Delve. (default true)
|
||||
--disable-aslr Disables address space randomization
|
||||
--headless Run debug server only, in headless mode. Server will accept both JSON-RPC or DAP client connections.
|
||||
--init string Init file, executed by the terminal client.
|
||||
-l, --listen string Debugging server listen address. Prefix with 'unix:' to use a unix domain socket. (default "127.0.0.1:0")
|
||||
--log Enable debugging server logging.
|
||||
--log-dest string Writes logs to the specified file or file descriptor (see 'dlv help log').
|
||||
--log-output string Comma separated list of components that should produce debug output (see 'dlv help log')
|
||||
--only-same-user Only connections from the same user that started this instance of Delve are allowed to connect. (default true)
|
||||
-r, --redirect stringArray Specifies redirect rules for target process (see 'dlv help redirect')
|
||||
--wd string Working directory for running the program.
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
|
||||
* [dlv](dlv.md) - Delve is a debugger for the Go programming language.
|
||||
|
||||
Reference in New Issue
Block a user