rewrite from lager
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

67 lines
3.2 KiB

  1. -include("lgCom.hrl").
  2. %% 该宏用于确保eLogCfg模块初始化了 任何使用eLog的App启动后请调用一次
  3. -define(eLogInit(), ?eLogInit(?LgDefSink)).
  4. -define(eLogInit(Sink),
  5. case ets:info(?eLogEts) of
  6. undefined ->
  7. ets:new(?eLogEts, [named_table, public]),
  8. ets:insert(?eLogEts, {Sink, ?none}),
  9. lgKvsToBeam:load(?eLogCfg, [{Sink, ?none}]);
  10. _ ->
  11. ignore
  12. end).
  13. %% 默认的元数据
  14. %% Level, Pid, Node, Module, Function, Line, Other
  15. -define(lgLog(Severity, Format, Args, Safety),
  16. ?lgLog(?LgDefSink, Severity, self(), node(), ?MODULE, ?FUNCTION_NAME, ?LINE, eLog:getMd(), Format, Args, ?LgDefTruncation, Safety)).
  17. -define(lgLog(Severity, Metadata, Format, Args, Safety),
  18. ?lgLog(?LgDefSink, Severity, self(), node(), ?MODULE, ?FUNCTION_NAME, ?LINE, Metadata ++ eLog:getMd(), Format, Args, ?LgDefTruncation, Safety)).
  19. -define(lgLog(Sink, Severity, Pid, Node, Module, Function, Line, Metadata, Format, Args, Size, Safety),
  20. case ?eLogCfg:get(Sink) band Severity of
  21. 0 ->
  22. ok;
  23. _ ->
  24. eLog:doLogImpl(Severity, Pid, Node, Module, Function, Line, Metadata, Format, Args, Severity, Size, Sink, Safety)
  25. end).
  26. -define(lgNone(Format), ?lgLog(?none, Format, undefined, safe)).
  27. -define(lgNone(Format, Args), ?lgLog(?none, Format, Args, safe)).
  28. -define(lgNone(Metadata, Format, Args), ?lgLog(?none, Metadata, Format, Args, safe)).
  29. -define(lgDebug(Format), ?lgLog(?debug, Format, undefined, safe)).
  30. -define(lgDebug(Format, Args), ?lgLog(?debug, Format, Args, safe)).
  31. -define(lgDebug(Metadata, Format, Args), ?lgLog(?debug, Metadata, Format, Args, safe)).
  32. -define(lgInfo(Format), ?lgLog(?info, Format, undefined, safe)).
  33. -define(lgInfo(Format, Args), ?lgLog(?info, Format, Args, safe)).
  34. -define(lgInfo(Metadata, Format, Args), ?lgLog(?info, Metadata, Format, Args, safe)).
  35. -define(lgNotice(Format), ?lgLog(?notice, Format, undefined, safe)).
  36. -define(lgNotice(Format, Args), ?lgLog(?notice, Format, Args, safe)).
  37. -define(lgNotice(Metadata, Format, Args), ?lgLog(?notice, Metadata, Format, Args, safe)).
  38. -define(lgWarning(Format), ?lgLog(?warning, Format, undefined, safe)).
  39. -define(lgWarning(Format, Args), ?lgLog(?warning, Format, Args, safe)).
  40. -define(lgWarning(Metadata, Format, Args), ?lgLog(?warning, Metadata, Format, Args, safe)).
  41. -define(lgError(Format), ?lgLog(?error, Format, undefined, safe)).
  42. -define(lgError(Format, Args), ?lgLog(?error, Format, Args, safe)).
  43. -define(lgError(Metadata, Format, Args), ?lgLog(?error, Metadata, Format, Args, safe)).
  44. -define(lgCritical(Format), ?lgLog(?critical, Format, undefined, safe)).
  45. -define(lgCritical(Format, Args), ?lgLog(?critical, Format, Args, safe)).
  46. -define(lgCritical(Metadata, Format, Args), ?lgLog(?critical, Metadata, Format, Args, safe)).
  47. -define(lgAlert(Format), ?lgLog(?alert, Format, undefined, safe)).
  48. -define(lgAlert(Format, Args), ?lgLog(?alert, Format, Args, safe)).
  49. -define(lgAlert(Metadata, Format, Args), ?lgLog(?alert, Metadata, Format, Args, safe)).
  50. -define(lgEmergency(Format), ?lgLog(?emergency, Format, undefined, safe)).
  51. -define(lgEmergency(Format, Args), ?lgLog(?emergency, Format, Args, safe)).
  52. -define(lgEmergency(Metadata, Format, Args), ?lgLog(?emergency, Metadata, Format, Args, safe)).