From a3d3c170c9a5a672112a4c250d68deb429c970a1 Mon Sep 17 00:00:00 2001 From: joeyak Date: Fri, 15 Mar 2019 18:57:12 -0400 Subject: [PATCH] Add more information to error output --- errors.go | 5 +++++ handlers.go | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/errors.go b/errors.go index b488396..3f4f8d5 100644 --- a/errors.go +++ b/errors.go @@ -2,9 +2,14 @@ package main import ( "fmt" + "reflect" "strings" ) +func errorName(err error) string { + return reflect.ValueOf(err).Type().Name() +} + // UserNameError is a base error for errors that deal with user names type UserNameError struct { Name string diff --git a/handlers.go b/handlers.go index 0575342..1681465 100644 --- a/handlers.go +++ b/handlers.go @@ -119,14 +119,14 @@ func wsHandler(w http.ResponseWriter, r *http.Request) { if err != nil { switch err.(type) { case UserFormatError, UserTakenError: - fmt.Printf("[handler] %v\n", err) + fmt.Printf("[handler|%s] %v\n", errorName(err), err) case BannedUserError: - fmt.Printf("[BAN] %v\n", err) + fmt.Printf("[handler|%s] %v\n", errorName(err), err) // close connection since banned users shouldn't be connecting conn.Close() default: // for now all errors not caught need to be warned - fmt.Printf("[handler] %v\n", err) + fmt.Printf("[handler|uncaught] %v\n", err) conn.Close() } }