event.lua 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. local code = require "code"
  2. local lib_logger = require("log.lib_logger")
  3. local logClient = lib_logger:new("client-event")
  4. local logClient2 = lib_logger:new("client-event2")
  5. local root = {}
  6. function root.log_event(msg)
  7. local currTime = skynet_time()
  8. local date = os.date("%Y-%m-%d", currTime)
  9. local timeStr = os.date("%Y-%m-%d %H:%M:%S", currTime)
  10. local uuid = msg.uuid or ""
  11. local udid = msg.udid or ""
  12. for k, v in ipairs(msg.events) do
  13. v.label =
  14. string.gsub(
  15. v.label or "",
  16. ".",
  17. function(c)
  18. if c == "\\" or c == "\n" or c == "\r" or c == "'" or c == '"' then
  19. return "*"
  20. end
  21. return c
  22. end
  23. )
  24. -- 以下为需要字段 按需求命名字段名,对应需要表
  25. local cTime = os.date("%Y-%m-%d %H:%M:%S", v.time)
  26. local uid = v.uid or msg.uid or 0
  27. local version = v.ver or msg.ver or "nil"
  28. local channel = v.chn or msg.chn or 0
  29. local id = v.id or 0
  30. local ui = string.format("%s,%s", tostring(v.seq or ""), tostring(v.scene or ""))
  31. local datas = {date, timeStr, cTime, uid, version, channel, id, ui, uuid, udid, v.label or ""}
  32. local cnt = table.concat(datas, ";")
  33. logClient:raw(cnt)
  34. end
  35. return code.OK
  36. end
  37. -- 客户端主动发送的请求
  38. function root.log_event_count(msg)
  39. local currTime = skynet_time()
  40. local date = os.date("%Y-%m-%d", currTime)
  41. local timeStr = os.date("%Y-%m-%d %H:%M:%S", currTime)
  42. for k, v in ipairs(msg.events) do
  43. local uid = v.uid or msg.uid
  44. local ver = v.ver or msg.ver
  45. local chn = v.chn or msg.chn
  46. local cnt =
  47. string.format(
  48. "%s;%s;%s;%s;%s;%s;%s;%s;%s;",
  49. date,
  50. timeStr,
  51. uid or 0,
  52. ver or "nil",
  53. chn or 0,
  54. v.id or 0,
  55. v.count or 0,
  56. os.date("%Y-%m-%d %H:%M:%S", v.beginTime),
  57. os.date("%Y-%m-%d %H:%M:%S", v.endTime)
  58. )
  59. logClient2:raw(cnt)
  60. end
  61. return code.OK
  62. end
  63. return root