Thanks to visit codestin.com
Credit goes to github.com

Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 40 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
debug is a simple library for Go that allows you to optionally debug your executable based on env variables.

# Usage

Simply add debug.Self() to your main function as shown below:

```
import (
"github.com/edwarnicke/debug"
)

func main() {
if err := debug.Self(); err != nil {
log.Infof("%s", err)
}
...
}
```

will cause your application to log out:

```
Setting env variable DLV_LISTEN_{{executable name}} to a valid dlv '--listen' value will cause the dlv debugger to execute this binary and listen as directed.
```

thus informing you of what env variable to set to a valid dlv listener value to trigger debugging.

So if your application where named 'forwarder', you'd see:

```
Setting env variable DLV_LISTEN_FORWARDER to a valid dlv '--listen' value will cause the dlv debugger to execute this binary and listen as directed.
```

and setting the env variable:

```
export DLV_LISTEN_FORWARDER=:50000
```

would cause your applicaton to exec itself over with dlv with arguments to run the application itself.