CentOS/RHEL obvykle používá mechanismus rychlostního limitu rsyslogd. CentOS/RHEL 7.x však přichází s integrovaným žurnálem systemd, který poskytuje možnost importovat strukturované zprávy protokolu z žurnálu systemd do syslog.
Zprávy žurnálu v systémovém souboru /var/log/messages vypadají jako v následujícím příkladu:
Jul 30 03:29:45 hostname rsyslogd: imjournal: 102776 messages lost due to rate-limiting
Jak můžeme zakázat nebo rozšířit tuto funkci omezení rychlosti protokolování na CentOS/RHEL 7.x?
Zakázat nebo rozšířit limit rychlosti protokolování systému
Chcete-li zakázat omezení rychlosti protokolování rsyslogd na CentOS/RHEL 7, proveďte následující kroky:
1. Upravte soubor „/etc/rsyslog.conf ” a upravte následující parametry.
$SystemLogRateLimitInterval 5 $SystemLogRateLimitBurst 30000
Změňte je na:
$SystemLogRateLimitInterval 0 $SystemLogRateLimitBurst 0
2. Přidejte následující parametr za „$ModLoad imjournal “ v sekci „#### MODULY #### ”
$ImjournalRateLimitInterval 0
nebo
module(load="imjournal" ratelimit.interval="0")
Oba parametry fungují stejně, rozdíl je v tom, že první řádek je stará syntaxe a druhý je nová syntaxe, což je preferováno.
3. Upravte soubor „/etc/systemd/journald.conf ” a okomentujte následující parametry:
RateLimitInterval=5s RateLimitBurst=30000
Změňte je na (na začátek přidejte symbol #):
#RateLimitInterval=5s #RateLimitBurst=30000
4. Restartujte službu rsyslog a deník:
# systemctl restart systemd-journald # systemctl restart rsyslog
Závěr
Omezení rychlosti zabraňuje tomu, aby protokolování využívalo nadměrné úrovně systémových zdrojů a zahlcovalo /var/log/message zbytečnými zprávami. Chcete-li zaprotokolovat událost, je třeba ji zapsat na disk, který využívá systémové prostředky. Pokud je na disk zaznamenáno příliš mnoho opakujících se událostí v určitém časovém období, mohou zahltit systém a způsobit pomalou odezvu důležitějších služeb nebo dokonce neočekávané selhání. Proto se obecně nedoporučuje deaktivovat omezení rychlosti, ale někdy by to bylo nutné pro diagnostické účely.
Jak zakázat nebo prodloužit limit rychlosti protokolování systému na CentOS/RHEL 6