mirror of
https://github.com/3ybactuk/marketplace-go-service-project.git
synced 2025-10-30 14:03:45 +03:00
[hw-1] implement cart service
This commit is contained in:
26
cart/internal/infra/http/middlewares/time_middleware.go
Normal file
26
cart/internal/infra/http/middlewares/time_middleware.go
Normal file
@@ -0,0 +1,26 @@
|
||||
package middlewares
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
"time"
|
||||
|
||||
"github.com/rs/zerolog/log"
|
||||
)
|
||||
|
||||
type TimerMiddleware struct {
|
||||
h http.Handler
|
||||
}
|
||||
|
||||
func NewTimerMiddleware(h http.Handler) http.Handler {
|
||||
return &TimerMiddleware{
|
||||
h: h,
|
||||
}
|
||||
}
|
||||
|
||||
func (m *TimerMiddleware) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
defer func(now time.Time) {
|
||||
log.Debug().Msgf("%s %s spent %s", r.Method, r.URL.String(), time.Since(now))
|
||||
}(time.Now())
|
||||
|
||||
m.h.ServeHTTP(w, r)
|
||||
}
|
||||
Reference in New Issue
Block a user