rewrite from lager
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

74 行
3.0 KiB

4 年前
4 年前
4 年前
4 年前
4 年前
4 年前
4 年前
4 年前
4 年前
4 年前
4 年前
4 年前
  1. -include("rumCom.hrl").
  2. %% 该宏用于确保eRumCfg模块初始化了 任何使用eRum的App启动后请调用一次
  3. -define(eRumInit(), eRumInit(Sink)).
  4. -define(eRumInit(Sink),
  5. begin
  6. case ets:info(?eRumEts) of
  7. undefined ->
  8. ets:new(?eRumEts, [named_table]),
  9. ets:insert(?eRumEts, {Sink, ?none}),
  10. rumKvsToBeam:load(?eRumCfg, [{Sink, ?none}]);
  11. _ ->
  12. ignore
  13. end
  14. end).
  15. %% 默认的元数据
  16. %% Level, Pid, Node, Module, Function, FunctionArity, File, Line, Other
  17. %% 获取元数据的宏定义
  18. -define(RumMetadata(Extras), [
  19. {severity, info},
  20. {pid, self()},
  21. {node, node()},
  22. {module, ?MODULE},
  23. {function, ?FUNCTION_NAME},
  24. {function_arity, ?FUNCTION_ARITY},
  25. {file, ?FILE},
  26. {line, ?LINE} | Extras
  27. ]).
  28. -define(rumLog(Severity, Format, Args, Safety),
  29. ?rumLog(?RumDefSink, Severity, self(), node(), ?MODULE, ?FUNCTION_NAME, ?FILE, ?LINE, eRum:md(), Format, Args, ?RumDefTruncation, Safety)).
  30. -define(rumLog(Severity, Metadata, Format, Args, Safety),
  31. ?rumLog(?RumDefSink, Severity, self(), node(), ?MODULE, ?FUNCTION_NAME, ?FILE, ?LINE, Metadata ++ eRum:md(), Format, Args, ?RumDefTruncation, Safety)).
  32. -define(rumLog(Sink, Severity, Metadata, Format, Args, Size, Safety),
  33. case ?eRumCfg:get(Sink) band Severity /= 0 of
  34. true ->
  35. do_log_impl(Severity, Pid, Node, Module, Function, File, Line, Metadata, Format, Args, Severity, Size, Sink, Safety);
  36. _ ->
  37. ok
  38. end).
  39. %%eRum:dispatch_log(Sink, Severity, Pid, Node, Module, Function, File, Line, Metadata, Format, Args, Size, Safety)).
  40. -define(rumNone(Format, Args), ?rumLog(?none, Format, Args, safe)).
  41. -define(rumNone(Metadata, Format, Args), ?rumLog(?none, Metadata, Format, Args, safe)).
  42. -define(rumDebug(Format, Args), ?rumLog(?debug, Format, Args, safe)).
  43. -define(rumDebug(Metadata, Format, Args), ?rumLog(?debug, Metadata, Format, Args, safe)).
  44. -define(rumInfo(Format, Args), ?rumLog(?info, Format, Args, safe)).
  45. -define(rumInfo(Metadata, Format, Args), ?rumLog(?info, Metadata, Format, Args, safe)).
  46. -define(rumNotice(Format, Args), ?rumLog(?notice, Format, Args, safe)).
  47. -define(rumNotice(Metadata, Format, Args), ?rumLog(?notice, Metadata, Format, Args, safe)).
  48. -define(rumWarning(Format, Args), ?rumLog(?warning, Format, Args, safe)).
  49. -define(rumWarning(Metadata, Format, Args), ?rumLog(?warning, Metadata, Format, Args, safe)).
  50. -define(rumError(Format, Args), ?rumLog(?error, Format, Args, safe)).
  51. -define(rumError(Metadata, Format, Args), ?rumLog(?error, Metadata, Format, Args, safe)).
  52. -define(rumCritical(Format, Args), ?rumLog(?critical, Format, Args, safe)).
  53. -define(rumCritical(Metadata, Format, Args), ?rumLog(?critical, Metadata, Format, Args, safe)).
  54. -define(rumAlert(Format, Args), ?rumLog(?alert, Format, Args, safe)).
  55. -define(rumAlert(Metadata, Format, Args), ?rumLog(?alert, Metadata, Format, Args, safe)).
  56. -define(rumEmergency(Format, Args), ?rumLog(?emergency, Format, Args, safe)).
  57. -define(rumEmergency(Metadata, Format, Args), ?rumLog(?emergency, Metadata, Format, Args, safe)).