查看源代码 log_mf_h (stdlib v6.2)
一个将事件记录到磁盘的事件处理器。
此模块是一个 gen_event
处理模块,可以安装在任何 gen_event
进程中。它将发送到事件管理器的所有事件记录到磁盘上。每个事件都以二进制形式写入,这使得日志记录速度非常快。但是,必须使用诸如 Report Browser(rb
)之类的工具才能读取这些文件。事件写入到多个文件中。当所有文件都被使用完后,第一个文件将被重新使用并覆盖。目录位置、文件数量和每个文件的大小都是可配置的。该目录将包含一个名为 index
的文件和报告文件 1, 2, ...
。
另请参阅
摘要
类型
函数
-spec init(Dir, MaxBytes, MaxFiles) -> Args when Dir :: file:filename(), MaxBytes :: non_neg_integer(), MaxFiles :: 1..255, Args :: args().
-spec init(Dir, MaxBytes, MaxFiles, Pred) -> Args when Dir :: file:filename(), MaxBytes :: non_neg_integer(), MaxFiles :: 1..255, Pred :: fun((Event :: term()) -> boolean()), Args :: args().
启动事件处理器。返回 Args
,该参数将用于调用 gen_event:add_handler(EventMgr, log_mf_h, Args)
。
Dir
指定用于日志文件的目录。MaxBytes
指定每个单独文件的大小。MaxFiles
指定使用的文件数量。Pred
是一个用于过滤事件的谓词函数。 如果未指定谓词函数,则会记录所有事件。