Logging

如何阻止某些程序污染消息日誌

  • August 18, 2017

我們有一個與 Azure 相關的程序正在執行,它不斷地將以下內容寫入我們的日誌:

Aug 18 06:54:28 log-ids-vm rsyslogd-3000: omazuremds error at connect(). errno=No such file or directory

我們如何阻止某個程序寫入消息日誌?或者,如果我們使用 Ossec 之類的東西進行日誌檢索,我們如何過濾掉它?

我們如何阻止某個程序寫入消息日誌?

通過配置該程序的日誌記錄選項,即使其記錄到文件而不是 STDOUT 或 syslog,或者將日誌級別配置為不那麼冗長/靜音。

或者,因為您似乎正在使用 rsyslog:

Rsyslogd 支持過濾條件,其中之一~是靜默丟棄匹配特定模式的消息:

如果您想進行一些通用處理但排除一些特定事件,則使用否定可能很有用。您可以結合使用丟棄操作。一個樣本是:

*.* /var/log/allmsgs-including-informational.log :msg, contains, "informational" ~ *.* /var/log/allmsgs-but-informational.log

不要忽略第~2 行中的波浪號!在此範例中,所有消息都寫入文件allmsgs-including-informational.log.

然後,所有包含字元串“資訊”的消息都將被丟棄。這意味著“丟棄行”下方的配置文件行(我們範例中的第 2 行)將不會應用於此消息。然後,所有剩餘的行也將寫入文件allmsgs-but-informational.log

引用自:https://serverfault.com/questions/869280