aboutsummaryrefslogtreecommitdiff
path: root/hotline
diff options
context:
space:
mode:
authorJeff Halter <868228+jhalter@users.noreply.github.com>2022-07-03 15:09:20 -0700
committerJeff Halter <868228+jhalter@users.noreply.github.com>2022-07-03 15:09:20 -0700
commita9bdccb79164a787b4f1a2c1579a95cf751aef40 (patch)
treee4744b45717a25c62f385c58bfb791ee1f81c815 /hotline
parent958108952eec4cef92bcd26cd0c845aaed5a4982 (diff)
Move panic handler
Diffstat (limited to 'hotline')
-rw-r--r--hotline/panic.go15
-rw-r--r--hotline/server.go9
2 files changed, 15 insertions, 9 deletions
diff --git a/hotline/panic.go b/hotline/panic.go
new file mode 100644
index 0000000..e7c97db
--- /dev/null
+++ b/hotline/panic.go
@@ -0,0 +1,15 @@
+package hotline
+
+import (
+ "fmt"
+ "go.uber.org/zap"
+ "runtime/debug"
+)
+
+// dontPanic logs panics instead of crashing
+func dontPanic(logger *zap.SugaredLogger) {
+ if r := recover(); r != nil {
+ fmt.Println("stacktrace from panic: \n" + string(debug.Stack()))
+ logger.Errorw("PANIC", "err", r, "trace", string(debug.Stack()))
+ }
+}
diff --git a/hotline/server.go b/hotline/server.go
index 1fafb30..ccf992e 100644
--- a/hotline/server.go
+++ b/hotline/server.go
@@ -18,7 +18,6 @@ import (
"net"
"os"
"path/filepath"
- "runtime/debug"
"strings"
"sync"
"time"
@@ -542,14 +541,6 @@ func (s *Server) loadConfig(path string) error {
return nil
}
-// dontPanic logs panics instead of crashing
-func dontPanic(logger *zap.SugaredLogger) {
- if r := recover(); r != nil {
- fmt.Println("stacktrace from panic: \n" + string(debug.Stack()))
- logger.Errorw("PANIC", "err", r, "trace", string(debug.Stack()))
- }
-}
-
// handleNewConnection takes a new net.Conn and performs the initial login sequence
func (s *Server) handleNewConnection(ctx context.Context, rwc io.ReadWriteCloser, remoteAddr string) error {
defer dontPanic(s.Logger)