diff --git a/cmd/Open-IM-SDK-Core b/cmd/Open-IM-SDK-Core index 48fd66a6e..9fd1af471 160000 --- a/cmd/Open-IM-SDK-Core +++ b/cmd/Open-IM-SDK-Core @@ -1 +1 @@ -Subproject commit 48fd66a6eea7ff4c5ccacddd7929bf8d7b5b40fa +Subproject commit 9fd1af471356fa122fb87587fb9501e9292fb416 diff --git a/internal/api/msg.go b/internal/api/msg.go index 794efcf5e..b8c3036c6 100644 --- a/internal/api/msg.go +++ b/internal/api/msg.go @@ -8,7 +8,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" @@ -99,7 +99,7 @@ func (m Message) newUserSendMsgReq(c *gin.Context, params *apistruct.ManagementS tips.JsonDetail = utils.StructToJsonString(params.Content) pbData.MsgData.Content, err = proto.Marshal(&tips) if err != nil { - log.Error(tracelog.GetOperationID(c), "Marshal failed ", err.Error(), tips.String()) + log.Error(mcontext.GetOperationID(c), "Marshal failed ", err.Error(), tips.String()) } } return &pbData @@ -211,7 +211,7 @@ func (m *Message) SendMessage(c *gin.Context) { Status: int32(status), }) if err != nil { - log.NewError(tracelog.GetOperationID(c), "SetSendMsgStatus failed") + log.NewError(mcontext.GetOperationID(c), "SetSendMsgStatus failed") } //resp := apistruct.ManagementSendMsgResp{ResultList: sdkws.UserSendMsgResp{ServerMsgID: respPb.ServerMsgID, ClientMsgID: respPb.ClientMsgID, SendTime: respPb.SendTime}} apiresp.GinSuccess(c, respPb) diff --git a/internal/msggateway/callback.go b/internal/msggateway/callback.go index a9aad45f8..b099d5b31 100644 --- a/internal/msggateway/callback.go +++ b/internal/msggateway/callback.go @@ -6,7 +6,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/http" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "time" ) @@ -22,7 +22,7 @@ func CallbackUserOnline(ctx context.Context, userID string, platformID int, isAp UserStatusCallbackReq: cbapi.UserStatusCallbackReq{ UserStatusBaseCallback: cbapi.UserStatusBaseCallback{ CallbackCommand: constant.CallbackUserOnlineCommand, - OperationID: tracelog.GetOperationID(ctx), + OperationID: mcontext.GetOperationID(ctx), PlatformID: platformID, Platform: constant.PlatformIDToName(platformID), }, @@ -44,7 +44,7 @@ func CallbackUserOffline(ctx context.Context, userID string, platformID int, con UserStatusCallbackReq: cbapi.UserStatusCallbackReq{ UserStatusBaseCallback: cbapi.UserStatusBaseCallback{ CallbackCommand: constant.CallbackUserOfflineCommand, - OperationID: tracelog.GetOperationID(ctx), + OperationID: mcontext.GetOperationID(ctx), PlatformID: platformID, Platform: constant.PlatformIDToName(platformID), }, @@ -65,7 +65,7 @@ func CallbackUserKickOff(ctx context.Context, userID string, platformID int) err UserStatusCallbackReq: cbapi.UserStatusCallbackReq{ UserStatusBaseCallback: cbapi.UserStatusBaseCallback{ CallbackCommand: constant.CallbackUserKickOffCommand, - OperationID: tracelog.GetOperationID(ctx), + OperationID: mcontext.GetOperationID(ctx), PlatformID: platformID, Platform: constant.PlatformIDToName(platformID), }, diff --git a/internal/msgtransfer/modify_msg_handler.go b/internal/msgtransfer/modify_msg_handler.go index 23f3df608..2d3f92027 100644 --- a/internal/msgtransfer/modify_msg_handler.go +++ b/internal/msgtransfer/modify_msg_handler.go @@ -10,7 +10,7 @@ import ( unRelationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/unrelation" kfk "github.com/OpenIMSDK/Open-IM-Server/pkg/common/kafka" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" pbMsg "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" "github.com/Shopify/sarama" @@ -54,7 +54,7 @@ func (mmc *ModifyMsgConsumerHandler) ConsumeClaim(sess sarama.ConsumerGroupSessi func (mmc *ModifyMsgConsumerHandler) ModifyMsg(ctx context.Context, cMsg *sarama.ConsumerMessage, msgKey string, _ sarama.ConsumerGroupSession) { log.NewInfo("msg come here ModifyMsg!!!", "", "msg", string(cMsg.Value), msgKey) msgFromMQ := pbMsg.MsgDataToModifyByMQ{} - operationID := tracelog.GetOperationID(ctx) + operationID := mcontext.GetOperationID(ctx) err := proto.Unmarshal(cMsg.Value, &msgFromMQ) if err != nil { log.NewError(msgFromMQ.TriggerID, "msg_transfer Unmarshal msg err", "msg", string(cMsg.Value), "err", err.Error()) @@ -66,7 +66,7 @@ func (mmc *ModifyMsgConsumerHandler) ModifyMsg(ctx context.Context, cMsg *sarama if !isReactionFromCache { continue } - tracelog.SetOperationID(ctx, operationID) + mcontext.SetOperationID(ctx, operationID) if msgDataToMQ.MsgData.ContentType == constant.ReactionMessageModifier { notification := &apistruct.ReactionMessageModifierNotification{} if err := json.Unmarshal(msgDataToMQ.MsgData.Content, notification); err != nil { diff --git a/internal/msgtransfer/online_history_msg_handler.go b/internal/msgtransfer/online_history_msg_handler.go index aae33698f..ddfd2259e 100644 --- a/internal/msgtransfer/online_history_msg_handler.go +++ b/internal/msgtransfer/online_history_msg_handler.go @@ -6,7 +6,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/kafka" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" pbMsg "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" "github.com/Shopify/sarama" @@ -86,8 +86,8 @@ func (och *OnlineHistoryRedisConsumerHandler) Run(channelID int) { notStoragePushMsgList := make([]*pbMsg.MsgDataToMQ, 0, 80) log.Debug(triggerID, "msg arrived channel", "channel id", channelID, msgList, msgChannelValue.aggregationID, len(msgList)) var modifyMsgList []*pbMsg.MsgDataToMQ - ctx := tracelog.NewCtx("redis consumer") - tracelog.SetOperationID(ctx, triggerID) + ctx := mcontext.NewCtx("redis consumer") + mcontext.SetOperationID(ctx, triggerID) for _, v := range msgList { log.Debug(triggerID, "msg come to storage center", v.String()) isHistory := utils.GetSwitchFromOptions(v.MsgData.Options, constant.IsHistory) diff --git a/internal/msgtransfer/online_msg_to_mongo_handler.go b/internal/msgtransfer/online_msg_to_mongo_handler.go index 39fb9d1f8..3dd8a6e64 100644 --- a/internal/msgtransfer/online_msg_to_mongo_handler.go +++ b/internal/msgtransfer/online_msg_to_mongo_handler.go @@ -7,7 +7,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" kfk "github.com/OpenIMSDK/Open-IM-Server/pkg/common/kafka" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" pbMsg "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" @@ -33,7 +33,7 @@ func NewOnlineHistoryMongoConsumerHandler(database controller.MsgDatabase) *Onli func (mc *OnlineHistoryMongoConsumerHandler) handleChatWs2Mongo(ctx context.Context, cMsg *sarama.ConsumerMessage, msgKey string, session sarama.ConsumerGroupSession) { msg := cMsg.Value msgFromMQ := pbMsg.MsgDataToMongoByMQ{} - operationID := tracelog.GetOperationID(ctx) + operationID := mcontext.GetOperationID(ctx) err := proto.Unmarshal(msg, &msgFromMQ) if err != nil { log.Error("msg_transfer Unmarshal msg err", "", "msg", string(msg), "err", err.Error()) diff --git a/internal/msgtransfer/persistent_msg_handler.go b/internal/msgtransfer/persistent_msg_handler.go index c4785de06..19ec67201 100644 --- a/internal/msgtransfer/persistent_msg_handler.go +++ b/internal/msgtransfer/persistent_msg_handler.go @@ -13,7 +13,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" kfk "github.com/OpenIMSDK/Open-IM-Server/pkg/common/kafka" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" pbMsg "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" @@ -37,7 +37,7 @@ func NewPersistentConsumerHandler(database controller.ChatLogDatabase) *Persiste func (pc *PersistentConsumerHandler) handleChatWs2Mysql(ctx context.Context, cMsg *sarama.ConsumerMessage, msgKey string, _ sarama.ConsumerGroupSession) { msg := cMsg.Value - operationID := tracelog.GetOperationID(ctx) + operationID := mcontext.GetOperationID(ctx) log.NewInfo("msg come here mysql!!!", "", "msg", string(msg), msgKey) var tag bool msgFromMQ := pbMsg.MsgDataToMQ{} diff --git a/internal/push/callback.go b/internal/push/callback.go index 1ad07b9c3..1b0ca21a7 100644 --- a/internal/push/callback.go +++ b/internal/push/callback.go @@ -6,7 +6,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/http" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" ) @@ -23,7 +23,7 @@ func callbackOfflinePush(ctx context.Context, userIDs []string, msg *sdkws.MsgDa UserStatusBatchCallbackReq: callbackstruct.UserStatusBatchCallbackReq{ UserStatusBaseCallback: callbackstruct.UserStatusBaseCallback{ CallbackCommand: constant.CallbackOfflinePushCommand, - OperationID: tracelog.GetOperationID(ctx), + OperationID: mcontext.GetOperationID(ctx), PlatformID: int(msg.SenderPlatformID), Platform: constant.PlatformIDToName(int(msg.SenderPlatformID)), }, @@ -60,7 +60,7 @@ func callbackOnlinePush(ctx context.Context, userIDs []string, msg *sdkws.MsgDat UserStatusBatchCallbackReq: callbackstruct.UserStatusBatchCallbackReq{ UserStatusBaseCallback: callbackstruct.UserStatusBaseCallback{ CallbackCommand: constant.CallbackOnlinePushCommand, - OperationID: tracelog.GetOperationID(ctx), + OperationID: mcontext.GetOperationID(ctx), PlatformID: int(msg.SenderPlatformID), Platform: constant.PlatformIDToName(int(msg.SenderPlatformID)), }, @@ -85,7 +85,7 @@ func callbackBeforeSuperGroupOnlinePush(ctx context.Context, groupID string, msg req := callbackstruct.CallbackBeforeSuperGroupOnlinePushReq{ UserStatusBaseCallback: callbackstruct.UserStatusBaseCallback{ CallbackCommand: constant.CallbackSuperGroupOnlinePushCommand, - OperationID: tracelog.GetOperationID(ctx), + OperationID: mcontext.GetOperationID(ctx), PlatformID: int(msg.SenderPlatformID), Platform: constant.PlatformIDToName(int(msg.SenderPlatformID)), }, diff --git a/internal/push/offlinepush/getui/push.go b/internal/push/offlinepush/getui/push.go index 2f764b755..0192b54a8 100644 --- a/internal/push/offlinepush/getui/push.go +++ b/internal/push/offlinepush/getui/push.go @@ -6,7 +6,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" http2 "github.com/OpenIMSDK/Open-IM-Server/pkg/common/http" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils/splitter" "github.com/go-redis/redis/v8" "sync" @@ -71,7 +71,7 @@ func (g *Client) Push(ctx context.Context, userIDs []string, title, content stri go func(index int, userIDs []string) { defer wg.Done() if err2 := g.batchPush(ctx, token, userIDs, pushReq); err2 != nil { - log.NewError(tracelog.GetOperationID(ctx), "batchPush failed", i, token, pushReq) + log.NewError(mcontext.GetOperationID(ctx), "batchPush failed", i, token, pushReq) err = err2 } }(i, v.Item) @@ -132,7 +132,7 @@ func (g *Client) batchPush(ctx context.Context, token string, userIDs []string, } func (g *Client) singlePush(ctx context.Context, token, userID string, pushReq PushReq) error { - operationID := tracelog.GetOperationID(ctx) + operationID := mcontext.GetOperationID(ctx) pushReq.RequestID = &operationID pushReq.Audience = &Audience{Alias: []string{userID}} return g.request(ctx, pushURL, pushReq, token, nil) diff --git a/internal/push/push_handler.go b/internal/push/push_handler.go index c32a878c5..6d3f5d61b 100644 --- a/internal/push/push_handler.go +++ b/internal/push/push_handler.go @@ -12,7 +12,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" kfk "github.com/OpenIMSDK/Open-IM-Server/pkg/common/kafka" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" pbChat "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" pbPush "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/push" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" @@ -50,7 +50,7 @@ func (c *ConsumerHandler) handleMs2PsChat(ctx context.Context, msg []byte) { if nowSec-sec > 10 { return } - tracelog.SetOperationID(ctx, "") + mcontext.SetOperationID(ctx, "") var err error switch msgFromMQ.MsgData.SessionType { case constant.SuperGroupChatType: diff --git a/internal/push/push_to_client.go b/internal/push/push_to_client.go index c82d51efe..f17e09e83 100644 --- a/internal/push/push_to_client.go +++ b/internal/push/push_to_client.go @@ -19,8 +19,8 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/localcache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/prome" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msggateway" @@ -64,7 +64,7 @@ func NewOfflinePusher(cache cache.Model) offlinepush.OfflinePusher { } func (p *Pusher) MsgToUser(ctx context.Context, userID string, msg *sdkws.MsgData) error { - operationID := tracelog.GetOperationID(ctx) + operationID := mcontext.GetOperationID(ctx) var userIDs = []string{userID} log.Debug(operationID, "Get msg from msg_transfer And push msg", msg.String(), userID) // callback @@ -107,7 +107,7 @@ func (p *Pusher) MsgToUser(ctx context.Context, userID string, msg *sdkws.MsgDat } func (p *Pusher) MsgToSuperGroupUser(ctx context.Context, groupID string, msg *sdkws.MsgData) (err error) { - operationID := tracelog.GetOperationID(ctx) + operationID := mcontext.GetOperationID(ctx) log.Debug(operationID, "Get super group msg from msg_transfer And push msg", msg.String(), groupID) var pushToUserIDs []string if err := callbackBeforeSuperGroupOnlinePush(ctx, groupID, msg, &pushToUserIDs); err != nil && err != errs.ErrCallbackContinue { @@ -191,7 +191,7 @@ func (p *Pusher) GetConnsAndOnlinePush(ctx context.Context, msg *sdkws.MsgData, msgClient := msggateway.NewMsgGatewayClient(v) reply, err := msgClient.SuperGroupOnlineBatchPushOneMsg(ctx, &msggateway.OnlineBatchPushOneMsgReq{MsgData: msg, PushToUserIDs: pushToUserIDs}) if err != nil { - log.NewError(tracelog.GetOperationID(ctx), msg, len(pushToUserIDs), "err", err) + log.NewError(mcontext.GetOperationID(ctx), msg, len(pushToUserIDs), "err", err) continue } if reply != nil && reply.SinglePushResult != nil { diff --git a/internal/rpc/auth/auth.go b/internal/rpc/auth/auth.go index 3852d5ff7..85a92f2fe 100644 --- a/internal/rpc/auth/auth.go +++ b/internal/rpc/auth/auth.go @@ -6,8 +6,8 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" pbAuth "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/auth" @@ -92,7 +92,7 @@ func (s *authServer) ForceLogout(ctx context.Context, req *pbAuth.ForceLogoutReq if err := tokenverify.CheckAdmin(ctx); err != nil { return nil, err } - if err := s.forceKickOff(ctx, req.UserID, req.PlatformID, tracelog.GetOperationID(ctx)); err != nil { + if err := s.forceKickOff(ctx, req.UserID, req.PlatformID, mcontext.GetOperationID(ctx)); err != nil { return nil, err } return &resp, nil diff --git a/internal/rpc/friend/black.go b/internal/rpc/friend/black.go index 9d5ef2e72..2c8cb4dde 100644 --- a/internal/rpc/friend/black.go +++ b/internal/rpc/friend/black.go @@ -5,8 +5,8 @@ import ( "time" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" pbFriend "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/friend" "github.com/OpenIMSDK/Open-IM-Server/pkg/rpcclient/convert" ) @@ -63,7 +63,7 @@ func (s *friendServer) AddBlack(ctx context.Context, req *pbFriend.AddBlackReq) if err != nil { return nil, err } - black := relation.BlackModel{OwnerUserID: req.OwnerUserID, BlockUserID: req.BlackUserID, OperatorUserID: tracelog.GetOpUserID(ctx), CreateTime: time.Now()} + black := relation.BlackModel{OwnerUserID: req.OwnerUserID, BlockUserID: req.BlackUserID, OperatorUserID: mcontext.GetOpUserID(ctx), CreateTime: time.Now()} if err := s.BlackDatabase.Create(ctx, []*relation.BlackModel{&black}); err != nil { return nil, err } diff --git a/internal/rpc/friend/callback.go b/internal/rpc/friend/callback.go index 137bf51a7..e41cec15a 100644 --- a/internal/rpc/friend/callback.go +++ b/internal/rpc/friend/callback.go @@ -6,7 +6,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/http" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" pbfriend "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/friend" ) @@ -19,7 +19,7 @@ func CallbackBeforeAddFriend(ctx context.Context, req *pbfriend.ApplyToAddFriend FromUserID: req.FromUserID, ToUserID: req.ToUserID, ReqMsg: req.ReqMsg, - OperationID: tracelog.GetOperationID(ctx), + OperationID: mcontext.GetOperationID(ctx), } resp := &cbapi.CallbackBeforeAddFriendResp{} return http.CallBackPostReturn(config.Config.Callback.CallbackUrl, cbReq, resp, config.Config.Callback.CallbackBeforeAddFriend) diff --git a/internal/rpc/group/callback.go b/internal/rpc/group/callback.go index f5a0f1da7..1a77d1e18 100644 --- a/internal/rpc/group/callback.go +++ b/internal/rpc/group/callback.go @@ -8,7 +8,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/http" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" @@ -21,7 +21,7 @@ func CallbackBeforeCreateGroup(ctx context.Context, req *group.CreateGroupReq) ( } cbReq := &callbackstruct.CallbackBeforeCreateGroupReq{ CallbackCommand: constant.CallbackBeforeCreateGroupCommand, - OperationID: tracelog.GetOperationID(ctx), + OperationID: mcontext.GetOperationID(ctx), GroupInfo: *req.GroupInfo, } cbReq.InitMemberList = append(cbReq.InitMemberList, &apistruct.GroupAddMemberInfo{ @@ -66,7 +66,7 @@ func CallbackBeforeMemberJoinGroup(ctx context.Context, groupMember *relation.Gr } callbackReq := &callbackstruct.CallbackBeforeMemberJoinGroupReq{ CallbackCommand: constant.CallbackBeforeMemberJoinGroupCommand, - OperationID: tracelog.GetOperationID(ctx), + OperationID: mcontext.GetOperationID(ctx), GroupID: groupMember.GroupID, UserID: groupMember.UserID, Ex: groupMember.Ex, @@ -93,7 +93,7 @@ func CallbackBeforeSetGroupMemberInfo(ctx context.Context, req *group.SetGroupMe } callbackReq := callbackstruct.CallbackBeforeSetGroupMemberInfoReq{ CallbackCommand: constant.CallbackBeforeSetGroupMemberInfoCommand, - OperationID: tracelog.GetOperationID(ctx), + OperationID: mcontext.GetOperationID(ctx), GroupID: req.GroupID, UserID: req.UserID, } diff --git a/internal/rpc/group/group.go b/internal/rpc/group/group.go index fc7e63e06..a5c2d77d2 100644 --- a/internal/rpc/group/group.go +++ b/internal/rpc/group/group.go @@ -16,8 +16,8 @@ import ( relationTb "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/unrelation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" pbConversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation" @@ -63,7 +63,7 @@ type groupServer struct { func (s *groupServer) CheckGroupAdmin(ctx context.Context, groupID string) error { if !tokenverify.IsAppManagerUid(ctx) { - groupMember, err := s.GroupDatabase.TakeGroupMember(ctx, groupID, tracelog.GetOpUserID(ctx)) + groupMember, err := s.GroupDatabase.TakeGroupMember(ctx, groupID, mcontext.GetOpUserID(ctx)) if err != nil { return err } @@ -103,7 +103,7 @@ func (s *groupServer) GenGroupID(ctx context.Context, groupID *string) error { } } for i := 0; i < 10; i++ { - id := utils.Md5(strings.Join([]string{tracelog.GetOperationID(ctx), strconv.FormatInt(time.Now().UnixNano(), 10), strconv.Itoa(rand.Int())}, ",;,")) + id := utils.Md5(strings.Join([]string{mcontext.GetOperationID(ctx), strconv.FormatInt(time.Now().UnixNano(), 10), strconv.Itoa(rand.Int())}, ",;,")) bi := big.NewInt(0) bi.SetString(id[0:8], 16) id = bi.String() @@ -148,9 +148,9 @@ func (s *groupServer) CreateGroup(ctx context.Context, req *pbGroup.CreateGroupR groupMember.Nickname = "" groupMember.GroupID = group.GroupID groupMember.RoleLevel = roleLevel - groupMember.OperatorUserID = tracelog.GetOpUserID(ctx) + groupMember.OperatorUserID = mcontext.GetOpUserID(ctx) groupMember.JoinSource = constant.JoinByInvitation - groupMember.InviterUserID = tracelog.GetOpUserID(ctx) + groupMember.InviterUserID = mcontext.GetOpUserID(ctx) groupMember.JoinTime = time.Now() if err := CallbackBeforeMemberJoinGroup(ctx, groupMember, group.Ex); err != nil && err != errs.ErrCallbackContinue { return err @@ -265,7 +265,7 @@ func (s *groupServer) InviteUserToGroup(ctx context.Context, req *pbGroup.Invite } if group.NeedVerification == constant.AllNeedVerification { if !tokenverify.IsAppManagerUid(ctx) { - opUserID := tracelog.GetOpUserID(ctx) + opUserID := mcontext.GetOpUserID(ctx) member, ok := memberMap[opUserID] if !ok { return nil, errs.ErrNoPermission.Wrap("not in group") @@ -303,7 +303,7 @@ func (s *groupServer) InviteUserToGroup(ctx context.Context, req *pbGroup.Invite s.Notification.SuperGroupNotification(ctx, userID, userID) } } else { - opUserID := tracelog.GetOpUserID(ctx) + opUserID := mcontext.GetOpUserID(ctx) var groupMembers []*relationTb.GroupMemberModel for _, userID := range req.InvitedUserIDs { member := PbToDbGroupMember(userMap[userID]) @@ -388,7 +388,7 @@ func (s *groupServer) KickGroupMember(ctx context.Context, req *pbGroup.KickGrou if utils.IsDuplicateStringSlice(req.KickedUserIDs) { return nil, errs.ErrArgs.Wrap("KickedUserIDs duplicate") } - opUserID := tracelog.GetOpUserID(ctx) + opUserID := mcontext.GetOpUserID(ctx) if utils.IsContain(opUserID, req.KickedUserIDs) { return nil, errs.ErrArgs.Wrap("opUserID in KickedUserIDs") } @@ -593,7 +593,7 @@ func (s *groupServer) GroupApplicationResponse(ctx context.Context, req *pbGroup JoinTime: time.Now(), JoinSource: groupRequest.JoinSource, InviterUserID: groupRequest.InviterUserID, - OperatorUserID: tracelog.GetOpUserID(ctx), + OperatorUserID: mcontext.GetOpUserID(ctx), Ex: groupRequest.Ex, } if err = CallbackBeforeMemberJoinGroup(ctx, member, group.Ex); err != nil && err != errs.ErrCallbackContinue { @@ -616,7 +616,7 @@ func (s *groupServer) GroupApplicationResponse(ctx context.Context, req *pbGroup func (s *groupServer) JoinGroup(ctx context.Context, req *pbGroup.JoinGroupReq) (*pbGroup.JoinGroupResp, error) { resp := &pbGroup.JoinGroupResp{} - if _, err := s.UserCheck.GetPublicUserInfo(ctx, tracelog.GetOpUserID(ctx)); err != nil { + if _, err := s.UserCheck.GetPublicUserInfo(ctx, mcontext.GetOpUserID(ctx)); err != nil { return nil, err } group, err := s.GroupDatabase.TakeGroup(ctx, req.GroupID) @@ -630,27 +630,27 @@ func (s *groupServer) JoinGroup(ctx context.Context, req *pbGroup.JoinGroupReq) if group.GroupType == constant.SuperGroup { return nil, errs.ErrGroupTypeNotSupport.Wrap() } - user, err := s.UserCheck.GetUserInfo(ctx, tracelog.GetOpUserID(ctx)) + user, err := s.UserCheck.GetUserInfo(ctx, mcontext.GetOpUserID(ctx)) if err != nil { return nil, err } groupMember := PbToDbGroupMember(user) groupMember.GroupID = group.GroupID groupMember.RoleLevel = constant.GroupOrdinaryUsers - groupMember.OperatorUserID = tracelog.GetOpUserID(ctx) + groupMember.OperatorUserID = mcontext.GetOpUserID(ctx) groupMember.JoinSource = constant.JoinByInvitation - groupMember.InviterUserID = tracelog.GetOpUserID(ctx) + groupMember.InviterUserID = mcontext.GetOpUserID(ctx) if err := CallbackBeforeMemberJoinGroup(ctx, groupMember, group.Ex); err != nil && err != errs.ErrCallbackContinue { return nil, err } if err := s.GroupDatabase.CreateGroup(ctx, nil, []*relationTb.GroupMemberModel{groupMember}); err != nil { return nil, err } - s.Notification.MemberEnterDirectlyNotification(ctx, req.GroupID, tracelog.GetOpUserID(ctx), tracelog.GetOperationID(ctx)) + s.Notification.MemberEnterDirectlyNotification(ctx, req.GroupID, mcontext.GetOpUserID(ctx), mcontext.GetOperationID(ctx)) return resp, nil } groupRequest := relationTb.GroupRequestModel{ - UserID: tracelog.GetOpUserID(ctx), + UserID: mcontext.GetOpUserID(ctx), ReqMsg: req.ReqMessage, GroupID: req.GroupID, JoinSource: req.JoinSource, @@ -670,12 +670,12 @@ func (s *groupServer) QuitGroup(ctx context.Context, req *pbGroup.QuitGroupReq) return nil, err } if group.GroupType == constant.SuperGroup { - if err := s.GroupDatabase.DeleteSuperGroupMember(ctx, req.GroupID, []string{tracelog.GetOpUserID(ctx)}); err != nil { + if err := s.GroupDatabase.DeleteSuperGroupMember(ctx, req.GroupID, []string{mcontext.GetOpUserID(ctx)}); err != nil { return nil, err } - s.Notification.SuperGroupNotification(ctx, tracelog.GetOpUserID(ctx), tracelog.GetOpUserID(ctx)) + s.Notification.SuperGroupNotification(ctx, mcontext.GetOpUserID(ctx), mcontext.GetOpUserID(ctx)) } else { - _, err := s.GroupDatabase.TakeGroupMember(ctx, req.GroupID, tracelog.GetOpUserID(ctx)) + _, err := s.GroupDatabase.TakeGroupMember(ctx, req.GroupID, mcontext.GetOpUserID(ctx)) if err != nil { return nil, err } @@ -687,7 +687,7 @@ func (s *groupServer) QuitGroup(ctx context.Context, req *pbGroup.QuitGroupReq) func (s *groupServer) SetGroupInfo(ctx context.Context, req *pbGroup.SetGroupInfoReq) (*pbGroup.SetGroupInfoResp, error) { resp := &pbGroup.SetGroupInfoResp{} if !tokenverify.IsAppManagerUid(ctx) { - groupMember, err := s.GroupDatabase.TakeGroupMember(ctx, req.GroupInfoForSet.GroupID, tracelog.GetOpUserID(ctx)) + groupMember, err := s.GroupDatabase.TakeGroupMember(ctx, req.GroupInfoForSet.GroupID, mcontext.GetOpUserID(ctx)) if err != nil { return nil, err } @@ -721,7 +721,7 @@ func (s *groupServer) SetGroupInfo(ctx context.Context, req *pbGroup.SetGroupInf if req.GroupInfoForSet.Notification != "" { args := pbConversation.ModifyConversationFieldReq{ Conversation: &pbConversation.Conversation{ - OwnerUserID: tracelog.GetOpUserID(ctx), + OwnerUserID: mcontext.GetOpUserID(ctx), ConversationID: utils.GetConversationIDBySessionType(group.GroupID, constant.GroupChatType), ConversationType: constant.GroupChatType, GroupID: group.GroupID, @@ -772,8 +772,8 @@ func (s *groupServer) TransferGroupOwner(ctx context.Context, req *pbGroup.Trans if oldOwner == nil { return nil, errs.ErrArgs.Wrap("OldOwnerUser not in group " + req.NewOwnerUserID) } - if oldOwner.GroupID != tracelog.GetOpUserID(ctx) { - return nil, errs.ErrNoPermission.Wrap(fmt.Sprintf("user %s no permission transfer group owner", tracelog.GetOpUserID(ctx))) + if oldOwner.GroupID != mcontext.GetOpUserID(ctx) { + return nil, errs.ErrNoPermission.Wrap(fmt.Sprintf("user %s no permission transfer group owner", mcontext.GetOpUserID(ctx))) } } if err := s.GroupDatabase.TransferGroupOwner(ctx, req.GroupID, req.OldOwnerUserID, req.NewOwnerUserID, newOwner.RoleLevel); err != nil { @@ -922,7 +922,7 @@ func (s *groupServer) MuteGroupMember(ctx context.Context, req *pbGroup.MuteGrou if err != nil { return nil, err } - if !(tracelog.GetOpUserID(ctx) == req.UserID || tokenverify.IsAppManagerUid(ctx)) { + if !(mcontext.GetOpUserID(ctx) == req.UserID || tokenverify.IsAppManagerUid(ctx)) { opMember, err := s.GroupDatabase.TakeGroupMember(ctx, req.GroupID, req.UserID) if err != nil { return nil, err @@ -945,8 +945,8 @@ func (s *groupServer) CancelMuteGroupMember(ctx context.Context, req *pbGroup.Ca if err != nil { return nil, err } - if !(tracelog.GetOpUserID(ctx) == req.UserID || tokenverify.IsAppManagerUid(ctx)) { - opMember, err := s.GroupDatabase.TakeGroupMember(ctx, req.GroupID, tracelog.GetOpUserID(ctx)) + if !(mcontext.GetOpUserID(ctx) == req.UserID || tokenverify.IsAppManagerUid(ctx)) { + opMember, err := s.GroupDatabase.TakeGroupMember(ctx, req.GroupID, mcontext.GetOpUserID(ctx)) if err != nil { return nil, err } @@ -1005,7 +1005,7 @@ func (s *groupServer) SetGroupMemberInfo(ctx context.Context, req *pbGroup.SetGr } groupIDs := utils.Keys(groupIDMap) userIDs := utils.Keys(userIDMap) - members, err := s.GroupDatabase.FindGroupMember(ctx, groupIDs, append(userIDs, tracelog.GetOpUserID(ctx)), nil) + members, err := s.GroupDatabase.FindGroupMember(ctx, groupIDs, append(userIDs, mcontext.GetOpUserID(ctx)), nil) if err != nil { return nil, err } @@ -1021,7 +1021,7 @@ func (s *groupServer) SetGroupMemberInfo(ctx context.Context, req *pbGroup.SetGr return [...]string{e.GroupID, e.UserID} }) if !tokenverify.IsAppManagerUid(ctx) { - opUserID := tracelog.GetOpUserID(ctx) + opUserID := mcontext.GetOpUserID(ctx) for _, member := range members { if member.UserID == opUserID { continue diff --git a/internal/rpc/msg/callback.go b/internal/rpc/msg/callback.go index 0cbb7d6e2..fa648248c 100644 --- a/internal/rpc/msg/callback.go +++ b/internal/rpc/msg/callback.go @@ -6,7 +6,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/http" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" pbChat "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" ) @@ -21,7 +21,7 @@ func toCommonCallback(ctx context.Context, msg *pbChat.SendMsgReq, command strin ServerMsgID: msg.MsgData.ServerMsgID, CallbackCommand: command, ClientMsgID: msg.MsgData.ClientMsgID, - OperationID: tracelog.GetOperationID(ctx), + OperationID: mcontext.GetOperationID(ctx), SenderPlatformID: msg.MsgData.SenderPlatformID, SenderNickname: msg.MsgData.SenderNickname, SessionType: msg.MsgData.SessionType, diff --git a/internal/rpc/msg/extend_msg_callback.go b/internal/rpc/msg/extend_msg_callback.go index 8eaf5696b..63e7ee4d5 100644 --- a/internal/rpc/msg/extend_msg_callback.go +++ b/internal/rpc/msg/extend_msg_callback.go @@ -6,7 +6,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/http" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" ) @@ -15,10 +15,10 @@ func CallbackSetMessageReactionExtensions(ctx context.Context, setReq *msg.SetMe return nil } req := &cbapi.CallbackBeforeSetMessageReactionExtReq{ - OperationID: tracelog.GetOperationID(ctx), + OperationID: mcontext.GetOperationID(ctx), CallbackCommand: constant.CallbackBeforeSetMessageReactionExtensionCommand, SourceID: setReq.SourceID, - OpUserID: tracelog.GetOpUserID(ctx), + OpUserID: mcontext.GetOpUserID(ctx), SessionType: setReq.SessionType, ReactionExtensionList: setReq.ReactionExtensions, ClientMsgID: setReq.ClientMsgID, @@ -58,10 +58,10 @@ func CallbackGetMessageListReactionExtensions(ctx context.Context, getReq *msg.G return nil } req := &cbapi.CallbackGetMessageListReactionExtReq{ - OperationID: tracelog.GetOperationID(ctx), + OperationID: mcontext.GetOperationID(ctx), CallbackCommand: constant.CallbackGetMessageListReactionExtensionsCommand, SourceID: getReq.SourceID, - OpUserID: tracelog.GetOperationID(ctx), + OpUserID: mcontext.GetOperationID(ctx), SessionType: getReq.SessionType, TypeKeyList: getReq.TypeKeys, } @@ -71,10 +71,10 @@ func CallbackGetMessageListReactionExtensions(ctx context.Context, getReq *msg.G func CallbackAddMessageReactionExtensions(ctx context.Context, setReq *msg.ModifyMessageReactionExtensionsReq) error { req := &cbapi.CallbackAddMessageReactionExtReq{ - OperationID: tracelog.GetOperationID(ctx), + OperationID: mcontext.GetOperationID(ctx), CallbackCommand: constant.CallbackAddMessageListReactionExtensionsCommand, SourceID: setReq.SourceID, - OpUserID: tracelog.GetOperationID(ctx), + OpUserID: mcontext.GetOperationID(ctx), SessionType: setReq.SessionType, ReactionExtensionList: setReq.ReactionExtensions, ClientMsgID: setReq.ClientMsgID, diff --git a/internal/rpc/msg/msg_status.go b/internal/rpc/msg/msg_status.go index 4fd521b38..5639ecc01 100644 --- a/internal/rpc/msg/msg_status.go +++ b/internal/rpc/msg/msg_status.go @@ -3,13 +3,13 @@ package msg import ( "context" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" pbMsg "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" ) func (m *msgServer) SetSendMsgStatus(ctx context.Context, req *pbMsg.SetSendMsgStatusReq) (*pbMsg.SetSendMsgStatusResp, error) { resp := &pbMsg.SetSendMsgStatusResp{} - if err := m.MsgDatabase.SetSendMsgStatus(ctx, tracelog.GetOperationID(ctx), req.Status); err != nil { + if err := m.MsgDatabase.SetSendMsgStatus(ctx, mcontext.GetOperationID(ctx), req.Status); err != nil { return nil, err } return resp, nil @@ -17,7 +17,7 @@ func (m *msgServer) SetSendMsgStatus(ctx context.Context, req *pbMsg.SetSendMsgS func (m *msgServer) GetSendMsgStatus(ctx context.Context, req *pbMsg.GetSendMsgStatusReq) (*pbMsg.GetSendMsgStatusResp, error) { resp := &pbMsg.GetSendMsgStatusResp{} - status, err := m.MsgDatabase.GetSendMsgStatus(ctx, tracelog.GetOperationID(ctx)) + status, err := m.MsgDatabase.GetSendMsgStatus(ctx, mcontext.GetOperationID(ctx)) if IsNotFound(err) { resp.Status = constant.MsgStatusNotExist return resp, nil diff --git a/internal/rpc/user/user.go b/internal/rpc/user/user.go index 51da13eba..9d716922a 100644 --- a/internal/rpc/user/user.go +++ b/internal/rpc/user/user.go @@ -8,8 +8,8 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/controller" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/relation" tablerelation "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" registry "github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry" "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" @@ -92,10 +92,10 @@ func (s *userServer) UpdateUserInfo(ctx context.Context, req *pbuser.UpdateUserI } go func() { for _, v := range friends { - s.notification.FriendInfoUpdatedNotification(ctx, req.UserInfo.UserID, v, tracelog.GetOpUserID(ctx)) + s.notification.FriendInfoUpdatedNotification(ctx, req.UserInfo.UserID, v, mcontext.GetOpUserID(ctx)) } }() - s.notification.UserInfoUpdatedNotification(ctx, tracelog.GetOpUserID(ctx), req.UserInfo.UserID) + s.notification.UserInfoUpdatedNotification(ctx, mcontext.GetOpUserID(ctx), req.UserInfo.UserID) return resp, nil } diff --git a/internal/tools/msg.go b/internal/tools/msg.go index 8a1ff62ac..60d4815d7 100644 --- a/internal/tools/msg.go +++ b/internal/tools/msg.go @@ -11,7 +11,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/relation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/unrelation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" "github.com/go-redis/redis/v8" "math" @@ -59,7 +59,7 @@ func (c *MsgTool) getCronTaskOperationID() string { func (c *MsgTool) AllUserClearMsgAndFixSeq() { operationID := "AllUserAndGroupClearMsgAndFixSeq" - ctx := tracelog.NewCtx(utils.GetSelfFuncName()) + ctx := mcontext.NewCtx(utils.GetSelfFuncName()) log.NewInfo(operationID, "============================ start del cron task ============================") var err error userIDList, err := c.userDatabase.GetAllUserID(ctx) @@ -81,7 +81,7 @@ func (c *MsgTool) AllUserClearMsgAndFixSeq() { func (c *MsgTool) ClearUsersMsg(ctx context.Context, userIDs []string) { for _, userID := range userIDs { if err := c.msgDatabase.DeleteUserMsgsAndSetMinSeq(ctx, userID, int64(config.Config.Mongo.DBRetainChatRecords*24*60*60)); err != nil { - log.NewError(tracelog.GetOperationID(ctx), utils.GetSelfFuncName(), err.Error(), userID) + log.NewError(mcontext.GetOperationID(ctx), utils.GetSelfFuncName(), err.Error(), userID) } maxSeqCache, maxSeqMongo, err := c.GetAndFixUserSeqs(ctx, userID) if err != nil { @@ -95,14 +95,14 @@ func (c *MsgTool) ClearSuperGroupMsg(ctx context.Context, superGroupIDs []string for _, groupID := range superGroupIDs { userIDs, err := c.groupDatabase.FindGroupMemberUserID(ctx, groupID) if err != nil { - log.NewError(tracelog.GetOperationID(ctx), utils.GetSelfFuncName(), "FindGroupMemberUserID", err.Error(), groupID) + log.NewError(mcontext.GetOperationID(ctx), utils.GetSelfFuncName(), "FindGroupMemberUserID", err.Error(), groupID) continue } if err := c.msgDatabase.DeleteUserSuperGroupMsgsAndSetMinSeq(ctx, groupID, userIDs, int64(config.Config.Mongo.DBRetainChatRecords*24*60*60)); err != nil { - log.NewError(tracelog.GetOperationID(ctx), utils.GetSelfFuncName(), err.Error(), "DeleteUserSuperGroupMsgsAndSetMinSeq failed", groupID, userIDs, config.Config.Mongo.DBRetainChatRecords) + log.NewError(mcontext.GetOperationID(ctx), utils.GetSelfFuncName(), err.Error(), "DeleteUserSuperGroupMsgsAndSetMinSeq failed", groupID, userIDs, config.Config.Mongo.DBRetainChatRecords) } if err := c.fixGroupSeq(ctx, groupID, userIDs); err != nil { - log.NewError(tracelog.GetOperationID(ctx), utils.GetSelfFuncName(), err.Error(), groupID, userIDs) + log.NewError(mcontext.GetOperationID(ctx), utils.GetSelfFuncName(), err.Error(), groupID, userIDs) } } } @@ -129,7 +129,7 @@ func (c *MsgTool) fixGroupSeq(ctx context.Context, groupID string, userIDs []str } } if err := c.CheckMaxSeqWithMongo(ctx, groupID, maxSeqCache, maxSeqMongo, constant.WriteDiffusion); err != nil { - log.NewWarn(tracelog.GetOperationID(ctx), "cache max seq and mongo max seq is diff > 10", groupID, maxSeqCache, maxSeqMongo, constant.WriteDiffusion) + log.NewWarn(mcontext.GetOperationID(ctx), "cache max seq and mongo max seq is diff > 10", groupID, maxSeqCache, maxSeqMongo, constant.WriteDiffusion) } return nil } @@ -138,16 +138,16 @@ func (c *MsgTool) GetAndFixUserSeqs(ctx context.Context, userID string) (maxSeqC minSeqMongo, maxSeqMongo, minSeqCache, maxSeqCache, err := c.msgDatabase.GetUserMinMaxSeqInMongoAndCache(ctx, userID) if err != nil { if err != unrelation.ErrMsgNotFound { - log.NewError(tracelog.GetOperationID(ctx), utils.GetSelfFuncName(), err.Error(), "GetUserMinMaxSeqInMongoAndCache failed", userID) + log.NewError(mcontext.GetOperationID(ctx), utils.GetSelfFuncName(), err.Error(), "GetUserMinMaxSeqInMongoAndCache failed", userID) } return 0, 0, err } - log.NewDebug(tracelog.GetOperationID(ctx), userID, minSeqMongo, maxSeqMongo, minSeqCache, maxSeqCache) + log.NewDebug(mcontext.GetOperationID(ctx), userID, minSeqMongo, maxSeqMongo, minSeqCache, maxSeqCache) if minSeqCache > maxSeqCache { if err := c.msgDatabase.SetUserMinSeq(ctx, userID, maxSeqCache); err != nil { - log.NewError(tracelog.GetOperationID(ctx), "SetUserMinSeq failed", userID, minSeqCache, maxSeqCache) + log.NewError(mcontext.GetOperationID(ctx), "SetUserMinSeq failed", userID, minSeqCache, maxSeqCache) } else { - log.NewWarn(tracelog.GetOperationID(ctx), "SetUserMinSeq success", userID, minSeqCache, maxSeqCache) + log.NewWarn(mcontext.GetOperationID(ctx), "SetUserMinSeq success", userID, minSeqCache, maxSeqCache) } } return maxSeqCache, maxSeqMongo, nil @@ -156,14 +156,14 @@ func (c *MsgTool) GetAndFixUserSeqs(ctx context.Context, userID string) (maxSeqC func (c *MsgTool) GetAndFixGroupUserSeq(ctx context.Context, userID string, groupID string, maxSeqCache int64) (minSeqCache int64, err error) { minSeqCache, err = c.msgDatabase.GetGroupUserMinSeq(ctx, groupID, userID) if err != nil { - log.NewError(tracelog.GetOperationID(ctx), "GetGroupUserMinSeq failed", groupID, userID) + log.NewError(mcontext.GetOperationID(ctx), "GetGroupUserMinSeq failed", groupID, userID) return 0, err } if minSeqCache > maxSeqCache { if err := c.msgDatabase.SetGroupUserMinSeq(ctx, groupID, userID, maxSeqCache); err != nil { - log.NewError(tracelog.GetOperationID(ctx), "SetGroupUserMinSeq failed", userID, minSeqCache, maxSeqCache) + log.NewError(mcontext.GetOperationID(ctx), "SetGroupUserMinSeq failed", userID, minSeqCache, maxSeqCache) } else { - log.NewWarn(tracelog.GetOperationID(ctx), "SetGroupUserMinSeq success", userID, minSeqCache, maxSeqCache) + log.NewWarn(mcontext.GetOperationID(ctx), "SetGroupUserMinSeq success", userID, minSeqCache, maxSeqCache) } } return minSeqCache, nil diff --git a/internal/tools/msg_test.go b/internal/tools/msg_test.go index 1441a23eb..d3a62b5f5 100644 --- a/internal/tools/msg_test.go +++ b/internal/tools/msg_test.go @@ -4,7 +4,7 @@ import ( "context" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/cache" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" "github.com/golang/protobuf/proto" @@ -66,7 +66,7 @@ func TestDeleteMongoMsgAndResetRedisSeq(t *testing.T) { mongoClient := mgo.GetDatabase().Collection(unRelationTb.MsgDocModel{}.TableName()) ctx := context.Background() - tracelog.SetOperationID(ctx, operationID) + mcontext.SetOperationID(ctx, operationID) testUID1 := "test_del_id1" _, err = mongoClient.DeleteOne(ctx, bson.M{"uid": testUID1 + ":" + strconv.Itoa(0)}) if err != nil { diff --git a/pkg/common/constant/constant.go b/pkg/common/constant/constant.go index e553be29b..ef1390bf6 100644 --- a/pkg/common/constant/constant.go +++ b/pkg/common/constant/constant.go @@ -273,7 +273,7 @@ const ( const OperationID = "operationID" const OpUserID = "opUserID" const ConnID = "connID" -const OpUserIDPlatformID = "platformID" +const OpUserPlatform = "platform" const Token = "token" const ( diff --git a/pkg/common/db/cache/conversation.go b/pkg/common/db/cache/conversation.go index edd84ae24..8501ce7c2 100644 --- a/pkg/common/db/cache/conversation.go +++ b/pkg/common/db/cache/conversation.go @@ -133,7 +133,7 @@ func (c *ConversationRedis) getSuperGroupRecvNotNotifyUserIDsKey(groupID string) // // return string(bytes), nil // //} // //defer func() { -// // tracelog.SetCtxDebug(ctx, utils.GetFuncName(1), err, "ownerUserID", ownerUserID, "conversationIDs", conversationIDs) +// // mcontext.SetCtxDebug(ctx, utils.GetFuncName(1), err, "ownerUserID", ownerUserID, "conversationIDs", conversationIDs) // //}() // //conversationIDsStr, err := c.rcClient.Fetch(c.getConversationIDsKey(ownerUserID), time.Second*30*60, getConversationIDs) // //err = json.Unmarshal([]byte(conversationIDsStr), &conversationIDs) @@ -159,7 +159,7 @@ func (c *ConversationRedis) GetUserConversationIDs1(ctx context.Context, ownerUs // return string(bytes), nil //} //defer func() { - // tracelog.SetCtxDebug(ctx, utils.GetFuncName(1), err, "ownerUserID", ownerUserID, "conversationIDs", conversationIDs) + // mcontext.SetCtxDebug(ctx, utils.GetFuncName(1), err, "ownerUserID", ownerUserID, "conversationIDs", conversationIDs) //}() //conversationIDsStr, err := c.rcClient.Fetch(c.getConversationIDsKey(ownerUserID), time.Second*30*60, getConversationIDs) //err = json.Unmarshal([]byte(conversationIDsStr), &conversationIDs) @@ -213,7 +213,7 @@ func (c *ConversationRedis) DelConversation(ctx context.Context, ownerUserID, co //func (c *ConversationRedis) GetConversations(ctx context.Context, ownerUserID string, conversationIDs []string) (conversations []relationTb.ConversationModel, err error) { // defer func() { -// tracelog.SetCtxDebug(ctx, utils.GetFuncName(1), err, "ownerUserID", ownerUserID, "conversationIDs", conversationIDs, "conversations", conversations) +// mcontext.SetCtxDebug(ctx, utils.GetFuncName(1), err, "ownerUserID", ownerUserID, "conversationIDs", conversationIDs, "conversations", conversations) // }() // for _, conversationID := range conversationIDs { // conversation, err := c.GetConversation(ctx, ownerUserID, conversationID) @@ -227,7 +227,7 @@ func (c *ConversationRedis) DelConversation(ctx context.Context, ownerUserID, co //func (c *ConversationRedis) GetUserAllConversations(ctx context.Context, ownerUserID string) (conversations []relationTb.ConversationModel, err error) { // defer func() { -// tracelog.SetCtxDebug(ctx, utils.GetFuncName(1), err, "ownerUserID", ownerUserID, "conversations", conversations) +// mcontext.SetCtxDebug(ctx, utils.GetFuncName(1), err, "ownerUserID", ownerUserID, "conversations", conversations) // }() // IDs, err := c.GetUserConversationIDs(ctx, ownerUserID) // if err != nil { @@ -253,7 +253,7 @@ func (c *ConversationRedis) DelConversation(ctx context.Context, ownerUserID, co // // return strconv.Itoa(int(conversation.RecvMsgOpt)), nil // //} // //defer func() { -// // tracelog.SetCtxDebug(ctx, utils.GetFuncName(1), err, "ownerUserID", ownerUserID, "conversationID", conversationID, "opt", opt) +// // mcontext.SetCtxDebug(ctx, utils.GetFuncName(1), err, "ownerUserID", ownerUserID, "conversationID", conversationID, "opt", opt) // //}() // //optStr, err := c.rcClient.Fetch(c.getConversationKey(ownerUserID, conversationID), c.expireTime, getConversation) // //if err != nil { diff --git a/pkg/common/db/cache/extend_msg_set.go b/pkg/common/db/cache/extend_msg_set.go index 755965317..bbd04fa0c 100644 --- a/pkg/common/db/cache/extend_msg_set.go +++ b/pkg/common/db/cache/extend_msg_set.go @@ -35,7 +35,7 @@ func (e *ExtendMsgSetCache) GetExtendMsg(ctx context.Context, sourceID string, s // return string(bytes), nil //} //defer func() { - // tracelog.SetCtxDebug(ctx, utils.GetFuncName(1), err, "sourceID", sourceID, "sessionType", + // mcontext.SetCtxDebug(ctx, utils.GetFuncName(1), err, "sourceID", sourceID, "sessionType", // sessionType, "clientMsgID", clientMsgID, "firstModifyTime", firstModifyTime, "extendMsg", extendMsg) //}() //extendMsgStr, err := db.DB.Rc.Fetch(extendMsgCache+clientMsgID, time.Second*30*60, getExtendMsg) diff --git a/pkg/common/db/cache/group.go b/pkg/common/db/cache/group.go index c7aa47497..e9d47cb1c 100644 --- a/pkg/common/db/cache/group.go +++ b/pkg/common/db/cache/group.go @@ -187,7 +187,7 @@ func (g *GroupCacheRedis) DelGroupMemberIDs(ctx context.Context, groupID string) // return string(bytes), nil // } // defer func() { -// tracelog.SetCtxDebug(ctx, utils.GetFuncName(1), err, "userID", userID, "joinedGroupIDs", joinedGroupIDs) +// mcontext.SetCtxDebug(ctx, utils.GetFuncName(1), err, "userID", userID, "joinedGroupIDs", joinedGroupIDs) // }() // joinedGroupIDListStr, err := g.rcClient.Fetch(g.getJoinedGroupsKey(userID), time.Second*30*60, getJoinedGroupIDList) // if err != nil { @@ -203,7 +203,7 @@ func (g *GroupCacheRedis) DelJoinedGroupID(ctx context.Context, userID string) ( //func (g *GroupCacheRedis) DelJoinedGroupIDs(ctx context.Context, userIDs []string) (err error) { // defer func() { -// tracelog.SetCtxDebug(ctx, utils.GetFuncName(1), err, "userID", userID) +// mcontext.SetCtxDebug(ctx, utils.GetFuncName(1), err, "userID", userID) // }() // for _, userID := range userIDs { // if err := g.DelJoinedGroupID(ctx, userID); err != nil { @@ -226,7 +226,7 @@ func (g *GroupCacheRedis) GetGroupMemberInfo(ctx context.Context, groupID, userI //func (g *GroupCacheRedis) GetGroupMembersInfo(ctx context.Context, count, offset int32, groupID string) (groupMembers []*relation.GroupMember, err error) { // defer func() { -// tracelog.SetCtxDebug(ctx, utils.GetFuncName(1), err, "count", count, "offset", offset, "groupID", groupID, "groupMember", groupMembers) +// mcontext.SetCtxDebug(ctx, utils.GetFuncName(1), err, "count", count, "offset", offset, "groupID", groupID, "groupMember", groupMembers) // }() // groupMemberIDList, err := g.GetGroupMemberIDs(ctx, groupID) // if err != nil { @@ -283,7 +283,7 @@ func (g *GroupCacheRedis) DelGroupMemberInfo(ctx context.Context, groupID, userI // return strconv.Itoa(int(num)), nil // } // defer func() { -// tracelog.SetCtxDebug(ctx, utils.GetFuncName(1), err, "groupID", groupID, "num", num) +// mcontext.SetCtxDebug(ctx, utils.GetFuncName(1), err, "groupID", groupID, "num", num) // }() // groupMember, err := g.rcClient.Fetch(g.getGroupMemberNumKey(groupID), time.Second*30*60, getGroupMemberNum) // if err != nil { diff --git a/pkg/common/db/cache/redis.go b/pkg/common/db/cache/redis.go index 859b4c16d..90fedf869 100644 --- a/pkg/common/db/cache/redis.go +++ b/pkg/common/db/cache/redis.go @@ -7,7 +7,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" pbMsg "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" @@ -251,7 +251,7 @@ func (c *cache) SetMessageToCache(ctx context.Context, userID string, msgList [] } } if len(failedMsgs) != 0 { - return len(failedMsgs), errors.New(fmt.Sprintf("set msg to cache failed, failed lists: %q,%s", failedMsgs, tracelog.GetOperationID(ctx))) + return len(failedMsgs), errors.New(fmt.Sprintf("set msg to cache failed, failed lists: %q,%s", failedMsgs, mcontext.GetOperationID(ctx))) } _, err := pipe.Exec(ctx) return 0, err diff --git a/pkg/common/db/controller/friend.go b/pkg/common/db/controller/friend.go index 553e52d17..f36918132 100644 --- a/pkg/common/db/controller/friend.go +++ b/pkg/common/db/controller/friend.go @@ -7,7 +7,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/table/relation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/tx" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" "gorm.io/gorm" @@ -104,7 +104,7 @@ func (f *friendDatabase) BecomeFriends(ctx context.Context, ownerUserID string, if err != nil { return err } - opUserID := tracelog.GetOperationID(ctx) + opUserID := mcontext.GetOperationID(ctx) for _, v := range friendUserIDs { fs1 = append(fs1, &relation.FriendModel{OwnerUserID: ownerUserID, FriendUserID: v, AddSource: addSource, OperatorUserID: opUserID}) } diff --git a/pkg/common/db/controller/msg.go b/pkg/common/db/controller/msg.go index 91233a139..ec06c1a43 100644 --- a/pkg/common/db/controller/msg.go +++ b/pkg/common/db/controller/msg.go @@ -9,8 +9,8 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/db/unrelation" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/kafka" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/prome" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" "github.com/gogo/protobuf/sortkeys" "sync" "time" @@ -498,7 +498,7 @@ func (db *msgDatabase) GetMsgBySeqs(ctx context.Context, userID string, seqs []i if err != nil { if err != redis.Nil { prome.Add(prome.MsgPullFromRedisFailedCounter, len(failedSeqs)) - log.Error(tracelog.GetOperationID(ctx), "get message from redis exception", err.Error(), failedSeqs) + log.Error(mcontext.GetOperationID(ctx), "get message from redis exception", err.Error(), failedSeqs) } } prome.Add(prome.MsgPullFromRedisSuccessCounter, len(successMsgs)) @@ -519,7 +519,7 @@ func (db *msgDatabase) GetSuperGroupMsgBySeqs(ctx context.Context, groupID strin if err != nil { if err != redis.Nil { prome.Add(prome.MsgPullFromRedisFailedCounter, len(failedSeqs)) - log.Error(tracelog.GetOperationID(ctx), "get message from redis exception", err.Error(), failedSeqs) + log.Error(mcontext.GetOperationID(ctx), "get message from redis exception", err.Error(), failedSeqs) } } prome.Add(prome.MsgPullFromRedisSuccessCounter, len(successMsgs)) @@ -604,7 +604,7 @@ func (db *msgDatabase) deleteMsgRecursion(ctx context.Context, sourceID string, if err != nil || msgs.DocID == "" { if err != nil { if err == unrelation.ErrMsgListNotExist { - log.NewDebug(tracelog.GetOperationID(ctx), utils.GetSelfFuncName(), "ID:", sourceID, "index:", index, err.Error()) + log.NewDebug(mcontext.GetOperationID(ctx), utils.GetSelfFuncName(), "ID:", sourceID, "index:", index, err.Error()) } else { //log.NewError(operationID, utils.GetSelfFuncName(), "GetUserMsgListByIndex failed", err.Error(), index, ID) } @@ -618,7 +618,7 @@ func (db *msgDatabase) deleteMsgRecursion(ctx context.Context, sourceID string, } //log.NewDebug(operationID, "ID:", sourceID, "index:", index, "uid:", msgs.UID, "len:", len(msgs.Msg)) if int64(len(msgs.Msg)) > db.msg.GetSingleGocMsgNum() { - log.NewWarn(tracelog.GetOperationID(ctx), utils.GetSelfFuncName(), "msgs too large:", len(msgs.Msg), "docID:", msgs.DocID) + log.NewWarn(mcontext.GetOperationID(ctx), utils.GetSelfFuncName(), "msgs too large:", len(msgs.Msg), "docID:", msgs.DocID) } if msgs.Msg[len(msgs.Msg)-1].SendTime+(remainTime*1000) < utils.GetCurrentTimestampByMill() && msgs.IsFull() { delStruct.delDocIDs = append(delStruct.delDocIDs, msgs.DocID) diff --git a/pkg/common/kafka/consumer_group.go b/pkg/common/kafka/consumer_group.go index 21e96cd0d..7bc29fda2 100644 --- a/pkg/common/kafka/consumer_group.go +++ b/pkg/common/kafka/consumer_group.go @@ -9,7 +9,7 @@ package kafka import ( "context" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/Shopify/sarama" ) @@ -43,14 +43,14 @@ func NewMConsumerGroup(consumerConfig *MConsumerGroupConfig, topics, addrs []str } func (mc *MConsumerGroup) GetContextFromMsg(cMsg *sarama.ConsumerMessage, rootFuncName string) context.Context { - ctx := tracelog.NewCtx(rootFuncName) + ctx := mcontext.NewCtx(rootFuncName) var operationID string for _, v := range cMsg.Headers { if string(v.Key) == constant.OperationID { operationID = string(v.Value) } } - tracelog.SetOperationID(ctx, operationID) + mcontext.SetOperationID(ctx, operationID) return ctx } diff --git a/pkg/common/kafka/producer.go b/pkg/common/kafka/producer.go index e8a350fc9..910078525 100644 --- a/pkg/common/kafka/producer.go +++ b/pkg/common/kafka/producer.go @@ -6,7 +6,7 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" log "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" "github.com/Shopify/sarama" @@ -15,6 +15,8 @@ import ( prome "github.com/OpenIMSDK/Open-IM-Server/pkg/common/prome" ) +var emptyMsg = errors.New("binary msg is empty") + type Producer struct { topic string addr []string @@ -47,30 +49,33 @@ func NewKafkaProducer(addr []string, topic string) *Producer { } func (p *Producer) SendMessage(ctx context.Context, key string, m proto.Message) (int32, int64, error) { - operationID := tracelog.GetOperationID(ctx) - log.Info(operationID, "SendMessage", "key ", key, m.String(), p.producer) + log.ZDebug(ctx, "SendMessage", "key ", key, "msg", m.String()) kMsg := &sarama.ProducerMessage{} kMsg.Topic = p.topic kMsg.Key = sarama.StringEncoder(key) bMsg, err := proto.Marshal(m) if err != nil { - log.Error(operationID, "", "proto marshal err = %s", err.Error()) - return -1, -1, err + return 0, 0, utils.Wrap(err, "kafka proto Marshal err") } if len(bMsg) == 0 { - log.Error(operationID, "len(bMsg) == 0 ") - return 0, 0, errors.New("len(bMsg) == 0 ") + return 0, 0, utils.Wrap(emptyMsg, "") } kMsg.Value = sarama.ByteEncoder(bMsg) - log.Info(operationID, "ByteEncoder SendMessage begin", "key ", kMsg, p.producer, "len: ", kMsg.Key.Length(), kMsg.Value.Length()) if kMsg.Key.Length() == 0 || kMsg.Value.Length() == 0 { - log.Error(operationID, "kMsg.Key.Length() == 0 || kMsg.Value.Length() == 0 ", kMsg) - return -1, -1, errors.New("key or value == 0") + return 0, 0, utils.Wrap(emptyMsg, "") } kMsg.Metadata = ctx - kMsg.Headers = []sarama.RecordHeader{{Key: []byte(constant.OperationID), Value: []byte(operationID)}} + operationID, opUserID, platform, connID, err := mcontext.GetMustCtxInfo(ctx) + if err != nil { + return 0, 0, utils.Wrap(err, "") + } + kMsg.Headers = []sarama.RecordHeader{ + {Key: []byte(constant.OperationID), Value: []byte(operationID)}, + {Key: []byte(constant.OpUserID), Value: []byte(opUserID)}, + {Key: []byte(constant.OpUserPlatform), Value: []byte(platform)}, + {Key: []byte(constant.ConnID), Value: []byte(connID)}} partition, offset, err := p.producer.SendMessage(kMsg) - log.Info(operationID, "ByteEncoder SendMessage end", "key ", kMsg.Key.Length(), kMsg.Value.Length(), p.producer) + log.ZDebug(ctx, "ByteEncoder SendMessage end", "key ", kMsg.Key.Length(), "key length", kMsg.Value.Length()) if err == nil { prome.Inc(prome.SendMsgCounter) } diff --git a/pkg/common/log/logrus.go b/pkg/common/log/logrus.go index cd4d40921..9aa432fcb 100644 --- a/pkg/common/log/logrus.go +++ b/pkg/common/log/logrus.go @@ -4,7 +4,7 @@ import ( "bufio" "context" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" //"bufio" "fmt" @@ -99,7 +99,7 @@ func loggerInit(moduleName string) *LogrusLogger { } func InfoKv(ctx context.Context, msg string, keysAndValues ...interface{}) { - operationID := tracelog.GetOperationID(ctx) + operationID := mcontext.GetOperationID(ctx) logger.WithFields(logrus.Fields{ "OperationID": operationID, "PID": logger.Pid, diff --git a/pkg/common/log/zap.go b/pkg/common/log/zap.go index 4a5c2efa2..a405fd2e4 100644 --- a/pkg/common/log/zap.go +++ b/pkg/common/log/zap.go @@ -4,7 +4,7 @@ import ( "context" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" rotatelogs "github.com/lestrrat-go/file-rotatelogs" "os" "path/filepath" @@ -139,22 +139,22 @@ func (l *ZapLogger) Error(ctx context.Context, msg string, err error, keysAndVal if err != nil { keysAndValues = append(keysAndValues, "error", err.Error()) } - keysAndValues = append([]interface{}{constant.OperationID, tracelog.GetOperationID(ctx)}, keysAndValues...) + keysAndValues = append([]interface{}{constant.OperationID, mcontext.GetOperationID(ctx)}, keysAndValues...) l.zap.Errorw(msg, keysAndValues...) } func (l *ZapLogger) kvAppend(ctx context.Context, keysAndValues []interface{}) []interface{} { - operationID := tracelog.GetOperationID(ctx) - opUserID := tracelog.GetOpUserID(ctx) - connID := tracelog.GetConnID(ctx) + operationID := mcontext.GetOperationID(ctx) + opUserID := mcontext.GetOpUserID(ctx) + connID := mcontext.GetConnID(ctx) if opUserID != "" { - keysAndValues = append([]interface{}{constant.OpUserID, tracelog.GetOpUserID(ctx)}, keysAndValues...) + keysAndValues = append([]interface{}{constant.OpUserID, mcontext.GetOpUserID(ctx)}, keysAndValues...) } if operationID != "" { - keysAndValues = append([]interface{}{constant.OperationID, tracelog.GetOperationID(ctx)}, keysAndValues...) + keysAndValues = append([]interface{}{constant.OperationID, mcontext.GetOperationID(ctx)}, keysAndValues...) } if connID != "" { - keysAndValues = append([]interface{}{constant.ConnID, tracelog.GetConnID(ctx)}, keysAndValues...) + keysAndValues = append([]interface{}{constant.ConnID, mcontext.GetConnID(ctx)}, keysAndValues...) } return keysAndValues } diff --git a/pkg/common/tracelog/ctx.go b/pkg/common/mcontext/ctx.go similarity index 65% rename from pkg/common/tracelog/ctx.go rename to pkg/common/mcontext/ctx.go index 409b5614f..bbb26f41c 100644 --- a/pkg/common/tracelog/ctx.go +++ b/pkg/common/mcontext/ctx.go @@ -1,8 +1,9 @@ -package tracelog +package mcontext import ( "context" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" + "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" ) func NewCtx(operationID string) context.Context { @@ -33,6 +34,26 @@ func GetOperationID(ctx context.Context) string { } return "" } +func GetMustCtxInfo(ctx context.Context) (operationID, opUserID, platform, connID string, err error) { + operationID, ok := ctx.Value(constant.OperationID).(string) + if !ok { + err = errs.ErrArgs.Wrap("ctx missing operationID") + return + } + opUserID, ok1 := ctx.Value(constant.OpUserID).(string) + if !ok1 { + err = errs.ErrArgs.Wrap("ctx missing opUserID") + return + } + platform, ok2 := ctx.Value(constant.OpUserPlatform).(string) + if !ok2 { + err = errs.ErrArgs.Wrap("ctx missing platform") + return + } + connID, _ = ctx.Value(constant.ConnID).(string) + return + +} func GetOpUserID(ctx context.Context) string { if ctx.Value(constant.OpUserID) != "" { diff --git a/pkg/common/mw/gin.go b/pkg/common/mw/gin.go index 23606c041..3ac61fef1 100644 --- a/pkg/common/mw/gin.go +++ b/pkg/common/mw/gin.go @@ -153,7 +153,7 @@ func GinParseToken(rdb redis.UniversalClient) gin.HandlerFunc { return } } - c.Set(constant.OpUserIDPlatformID, constant.PlatformNameToID(claims.Platform)) + c.Set(constant.OpUserPlatform, claims.Platform) c.Set(constant.OpUserID, claims.UID) c.Next() } diff --git a/pkg/common/mw/rpc_client_interceptor.go b/pkg/common/mw/rpc_client_interceptor.go index 5d649d79b..3ee56ddbd 100644 --- a/pkg/common/mw/rpc_client_interceptor.go +++ b/pkg/common/mw/rpc_client_interceptor.go @@ -32,6 +32,10 @@ func rpcClientInterceptor(ctx context.Context, method string, req, resp interfac if ok { md.Append(constant.OpUserID, opUserID) } + opUserIDPlatformID, ok := ctx.Value(constant.OpUserPlatform).(string) + if ok { + md.Append(constant.OpUserPlatform, opUserIDPlatformID) + } err = invoker(metadata.NewOutgoingContext(ctx, md), method, req, resp, cc, opts...) if err == nil { log.ZInfo(ctx, "rpc client resp", "funcName", method, "resp", rpcString(resp)) diff --git a/pkg/common/mw/rpc_server_interceptor.go b/pkg/common/mw/rpc_server_interceptor.go index 26362c786..e6383b57c 100644 --- a/pkg/common/mw/rpc_server_interceptor.go +++ b/pkg/common/mw/rpc_server_interceptor.go @@ -3,6 +3,7 @@ package mw import ( "context" "fmt" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "math" "runtime" "runtime/debug" @@ -20,9 +21,6 @@ import ( "google.golang.org/grpc/status" ) -const OperationID = "operationID" -const OpUserID = "opUserID" - func rpcString(v interface{}) string { if s, ok := v.(interface{ String() string }); ok { return s.String() @@ -31,7 +29,6 @@ func rpcString(v interface{}) string { } func rpcServerInterceptor(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (resp interface{}, err error) { - var operationID string defer func() { if r := recover(); r != nil { log.ZError(ctx, "rpc panic", nil, "FullMethod", info.FullMethod, "type:", fmt.Sprintf("%T", r), "panic:", r) @@ -59,17 +56,17 @@ func rpcServerInterceptor(ctx context.Context, req interface{}, info *grpc.Unary if !ok { return nil, status.New(codes.InvalidArgument, "missing metadata").Err() } - if opts := md.Get(OperationID); len(opts) != 1 || opts[0] == "" { + if opts := md.Get(constant.OperationID); len(opts) != 1 || opts[0] == "" { return nil, status.New(codes.InvalidArgument, "operationID error").Err() } else { - operationID = opts[0] + ctx = context.WithValue(ctx, constant.OperationID, opts[0]) } - var opUserID string - if opts := md.Get(OpUserID); len(opts) == 1 { - opUserID = opts[0] + if opts := md.Get(constant.OpUserID); len(opts) == 1 { + ctx = context.WithValue(ctx, constant.OpUserID, opts[0]) + } + if opts := md.Get(constant.OpUserPlatform); len(opts) == 1 { + ctx = context.WithValue(ctx, constant.OpUserPlatform, opts[0]) } - ctx = context.WithValue(ctx, OperationID, operationID) - ctx = context.WithValue(ctx, OpUserID, opUserID) log.ZInfo(ctx, "rpc server req", "funcName", funcName, "req", rpcString(req)) resp, err = handler(ctx, req) if err == nil { diff --git a/pkg/common/tokenverify/jwt_token.go b/pkg/common/tokenverify/jwt_token.go index 1fc82641f..378c99540 100644 --- a/pkg/common/tokenverify/jwt_token.go +++ b/pkg/common/tokenverify/jwt_token.go @@ -4,7 +4,7 @@ import ( "context" "fmt" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/errs" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" "github.com/golang-jwt/jwt/v4" @@ -61,7 +61,7 @@ func GetClaimFromToken(tokensString string) (*Claims, error) { } func CheckAccessV3(ctx context.Context, ownerUserID string) (err error) { - opUserID := tracelog.GetOpUserID(ctx) + opUserID := mcontext.GetOpUserID(ctx) if utils.IsContain(opUserID, config.Config.Manager.AppManagerUid) { return nil } @@ -72,14 +72,14 @@ func CheckAccessV3(ctx context.Context, ownerUserID string) (err error) { } func IsAppManagerUid(ctx context.Context) bool { - return utils.IsContain(tracelog.GetOpUserID(ctx), config.Config.Manager.AppManagerUid) + return utils.IsContain(mcontext.GetOpUserID(ctx), config.Config.Manager.AppManagerUid) } func CheckAdmin(ctx context.Context) error { - if utils.IsContain(tracelog.GetOpUserID(ctx), config.Config.Manager.AppManagerUid) { + if utils.IsContain(mcontext.GetOpUserID(ctx), config.Config.Manager.AppManagerUid) { return nil } - return errs.ErrIdentity.Wrap(fmt.Sprintf("user %s is not admin userID", tracelog.GetOpUserID(ctx))) + return errs.ErrIdentity.Wrap(fmt.Sprintf("user %s is not admin userID", mcontext.GetOpUserID(ctx))) } func ParseRedisInterfaceToken(redisToken interface{}) (*Claims, error) { diff --git a/pkg/rpcclient/notification/extend_msg.go b/pkg/rpcclient/notification/extend_msg.go index f98b51ed3..6b62e4bdd 100644 --- a/pkg/rpcclient/notification/extend_msg.go +++ b/pkg/rpcclient/notification/extend_msg.go @@ -4,7 +4,7 @@ import ( "context" "github.com/OpenIMSDK/Open-IM-Server/pkg/apistruct" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/msg" sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/utils" @@ -14,7 +14,7 @@ func (c *Check) ExtendMessageUpdatedNotification(ctx context.Context, sendID str req *msg.SetMessageReactionExtensionsReq, resp *msg.SetMessageReactionExtensionsResp, isHistory bool, isReactionFromCache bool) { var m apistruct.ReactionMessageModifierNotification m.SourceID = req.SourceID - m.OpUserID = tracelog.GetOpUserID(ctx) + m.OpUserID = mcontext.GetOpUserID(ctx) m.SessionType = req.SessionType keyMap := make(map[string]*sdkws.KeyValue) for _, valueResp := range resp.Result { diff --git a/pkg/rpcclient/notification/group.go b/pkg/rpcclient/notification/group.go index e67ad3ac5..0d2ee583f 100644 --- a/pkg/rpcclient/notification/group.go +++ b/pkg/rpcclient/notification/group.go @@ -5,8 +5,8 @@ import ( "github.com/OpenIMSDK/Open-IM-Server/pkg/common/config" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/constant" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/log" + "github.com/OpenIMSDK/Open-IM-Server/pkg/common/mcontext" "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tokenverify" - "github.com/OpenIMSDK/Open-IM-Server/pkg/common/tracelog" pbGroup "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/group" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/wrapperspb" @@ -16,7 +16,7 @@ import ( ) func (c *Check) setOpUserInfo(ctx context.Context, groupID string, groupMemberInfo *sdkws.GroupMemberFullInfo) error { - opUserID := tracelog.GetOpUserID(ctx) + opUserID := mcontext.GetOpUserID(ctx) if tokenverify.IsManagerUserID(opUserID) { user, err := c.user.GetUsersInfos(ctx, []string{opUserID}, true) if err != nil { @@ -221,7 +221,7 @@ func (c *Check) GroupCreatedNotification(ctx context.Context, groupID string, in } } - c.groupNotification(ctx, constant.GroupCreatedNotification, &GroupCreatedTips, tracelog.GetOpUserID(ctx), groupID, "") + c.groupNotification(ctx, constant.GroupCreatedNotification, &GroupCreatedTips, mcontext.GetOpUserID(ctx), groupID, "") } // 群信息改变后掉用 @@ -246,7 +246,7 @@ func (c *Check) GroupInfoSetNotification(ctx context.Context, groupID string, gr if err := c.setOpUserInfo(ctx, groupID, GroupInfoChangedTips.OpUser); err != nil { return } - c.groupNotification(ctx, constant.GroupInfoSetNotification, &GroupInfoChangedTips, tracelog.GetOpUserID(ctx), groupID, "") + c.groupNotification(ctx, constant.GroupInfoSetNotification, &GroupInfoChangedTips, mcontext.GetOpUserID(ctx), groupID, "") } func (c *Check) GroupMutedNotification(ctx context.Context, groupID string) { @@ -258,7 +258,7 @@ func (c *Check) GroupMutedNotification(ctx context.Context, groupID string) { if err := c.setOpUserInfo(ctx, groupID, tips.OpUser); err != nil { return } - c.groupNotification(ctx, constant.GroupMutedNotification, &tips, tracelog.GetOpUserID(ctx), groupID, "") + c.groupNotification(ctx, constant.GroupMutedNotification, &tips, mcontext.GetOpUserID(ctx), groupID, "") } func (c *Check) GroupCancelMutedNotification(ctx context.Context, groupID string) { @@ -270,7 +270,7 @@ func (c *Check) GroupCancelMutedNotification(ctx context.Context, groupID string if err := c.setOpUserInfo(ctx, groupID, tips.OpUser); err != nil { return } - c.groupNotification(ctx, constant.GroupCancelMutedNotification, &tips, tracelog.GetOpUserID(ctx), groupID, "") + c.groupNotification(ctx, constant.GroupCancelMutedNotification, &tips, mcontext.GetOpUserID(ctx), groupID, "") } func (c *Check) GroupMemberMutedNotification(ctx context.Context, groupID, groupMemberUserID string, mutedSeconds uint32) { @@ -286,7 +286,7 @@ func (c *Check) GroupMemberMutedNotification(ctx context.Context, groupID, group if err := c.setGroupMemberInfo(ctx, groupID, groupMemberUserID, tips.MutedUser); err != nil { return } - c.groupNotification(ctx, constant.GroupMemberMutedNotification, &tips, tracelog.GetOpUserID(ctx), groupID, "") + c.groupNotification(ctx, constant.GroupMemberMutedNotification, &tips, mcontext.GetOpUserID(ctx), groupID, "") } func (c *Check) GroupMemberInfoSetNotification(ctx context.Context, groupID, groupMemberUserID string) { @@ -301,7 +301,7 @@ func (c *Check) GroupMemberInfoSetNotification(ctx context.Context, groupID, gro if err := c.setGroupMemberInfo(ctx, groupID, groupMemberUserID, tips.ChangedUser); err != nil { return } - c.groupNotification(ctx, constant.GroupMemberInfoSetNotification, &tips, tracelog.GetOpUserID(ctx), groupID, "") + c.groupNotification(ctx, constant.GroupMemberInfoSetNotification, &tips, mcontext.GetOpUserID(ctx), groupID, "") } func (c *Check) GroupMemberRoleLevelChangeNotification(ctx context.Context, operationID, opUserID, groupID, groupMemberUserID string, notificationType int32) { @@ -323,7 +323,7 @@ func (c *Check) GroupMemberRoleLevelChangeNotification(ctx context.Context, oper log.Error(operationID, "setGroupMemberInfo failed ", err.Error(), groupID, groupMemberUserID) return } - c.groupNotification(ctx, notificationType, &tips, tracelog.GetOpUserID(ctx), groupID, "") + c.groupNotification(ctx, notificationType, &tips, mcontext.GetOpUserID(ctx), groupID, "") } func (c *Check) GroupMemberCancelMutedNotification(ctx context.Context, groupID, groupMemberUserID string) { @@ -338,7 +338,7 @@ func (c *Check) GroupMemberCancelMutedNotification(ctx context.Context, groupID, if err := c.setGroupMemberInfo(ctx, groupID, groupMemberUserID, tips.MutedUser); err != nil { return } - c.groupNotification(ctx, constant.GroupMemberCancelMutedNotification, &tips, tracelog.GetOpUserID(ctx), groupID, "") + c.groupNotification(ctx, constant.GroupMemberCancelMutedNotification, &tips, mcontext.GetOpUserID(ctx), groupID, "") } // message ReceiveJoinApplicationTips{ @@ -359,7 +359,7 @@ func (c *Check) JoinGroupApplicationNotification(ctx context.Context, req *pbGro return } - if err = c.setPublicUserInfo(ctx, tracelog.GetOpUserID(ctx), JoinGroupApplicationTips.Applicant); err != nil { + if err = c.setPublicUserInfo(ctx, mcontext.GetOpUserID(ctx), JoinGroupApplicationTips.Applicant); err != nil { return } @@ -369,7 +369,7 @@ func (c *Check) JoinGroupApplicationNotification(ctx context.Context, req *pbGro return } for _, v := range managerList { - c.groupNotification(ctx, constant.JoinGroupApplicationNotification, &JoinGroupApplicationTips, tracelog.GetOpUserID(ctx), "", v.UserID) + c.groupNotification(ctx, constant.JoinGroupApplicationNotification, &JoinGroupApplicationTips, mcontext.GetOpUserID(ctx), "", v.UserID) } } @@ -382,7 +382,7 @@ func (c *Check) MemberQuitNotification(ctx context.Context, req *pbGroup.QuitGro return } - c.groupNotification(ctx, constant.MemberQuitNotification, &MemberQuitTips, tracelog.GetOpUserID(ctx), req.GroupID, "") + c.groupNotification(ctx, constant.MemberQuitNotification, &MemberQuitTips, mcontext.GetOpUserID(ctx), req.GroupID, "") } // message ApplicationProcessedTips{ @@ -402,17 +402,17 @@ func (c *Check) GroupApplicationAcceptedNotification(ctx context.Context, req *p return } - c.groupNotification(ctx, constant.GroupApplicationAcceptedNotification, &GroupApplicationAcceptedTips, tracelog.GetOpUserID(ctx), "", req.FromUserID) + c.groupNotification(ctx, constant.GroupApplicationAcceptedNotification, &GroupApplicationAcceptedTips, mcontext.GetOpUserID(ctx), "", req.FromUserID) adminList, err := c.group.GetOwnerAndAdminInfos(ctx, req.GroupID) if err != nil { return } for _, v := range adminList { - if v.UserID == tracelog.GetOpUserID(ctx) { + if v.UserID == mcontext.GetOpUserID(ctx) { continue } GroupApplicationAcceptedTips.ReceiverAs = 1 - c.groupNotification(ctx, constant.GroupApplicationAcceptedNotification, &GroupApplicationAcceptedTips, tracelog.GetOpUserID(ctx), "", v.UserID) + c.groupNotification(ctx, constant.GroupApplicationAcceptedNotification, &GroupApplicationAcceptedTips, mcontext.GetOpUserID(ctx), "", v.UserID) } } @@ -424,17 +424,17 @@ func (c *Check) GroupApplicationRejectedNotification(ctx context.Context, req *p if err := c.setOpUserInfo(ctx, req.GroupID, GroupApplicationRejectedTips.OpUser); err != nil { return } - c.groupNotification(ctx, constant.GroupApplicationRejectedNotification, &GroupApplicationRejectedTips, tracelog.GetOpUserID(ctx), "", req.FromUserID) + c.groupNotification(ctx, constant.GroupApplicationRejectedNotification, &GroupApplicationRejectedTips, mcontext.GetOpUserID(ctx), "", req.FromUserID) adminList, err := c.group.GetOwnerAndAdminInfos(ctx, req.GroupID) if err != nil { return } for _, v := range adminList { - if v.UserID == tracelog.GetOpUserID(ctx) { + if v.UserID == mcontext.GetOpUserID(ctx) { continue } GroupApplicationRejectedTips.ReceiverAs = 1 - c.groupNotification(ctx, constant.GroupApplicationRejectedNotification, &GroupApplicationRejectedTips, tracelog.GetOpUserID(ctx), "", v.UserID) + c.groupNotification(ctx, constant.GroupApplicationRejectedNotification, &GroupApplicationRejectedTips, mcontext.GetOpUserID(ctx), "", v.UserID) } } @@ -449,7 +449,7 @@ func (c *Check) GroupOwnerTransferredNotification(ctx context.Context, req *pbGr if err := c.setGroupMemberInfo(ctx, req.GroupID, req.NewOwnerUserID, GroupOwnerTransferredTips.NewGroupOwner); err != nil { return } - c.groupNotification(ctx, constant.GroupOwnerTransferredNotification, &GroupOwnerTransferredTips, tracelog.GetOpUserID(ctx), req.GroupID, "") + c.groupNotification(ctx, constant.GroupOwnerTransferredNotification, &GroupOwnerTransferredTips, mcontext.GetOpUserID(ctx), req.GroupID, "") } func (c *Check) GroupDismissedNotification(ctx context.Context, req *pbGroup.DismissGroupReq) { @@ -462,7 +462,7 @@ func (c *Check) GroupDismissedNotification(ctx context.Context, req *pbGroup.Dis return } - c.groupNotification(ctx, constant.GroupDismissedNotification, &tips, tracelog.GetOpUserID(ctx), req.GroupID, "") + c.groupNotification(ctx, constant.GroupDismissedNotification, &tips, mcontext.GetOpUserID(ctx), req.GroupID, "") } // message MemberKickedTips{ @@ -488,7 +488,7 @@ func (c *Check) MemberKickedNotification(ctx context.Context, req *pbGroup.KickG } MemberKickedTips.KickedUserList = append(MemberKickedTips.KickedUserList, &groupMemberInfo) } - c.groupNotification(ctx, constant.MemberKickedNotification, &MemberKickedTips, tracelog.GetOpUserID(ctx), req.GroupID, "") + c.groupNotification(ctx, constant.MemberKickedNotification, &MemberKickedTips, mcontext.GetOpUserID(ctx), req.GroupID, "") // //for _, v := range kickedUserIDList { // groupNotification(constant.MemberKickedNotification, &MemberKickedTips, req.OpUserID, "", v, req.OperationID) @@ -519,7 +519,7 @@ func (c *Check) MemberInvitedNotification(ctx context.Context, groupID, reason s } MemberInvitedTips.InvitedUserList = append(MemberInvitedTips.InvitedUserList, &groupMemberInfo) } - c.groupNotification(ctx, constant.MemberInvitedNotification, &MemberInvitedTips, tracelog.GetOpUserID(ctx), groupID, "") + c.groupNotification(ctx, constant.MemberInvitedNotification, &MemberInvitedTips, mcontext.GetOpUserID(ctx), groupID, "") } // 群成员主动申请进群,管理员同意后调用, @@ -531,7 +531,7 @@ func (c *Check) MemberEnterNotification(ctx context.Context, req *pbGroup.GroupA if err := c.setGroupMemberInfo(ctx, req.GroupID, req.FromUserID, MemberEnterTips.EntrantUser); err != nil { return } - c.groupNotification(ctx, constant.MemberEnterNotification, &MemberEnterTips, tracelog.GetOpUserID(ctx), req.GroupID, "") + c.groupNotification(ctx, constant.MemberEnterNotification, &MemberEnterTips, mcontext.GetOpUserID(ctx), req.GroupID, "") } func (c *Check) MemberEnterDirectlyNotification(ctx context.Context, groupID string, entrantUserID string, operationID string) {