2011-11-30 24 views
0

默認情況下,由於性能原因,rsyslog不會立即將數據同步到日誌文件。 參考章節Output File Syncing如何通過rSyslog緩存有效地使用iNotify?

這是否意味着如果我在系統日誌文件中使用iNotify,可能會出現這種情況,我可能會錯過一個事件?

到目前爲止,我正在使用tail -f監視文件,它似乎捕獲所有事件。但我很偏執,系統日誌緩存可能導致錯過事件。

回答

0

我想這取決於你在接收inotify事件時所做的事情。如果你正在跟蹤最後一個偏移量,在EOF上讀取一個新的事件,並更新偏移量,你應該沒問題(這就是tail的作用,除了它使用定時器而不是inotify(好吧,新的可以使用inotify ))。

+0

我擔心的是,如果我要在首位錯過任何事件。如果系統日誌緩存,它可能根本不會觸及日誌文件 - 如果發生這種情況,inotify將不會看到任何事件。 – gauravphoenix

+0

當然,根據rsyslogd緩衝區的時間長短,可能會有延遲,但我不認爲這會是一個很長的延遲。你只是不能保證每行寫入日誌文件的inotify事件。 – cpugeniusmv

+0

有關如何實現它的任何建議?我需要保證的事件處理。我現在正在考慮探索系統日誌插件 – gauravphoenix

相關問題