CentOS/RHEL obvykle používá mechanismus rychlostního limitu rsyslogd. Níže je uveden příklad zprávy přihlášené do /var/log/messages kvůli omezení rychlosti rsyslog.
Feb 9 10:22:32 localhost rsyslogd: imuxsock lost 432 messages from pid 9832 due to rate-limiting Feb 9 10:22:45 localhost rsyslogd: imuxsock begins to drop messages from pid 9832 due to rate-limiting
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.
Chcete-li deaktivovat nebo rozšířit omezení rychlosti rsyslogd v CentOS/RHEL 6, postupujte podle níže uvedených kroků.
1. Upravte konfigurační soubor rsyslogd /etc/rsyslog.conf :
# vi /etc/rsyslog.conf
2. Přidejte následující parametry pod „$ModLoad imuxsock “.
$SystemLogRateLimitInterval 0 $SystemLogRateLimitBurst 0 $IMUxSockRateLimitBurst 0 $IMUXSockRateLimitInterval 0 $IMUxSockRateLimitSeverity 7
3. Restartujte rsyslog, aby se změny projevily:
# service rsyslog restart
Závěr
imuxsock je název modulu, který zpracovává Unix Socket. Tento modul spravuje doručování volání syslog z procesu protokolování do rsyslog. Modul naslouchá log soketům unixového systému a poskytuje rsyslog logovací zprávy, když k nim dojde.
SystemLogRateLimitInterval je množství času, které se měří pro omezení rychlosti. Výchozí hodnota tohoto parametru je nastavena na 5 sekund .
SystemLogRateLimitBurst definuje množství zpráv, které se musí objevit v časovém limitu SystemLogRateLimitInterval, aby se spustilo omezení rychlosti. Výchozí hodnota parametru je 200 zpráv .
$IMUXSockRateLimitBurst [číslo] – ekvivalentní k:RateLimit.Burst , určuje rychlost omezující dávku v počtu zpráv.
$IMUXSockRateLimitSeverity [numerická závažnost] – ekvivalentní k:RateLimit.Severity , určuje závažnost zpráv.
„IMUxSockRate* “je nezbytné, když je imuxsock nezávislý na syssock, jako u SysSock.Use =“off” .
„$IMUxSockRateLimitSeverity ” není nutné pro deaktivaci ratelimitingu, ale je lepší pouze v případě, že jsou zprávy ratelimit náhodně zaznamenány.
Jak zakázat nebo prodloužit limit rychlosti protokolování systému na CentOS/RHEL 7