18 lines
394 B
Go
18 lines
394 B
Go
package middlewares
|
|
|
|
import (
|
|
"GoMembership/pkg/logger"
|
|
"net/http"
|
|
"time"
|
|
)
|
|
|
|
// LoggerMiddleware logs each incoming HTTP request
|
|
func LoggerMiddleware(next http.Handler) http.Handler {
|
|
return http.HandlerFunc(
|
|
func(w http.ResponseWriter, r *http.Request) {
|
|
start := time.Now()
|
|
next.ServeHTTP(w, r)
|
|
logger.Info.Printf("%s %s %s", r.Method, r.RequestURI, time.Since(start))
|
|
})
|
|
}
|