From 2cb7818efea4cd14287bf65d1c9287f32d1e4ccf Mon Sep 17 00:00:00 2001 From: Rodrigue Chakode Date: Sun, 19 Sep 2021 22:49:48 +0200 Subject: [PATCH] use log instead of logrus for logging --- go.mod | 2 -- go.sum | 2 -- main.go | 30 +++++++++--------------------- sendmail.go | 25 ++++++++++++------------- 4 files changed, 21 insertions(+), 38 deletions(-) diff --git a/go.mod b/go.mod index 6f0064b..690003e 100644 --- a/go.mod +++ b/go.mod @@ -4,7 +4,5 @@ go 1.13 require ( github.com/dpapathanasiou/go-recaptcha v0.0.0-20190121160230-be5090b17804 - github.com/gorilla/mux v1.7.4 - github.com/sirupsen/logrus v1.2.0 github.com/spf13/viper v1.7.0 ) diff --git a/go.sum b/go.sum index 2425924..224db2b 100644 --- a/go.sum +++ b/go.sum @@ -69,8 +69,6 @@ github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+ github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1 h1:EGx4pi6eqNxGaHF6qqu48+N2wcFQ5qg5FXgOdqsJ5d8= github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= -github.com/gorilla/mux v1.7.4 h1:VuZ8uybHlWmqV03+zRzdwKL4tUnIp1MAQtp1mIFE1bc= -github.com/gorilla/mux v1.7.4/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So= github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= github.com/grpc-ecosystem/go-grpc-middleware v1.0.0/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk= diff --git a/main.go b/main.go index f6955aa..7ea9192 100644 --- a/main.go +++ b/main.go @@ -20,9 +20,8 @@ import ( "net/http" "os" "time" + "log" - "github.com/gorilla/mux" - log "github.com/sirupsen/logrus" "github.com/spf13/viper" ) @@ -47,7 +46,7 @@ var routes = Routes{ Route{ "Healthz", "GET", - "/healthz", + "/", http.HandlerFunc(Healthz), }, } @@ -66,20 +65,6 @@ func MuxLoggerHandler(inner http.Handler, name string) http.Handler { }) } -func NewRouter() *mux.Router { - router := mux.NewRouter().StrictSlash(true) - for _, route := range routes { - handler := MuxLoggerHandler(route.Handler, route.Name) - - router. - Methods(route.Method). - Path(route.Pattern). - Name(route.Name). - Handler(handler) - } - return router -} - func main() { viper.AutomaticEnv() viper.SetDefault("SERVER_TLS_CERT", "/etc/cert/cert.pem") @@ -95,12 +80,15 @@ func main() { port := os.Getenv("PORT") if port == "" { port = "8080" - log.Infof("Defaulting to port %s", port) + log.Printf("Defaulting to port %s", port) } - router := NewRouter() + for _, route := range routes { + handler := MuxLoggerHandler(route.Handler, route.Name) + http.Handle(route.Pattern, handler) + } - log.Infof("Listening on port %s", port) + log.Printf("Listening on port %s", port) - log.Fatal(http.ListenAndServe(":"+port, router)) + log.Fatal(http.ListenAndServe(":"+port, nil)) } diff --git a/sendmail.go b/sendmail.go index 1caecd6..8ed3345 100644 --- a/sendmail.go +++ b/sendmail.go @@ -27,9 +27,9 @@ import ( "net/smtp" "net/url" "strings" + "log" "github.com/dpapathanasiou/go-recaptcha" - log "github.com/sirupsen/logrus" "github.com/spf13/viper" ) @@ -89,13 +89,13 @@ func (m *SendMailRequest) Execute() error { // On port 465 ssl connection is required from the very beginning (no starttls) conn, err := tls.Dial("tcp", smtpServerAddr, tlsconfig) if err != nil { - return fmt.Errorf("failed initiating smtp connection (%s)", err) + return fmt.Errorf("failed initiating smtp connection to host %s (%s)", smtpServerAddr, err) } defer conn.Close() smtpClient, err := smtp.NewClient(conn, smtpServerHost) if err != nil { - return fmt.Errorf("failed creating the smtp client (%s)", err) + return fmt.Errorf("failed creating smtp client to host %s (%s)", smtpServerHost, err) } defer smtpClient.Quit() @@ -163,14 +163,14 @@ func MuxSecAllowedDomainsHandler(next http.Handler) http.Handler { if len(r.Header["Origin"]) == 0 || len(r.Header["Referer"]) == 0 { rawHeader, _ := json.Marshal(r.Header) - log.Infoln("request with unexpected headers", string(rawHeader)) + log.Println("request with unexpected headers", string(rawHeader)) w.WriteHeader(http.StatusForbidden) return } reqOrigin := r.Header["Origin"][0] if _, domainFound := allowedOrigins[reqOrigin]; !domainFound { - log.Errorln("not allowed origin", reqOrigin) + log.Println("not allowed origin", reqOrigin) w.WriteHeader(http.StatusForbidden) return } @@ -193,9 +193,7 @@ func MuxSecReCaptchaHandler(next http.Handler) http.Handler { result, err := recaptcha.Confirm(remoteIp, recaptchaResponse[0]) if err != nil { - log.WithFields(log.Fields{ - "error": err, - }).Errorln("reCaptcha server error") + log.Println("reCaptcha server error:", err.Error()) w.WriteHeader(http.StatusForbidden) return } @@ -230,13 +228,14 @@ func SendMail(httpResp http.ResponseWriter, httpReq *http.Request) { case "contact": recipients = []string{viper.GetString("CONTACT_REPLY_BCC_EMAIL")} default: - log.Infoln("not allowed request type:", contactRequest.RequestTarget) + log.Println("not allowed request type:", contactRequest.RequestTarget) httpResp.WriteHeader(http.StatusForbidden) + httpResp.Write([]byte(`{"status": "error", "message": "unauthorized request"}`)) return } userData, _ := json.Marshal(contactRequest) - log.Infoln("New Request:", string(userData)) + log.Println("New Request:", string(userData)) templateData := struct { Name string @@ -280,7 +279,7 @@ func SendMail(httpResp http.ResponseWriter, httpReq *http.Request) { if err == nil { err := sendMailReq.Execute() if err != nil { - log.Infof("error: %s", err.Error()) + log.Println(err.Error()) contactResponse.Status = "error" contactResponse.Message = fmt.Sprintf("An internal error occurred, please try later or send us an email at %s.", viper.GetString("CONTACT_REPLY_BCC_EMAIL")) } else { @@ -292,14 +291,14 @@ func SendMail(httpResp http.ResponseWriter, httpReq *http.Request) { } } } else { - log.Infof("error: %s", err.Error()) + log.Println(err.Error()) contactResponse.Status = "error" contactResponse.Message = "Invalid request, please review your input and try again." } refererURL, err := url.Parse(httpReq.Header.Get("Referer")) if err != nil { - log.Infof("error: %s", err.Error()) + log.Println(err.Error()) refererURL = &url.URL{} // continue with default (empty) url }