exp_log.go 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. package dao
  2. import (
  3. "context"
  4. "go-common/app/service/live/userexp/model"
  5. "go-common/library/log"
  6. "go-common/library/queue/databus/report"
  7. "go-common/library/time"
  8. )
  9. // consts
  10. const (
  11. LiveUserExpID = 104 //http://info.bilibili.co/pages/viewpage.action?pageId=8731603
  12. )
  13. // AddUserExpLog 加用户等级经验行为日志 is
  14. func (d *Dao) AddUserExpLog(ctx context.Context, expInfo *model.ExpLog) {
  15. d.addLog(ctx, LiveUserExpID, "exp_change", expInfo, "增加用户经验")
  16. }
  17. // AddAnchorExpLog 加主播等级经验行为日志 is
  18. func (d *Dao) AddAnchorExpLog(ctx context.Context, expInfo *model.ExpLog) {
  19. d.addLog(ctx, LiveUserExpID, "exp_change", expInfo, "增加主播经验")
  20. }
  21. func (d *Dao) addLog(ctx context.Context, business int, action string, expInfo *model.ExpLog, desc string) {
  22. t := time.Time(expInfo.Ts)
  23. content := make(map[string]interface{}, len(expInfo.Content))
  24. for k, v := range expInfo.Content {
  25. content[k] = v
  26. }
  27. ui := &report.UserInfo{
  28. Mid: expInfo.Mid,
  29. Platform: desc,
  30. Build: 0,
  31. Buvid: expInfo.Buvid,
  32. Business: business,
  33. Type: 0,
  34. Action: action,
  35. Ctime: t.Time(),
  36. IP: expInfo.Ip,
  37. // extra
  38. Index: []interface{}{int64(expInfo.Mid), 0, "", "", ""},
  39. Content: content,
  40. }
  41. report.User(ui)
  42. log.Info("add log to report: userexplog: %+v userinfo: %+v,error(%v)", expInfo, ui)
  43. }