rsyslogd寫日誌丟失的問題已經解決

一.rsyslogd寫日誌丟失的問題

經常會遇到rsyslogd保存日誌時丟失的問題,打印如下:
Nov 18 01:58:53 XXXX rsyslogd: imjournal: 28062 messages lost due to rate-limiting
原來是rsyslogd限制了打印的信息長度。

解決方案:
echo ‘$SystemLogRateLimitInterval 1’ >> /etc/rsyslog.conf
echo ‘$SystemLogRateLimitBurst 3000’ >> /etc/rsyslog.conf
重啓rsyslog
/etc/init.d/rsyslog resart

二.rsyslog的Rate Limit配置
所謂Rate limit就是指,在某個固定的時間段內,syslog最多允許打印的log信息數量(多出的log信息將被丟棄)。由配置文件/etc/rsyslog.conf中以下兩個配置項決定:
$SystemLogRateLimitInterval [Number1]: Number1 爲設定的限制的時間間隔大小
$SystemLogRateLimitBurst [Number2]: Number2 爲在設定的限制的時間間隔內,最多輸出的log信息數量。
在設定完後,則表示在每一個Number1時間間隔內,如果超過Number2個數的log信息將會被去除。默認Number1爲5秒鐘,Number2爲200.但如果我們不希望,在打印的log時有丟失,則可以在/etc/rsyslog.conf中添加或者設置:
$SystemLogRateLimitInterval 0  
當然設置完成後,一定要記得重新啓動rsyslog服務(/etc/init.d/rsyslog resart或者service rsyslog restart)
Note:rsyslog 5.7.1之後的版本才添加了此功能。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章