From cae0090763b540a5d6c8996df3c1acf5c06b69dc Mon Sep 17 00:00:00 2001 From: Dane Everitt Date: Sat, 16 Nov 2019 17:01:38 -0800 Subject: [PATCH] Correct some error handling, use package that provides useful stack traces --- api/api.go | 2 +- api/server_endpoints.go | 2 +- http.go | 21 ++++++++++++++++++--- installer/installer.go | 2 +- server/filesystem.go | 2 +- server/server.go | 2 +- websocket.go | 2 +- 7 files changed, 24 insertions(+), 9 deletions(-) diff --git a/api/api.go b/api/api.go index fa40868..b82c546 100644 --- a/api/api.go +++ b/api/api.go @@ -2,9 +2,9 @@ package api import ( "bytes" - "errors" "fmt" "github.com/buger/jsonparser" + "github.com/pkg/errors" "github.com/pterodactyl/wings/config" "go.uber.org/zap" "io/ioutil" diff --git a/api/server_endpoints.go b/api/server_endpoints.go index dba7e58..2bea33e 100644 --- a/api/server_endpoints.go +++ b/api/server_endpoints.go @@ -2,9 +2,9 @@ package api import ( "encoding/json" - "errors" "fmt" "github.com/buger/jsonparser" + "github.com/pkg/errors" "go.uber.org/zap" ) diff --git a/http.go b/http.go index 842bac3..4fe01c3 100644 --- a/http.go +++ b/http.go @@ -158,19 +158,34 @@ func (rt *Router) routeServerPower(w http.ResponseWriter, r *http.Request, ps ht switch a { case "start": if err := s.Environment.Start(); err != nil { - zap.S().Error(err, zap.String("server", s.Uuid), zap.String("action", "start")) + zap.S().Errorw( + "encountered unexpected error starting server process", + zap.Error(err), + zap.String("server", s.Uuid), + zap.String("action", "start"), + ) } break case "stop": if err := s.Environment.Stop(); err != nil { - zap.S().Error(err, zap.String("server", s.Uuid), zap.String("action", "stop")) + zap.S().Errorw( + "encountered unexpected error stopping server process", + zap.Error(err), + zap.String("server", s.Uuid), + zap.String("action", "stop"), + ) } break case "restart": break case "kill": if err := s.Environment.Terminate(os.Kill); err != nil { - zap.S().Error(err, zap.String("server", s.Uuid), zap.String("action", "kill")) + zap.S().Errorw( + "encountered unexpected error killing server process", + zap.Error(err), + zap.String("server", s.Uuid), + zap.String("action", "kill"), + ) } } }(action.Action, s) diff --git a/installer/installer.go b/installer/installer.go index 7d10a32..82dd01b 100644 --- a/installer/installer.go +++ b/installer/installer.go @@ -2,9 +2,9 @@ package installer import ( "encoding/json" - "errors" "github.com/asaskevich/govalidator" "github.com/buger/jsonparser" + "github.com/pkg/errors" "github.com/pterodactyl/wings/config" "github.com/pterodactyl/wings/server" "go.uber.org/zap" diff --git a/server/filesystem.go b/server/filesystem.go index df87a39..6ac08bf 100644 --- a/server/filesystem.go +++ b/server/filesystem.go @@ -4,9 +4,9 @@ import ( "bufio" "bytes" "encoding/json" - "errors" "fmt" "github.com/gabriel-vasile/mimetype" + "github.com/pkg/errors" "github.com/pterodactyl/wings/config" "go.uber.org/zap" "io" diff --git a/server/server.go b/server/server.go index 7dc45ce..66e98f7 100644 --- a/server/server.go +++ b/server/server.go @@ -1,9 +1,9 @@ package server import ( - "errors" "fmt" "github.com/patrickmn/go-cache" + "github.com/pkg/errors" "github.com/pterodactyl/wings/api" "github.com/pterodactyl/wings/config" "github.com/remeh/sizedwaitgroup" diff --git a/websocket.go b/websocket.go index b3a2c10..28e1806 100644 --- a/websocket.go +++ b/websocket.go @@ -2,12 +2,12 @@ package main import ( "encoding/json" - "errors" "fmt" "github.com/gbrlsnchs/jwt/v3" "github.com/google/uuid" "github.com/gorilla/websocket" "github.com/julienschmidt/httprouter" + "github.com/pkg/errors" "github.com/pterodactyl/wings/config" "github.com/pterodactyl/wings/server" "go.uber.org/zap"