| 123456789101112131415161718192021222324 | 
							- package tracking
 
- import (
 
- 	"time"
 
- 	"github.com/go-kit/kit/log"
 
- )
 
- type loggingService struct {
 
- 	logger log.Logger
 
- 	next   Service
 
- }
 
- // NewLoggingService returns a new instance of a logging Service.
 
- func NewLoggingService(logger log.Logger, s Service) Service {
 
- 	return &loggingService{logger, s}
 
- }
 
- func (s *loggingService) Track(id string) (c Cargo, err error) {
 
- 	defer func(begin time.Time) {
 
- 		s.logger.Log("method", "track", "tracking_id", id, "took", time.Since(begin), "err", err)
 
- 	}(time.Now())
 
- 	return s.next.Track(id)
 
- }
 
 
  |