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.

101 lines
5.5 KiB

4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
  1. [
  2. {eRum, [
  3. %% ******************************************** 颜色打印相关 *****************************************************
  4. %% 是否开启颜色
  5. {colored, true},
  6. %% 颜色码配置
  7. {colors, [
  8. {debug, <<"\e[0;38m">>},
  9. {info, <<"\e[1;37m">>},
  10. {notice, <<"\e[1;36m">>},
  11. {warning, <<"\e[1;33m">>},
  12. {error, <<"\e[1;31m">>},
  13. {critical, <<"\e[1;35m">>},
  14. {alert, <<"\e[1;44m">>},
  15. {emergency, <<"\e[1;41m">>}
  16. ]},
  17. %%*********************************************** handler与接收器(sink) and traces ******************************
  18. %% 消息处理模块可以存在多个,[{SinkModule, [rumConsoleOpt() | rumFileOpt()]}]=Handler() 消息处理模块可以存在多个
  19. %% eg: {handlers, [
  20. %% {rumBkdFile, [{id, console}, {file, "console.log"}, {level, info}]},
  21. %% {rumBkdFile, [{id, error}, {file, "error.log"}, {level, error}]},
  22. %% {rumBkdConsole, [{level, info}]}
  23. %% ]}
  24. {handlers, []},
  25. %% 额外的接收器列表 [{SinkName, [{handlers, Handler()}|{asyncThreshold, 500}|{asyncThrWindow, 50}|{killerHwm, 1000}|{killerReTime, 5000}]}]
  26. %% eg: {extraSinks, [
  27. %% {auditEvent,[{handlers, [{rumBkdFile, [{file, "audit.log"}, {level, info}]}]}, {asyncThreshold, 500}, {asyncThrWindow, 50}]}
  28. %% ]}}
  29. {extraSinks, []},
  30. %% traces列表 [{handler, [Handler()]}]
  31. %%eg: {traces, [
  32. %% handler, filter, message level (defaults to debug if not given)
  33. %% {rumBkdConsole, [{module, foo}], info},
  34. %% {{rumBkdFile, "trace.log"}, [{request, '>', 120}], error},
  35. %% {{rumBkdFile, "event.log"}, [{module, bar}]} %% implied debug level here
  36. %% ]}
  37. {traces, []},
  38. %%*********************************************** 异步日志相关 *****************************************************
  39. %% 异步切换到同步时模式gen_emm邮箱的最大消息数,此值仅应用于默认接收器; 额外的接收器也可以自己配置。
  40. %% 格式 integer() | undefined 当值为undefined 禁用此功能
  41. {asyncThreshold, undefined},
  42. %%当gen_emm 邮箱大小从 asyncThreshold 减小到 asyncThreshold-asyncThrWindow 时,切换回异步模式。当值为undefined时, 最终使用的是asyncThreshold * 0.2
  43. %% 此值仅适用于默认接收器。额外的接收器需要选项中配置。
  44. {asyncThrWindow, undefined},
  45. %% ********************************************** killer相关 ****************************************************
  46. %% 如果接收器的邮箱大小超过1000条消息,请杀死整个接收器并在5000毫秒后重新加载它。如果需要,此行为也可以安装到其他接收器中。
  47. {killerHwm, 1000},
  48. %% 参见killer_hwm
  49. {killerReTime, 5000},
  50. %% ******************************************** format相关 ******************************************************
  51. %% 元数据名单列表
  52. {metadataWhitelist, []},
  53. %% ********************************************** 日志文件配置相关 ************************************************
  54. %% 可选的日志路径, 默认情况下是当前路径
  55. {logRoot, "./log"},
  56. %% crash log cfg
  57. %% 有效值 string | false 值为 false 的时候 没有 crash logger.
  58. {crashLogFile, "crash.log"},
  59. %%崩溃日志中事件的最大大小(以字节为单位)-默认为65536
  60. {crashLogMsgSize, 65536},
  61. %% 崩溃日志的最大大小(以字节为单位),在旋转之前,设置为0以禁用旋转-默认值为0
  62. {crashLogFileSize, 0},
  63. %% 什么时间轮换崩溃日志-默认为无时间轮换。有关此格式的说明,请参见自述文件。
  64. {crashLogDate, "$D0"},
  65. %% 要保留的已轮转崩溃日志的数量,0表示仅保留当前的一个-默认值为0
  66. {crashLogCount, 0},
  67. %% 崩溃日志旋转器模块-默认为lager_rotator_default
  68. {crashLogRotator, rumRotatorIns},
  69. %% ********************************************** error_logger相关 **********************************************
  70. %% 是否将error_logger消息重定向到默认的lager_event接收器-默认为true
  71. {errLoggerRedirect, true},
  72. %% 列表中的handler 不会处理error_logger
  73. {errLoggerWhitelist, []},
  74. %% 每秒允许来自error_logger的消息数量是多少 超过就丢弃掉 值为undefined禁止抛弃
  75. {errLoggerHwm, undefined},
  76. %% errLogger group leader策略 handle | ignore | mirror
  77. {errLoggerGLS, handle},
  78. %%是否禁止 disable reformatting for OTP and Cowboy messages
  79. {errLoggerFormatRaw, false},
  80. %% 超过高水位标记时,可以将啤酒配置为刷新消息队列中的所有事件通知
  81. {errLoggerFlushQueue, true},
  82. %% 如果flush_queue为true,则可以设置消息队列长度阈值,在该阈值处将开始丢弃消息。默认阈值为0,这意味着如果flush_queue为true,
  83. %% 则超过高水位标记时将丢弃消息,而不管消息队列的长度如何。
  84. {errLoggerFlushThr, 20},
  85. %% ********************************************** app启动停止监听相关 *********************************************
  86. %% 是否不在应用程序的调试级别看到主管和应用程序启动/停止日志
  87. {suppressAppStartStop, false},
  88. {suppressSupStartStop, false}
  89. ]}
  90. ].