mirror of
https://github.com/micromdm/micromdm/
synced 2026-08-12 04:47:08 +08:00
add logging middleware to push service (#262)
This commit is contained in:
34
push/logging_service.go
Normal file
34
push/logging_service.go
Normal file
@@ -0,0 +1,34 @@
|
||||
package push
|
||||
|
||||
import (
|
||||
"context"
|
||||
"time"
|
||||
|
||||
"github.com/go-kit/kit/log"
|
||||
)
|
||||
|
||||
type loggingMiddleware struct {
|
||||
logger log.Logger
|
||||
next Service
|
||||
}
|
||||
|
||||
func NewLoggingService(svc Service, logger log.Logger) loggingMiddleware {
|
||||
return loggingMiddleware{
|
||||
next: svc,
|
||||
logger: logger,
|
||||
}
|
||||
}
|
||||
|
||||
func (mw loggingMiddleware) Push(ctx context.Context, udid string) (id string, err error) {
|
||||
defer func(begin time.Time) {
|
||||
_ = mw.logger.Log(
|
||||
"method", "Push",
|
||||
"udid", udid,
|
||||
"err", err,
|
||||
"took", time.Since(begin),
|
||||
)
|
||||
}(time.Now())
|
||||
|
||||
id, err = mw.next.Push(ctx, udid)
|
||||
return
|
||||
}
|
||||
15
serve.go
15
serve.go
@@ -142,7 +142,7 @@ func serve(args []string) error {
|
||||
sm.loadPushCerts()
|
||||
sm.setupSCEP(logger)
|
||||
sm.setupCheckinService()
|
||||
sm.setupPushService()
|
||||
sm.setupPushService(logger)
|
||||
sm.setupCommandService()
|
||||
sm.setupCommandQueue(logger)
|
||||
sm.setupDEPSync()
|
||||
@@ -483,7 +483,7 @@ type config struct {
|
||||
scepCACertPath string
|
||||
|
||||
PushService *push.Service // bufford push
|
||||
pushService *nanopush.Push
|
||||
pushService nanopush.Service
|
||||
checkinService checkin.Service
|
||||
connectService connect.ConnectService
|
||||
enrollService enroll.Service
|
||||
@@ -628,7 +628,7 @@ func (c *config) setupConfigStore() {
|
||||
|
||||
}
|
||||
|
||||
func (c *config) setupPushService() {
|
||||
func (c *config) setupPushService(logger log.Logger) {
|
||||
if c.err != nil {
|
||||
return
|
||||
}
|
||||
@@ -654,11 +654,16 @@ after:
|
||||
c.err = err
|
||||
return
|
||||
}
|
||||
c.pushService, err = nanopush.New(db, c.configDB, c.pubclient, opts...)
|
||||
|
||||
service, err := nanopush.New(db, c.configDB, c.pubclient, opts...)
|
||||
if err != nil {
|
||||
c.err = err
|
||||
c.err = errors.Wrap(err, "starting micromdm push service")
|
||||
return
|
||||
}
|
||||
c.pushService = nanopush.NewLoggingService(
|
||||
service,
|
||||
log.With(level.Info(logger), "component", "push"),
|
||||
)
|
||||
}
|
||||
|
||||
func (c *config) setupEnrollmentService() {
|
||||
|
||||
Reference in New Issue
Block a user