log_mf_h
An Event Handler which Logs Events to Disk
The log_mf_h
is a gen_event
handler module which
can be installed in any gen_event
process. It logs onto disk all events
which are sent to an event manager. Each event is written as a
binary which makes the logging very fast. However, a tool such as the Report Browser
(rb
) must be used in order to read the files. The events are written to multiple files. When all files have been used, the first one is re-used and overwritten. The directory location, the number of files, and the size of each file are configurable. The directory will include one file called index
, and
report files 1, 2, ....
.
Functions
init(Dir, MaxBytes, MaxFiles) -> Args
Dir = file:filename()
MaxBytes = integer() >= 0
MaxFiles = 1..255
Args = args()
init(Dir, MaxBytes, MaxFiles, Pred) -> Args
Dir = file:filename()
MaxBytes = integer() >= 0
MaxFiles = 1..255
Pred = fun((Event :: term()) -> boolean())
Args = args()
Initiates the event handler. This function returns
, which should be used in a call to
gen_event:add_handler(EventMgr, log_mf_h,
.
specifies which directory to use for the log
files.
specifies the size of each individual
file.
specifies how many files are
used.
is a predicate function used to filter the
events. If no predicate function is specified, all events are
logged.
See Also
gen_event(3), rb(3)