diff options
author | obscuren <geffobscura@gmail.com> | 2015-04-15 22:39:44 +0800 |
---|---|---|
committer | obscuren <geffobscura@gmail.com> | 2015-04-15 22:39:44 +0800 |
commit | 52c874a6098d52cc369a982dfd2c88f244a0e3f2 (patch) | |
tree | 5678d68ba242c12ba5e5f8de96545a39d654a64c | |
parent | eaf73b55bc02bba59bb471feaa465f8c5cf24d83 (diff) | |
download | dexon-52c874a6098d52cc369a982dfd2c88f244a0e3f2.tar dexon-52c874a6098d52cc369a982dfd2c88f244a0e3f2.tar.gz dexon-52c874a6098d52cc369a982dfd2c88f244a0e3f2.tar.bz2 dexon-52c874a6098d52cc369a982dfd2c88f244a0e3f2.tar.lz dexon-52c874a6098d52cc369a982dfd2c88f244a0e3f2.tar.xz dexon-52c874a6098d52cc369a982dfd2c88f244a0e3f2.tar.zst dexon-52c874a6098d52cc369a982dfd2c88f244a0e3f2.zip |
common: Added debug reporter
NOTE: For known, non-consensus, hard to reproduce bugs consider the
following method `common.Report("extra", stuff, "you need logged")` will
give you a stack trace and a friendly request to submit it as an issue
on our issue tracker.
-rw-r--r-- | common/debug.go | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/common/debug.go b/common/debug.go new file mode 100644 index 000000000..69675cc6c --- /dev/null +++ b/common/debug.go @@ -0,0 +1,20 @@ +package common + +import ( + "fmt" + "os" + "runtime" + "runtime/debug" +) + +func Report(extra ...interface{}) { + fmt.Fprintln(os.Stderr, "You've encountered a sought after, hard to reproduce bug. Please report this to the developers <3 https://github.com/ethereum/go-ethereum/issues") + fmt.Fprintln(os.Stderr, extra...) + + _, file, line, _ := runtime.Caller(1) + fmt.Fprintf(os.Stderr, "%v:%v\n", file, line) + + debug.PrintStack() + + fmt.Fprintln(os.Stderr, "#### BUG! PLEASE REPORT ####") +} |