浏览代码

update 新增点击事件

Alvin 8 月之前
父节点
当前提交
ec17cb8f79

+ 1 - 0
game/game_cluster/internal/mdb/component.go

@@ -87,5 +87,6 @@ func LogstashMigrateTables() {
 	LogstashDB.AutoMigrate(&eventmodels.JoinChannelEventContent{})
 	LogstashDB.AutoMigrate(&eventmodels.FollowEventContent{})
 	LogstashDB.AutoMigrate(&eventmodels.TaskFinishEventContent{})
+	LogstashDB.AutoMigrate(&eventmodels.ClickEventContent{})
 	LogstashDB.AutoMigrate(&eventmodels.BackendOperationEventContent{})
 }

+ 12 - 0
game/game_cluster/internal/mdb/eventmodels/clickEvent.go

@@ -0,0 +1,12 @@
+package eventmodels
+
+// 按钮点击事件
+type ClickEventContent struct {
+	UserBasic
+	EventBasic
+	ClickName string `json:"click_name"` // 点击事件的名称 eg:邀请按钮/分享按钮
+}
+
+func (e *ClickEventContent) EventName() string {
+	return "Click"
+}

+ 2 - 0
game/game_cluster/nodes/logstash/module/event/enent.go

@@ -31,6 +31,7 @@ var (
 	_ Eventer = &eventmodels.JoinChannelEventContent{}
 	_ Eventer = &eventmodels.FollowEventContent{}
 	_ Eventer = &eventmodels.TaskFinishEventContent{}
+	_ Eventer = &eventmodels.ClickEventContent{}
 	_ Eventer = &eventmodels.BackendOperationEventContent{}
 )
 
@@ -52,6 +53,7 @@ func init() {
 	instance.AddEvent(new(eventmodels.JoinChannelEventContent))
 	instance.AddEvent(new(eventmodels.FollowEventContent))
 	instance.AddEvent(new(eventmodels.TaskFinishEventContent))
+	instance.AddEvent(new(eventmodels.ClickEventContent))
 	instance.AddEvent(new(eventmodels.BackendOperationEventContent))
 }
 

+ 15 - 1
game/game_cluster/nodes/logstash/module/handlelog/actor_handle_log.go

@@ -2,7 +2,7 @@
  * @Author: Alvin Alvin@qq.com
  * @Date: 2024-09-24 18:54:19
  * @LastEditors: Alvin Alvin@qq.com
- * @LastEditTime: 2024-09-27 11:02:04
+ * @LastEditTime: 2024-09-29 13:55:01
  * @FilePath: \server\game\game_cluster\nodes\logstash\module\handlelog\actor_handle_log.go
  * @Description:
  * 处理其他服务发送的埋点日志
@@ -217,6 +217,20 @@ func (p *HandleLogObject) handlelogContent(req *param.HandleLogReq, e event.Even
 			return code.Error
 		}
 
+	case *eventmodels.ClickEventContent:
+		content := &eventmodels.ClickEventContent{}
+		err := json.Unmarshal([]byte(req.JsonContent), &content)
+		if err != nil {
+			mhayaLogger.Warnf("handlelog ClickEventContent Unmarshal err:%v", err)
+			return code.Error
+		}
+
+		err = mdb.LogstashDB.Create(content).Error
+		if err != nil {
+			mhayaLogger.Warnf("handlelog LogstashDB Create ClickEventContent err:%v", err)
+			return code.Error
+		}
+
 	case *eventmodels.BackendOperationEventContent:
 		content := &eventmodels.BackendOperationEventContent{}
 		err := json.Unmarshal([]byte(req.JsonContent), &content)