25 lines
630 B
Go
25 lines
630 B
Go
package mzap
|
|
|
|
import (
|
|
me "github.com/tech/sendico/pkg/messaging/envelope"
|
|
"go.uber.org/zap"
|
|
"go.uber.org/zap/zapcore"
|
|
)
|
|
|
|
type envelopeMarshaler struct {
|
|
me.Envelope
|
|
}
|
|
|
|
func (e envelopeMarshaler) MarshalLogObject(enc zapcore.ObjectEncoder) error {
|
|
enc.AddString("message_id", e.GetMessageId().String())
|
|
enc.AddString("sender", e.GetSender())
|
|
enc.AddTime("time_stamp", e.GetTimeStamp())
|
|
enc.AddString("type", e.GetSignature().StringType())
|
|
enc.AddString("action", e.GetSignature().StringAction())
|
|
return nil
|
|
}
|
|
|
|
func Envelope(envelope me.Envelope) zap.Field {
|
|
return zap.Object("envelope", envelopeMarshaler{envelope})
|
|
}
|