# log_mf_h

### MODULE

log_mf_h

### MODULE SUMMARY

An Event Handler which Logs Events to Disk

### DESCRIPTION

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, ....`.

### EXPORTS

`init(Dir, MaxBytes, MaxFiles)`
`init(Dir, MaxBytes, MaxFiles, Pred) -> Args`

Types:

`Dir = string()`
`MaxBytes = integer()`
`MaxFiles = 0 < integer() < 256`
`Pred = fun(Event) -> boolean()`
`Event = term()`
`Args = args()`

Initiates the event handler. This function returns `Args`, which should be used in a call to `gen_event:add_handler(EventMgr, log_mf_h, Args)`.

`Dir` specifies which directory to use for the log files. `MaxBytes` specifies the size of each individual file. `MaxFiles` specifies how many files are used. `Pred` 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)

### AUTHORS

Martin Björklund - support@erlang.ericsson.se

stdlib 1.14.3
Copyright © 1991-2007 Ericsson AB