檢視原始碼 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
是一個用於過濾事件的謂詞函數。如果沒有指定謂詞函數,則會記錄所有事件。