RHEL 8で大量に出力されるログをロストなく記録する!

RHEL 8で大量に出力されるログをロストなく記録する方法です。

大量に出力されるログはすべては記録されない可能性がある!

RHEL 8では、システムダウンを防ぐため、ログ出力に制限がかかっています。

journaldの設定を変更する!

journald.confの設定を確認します。

#  cat /etc/systemd/journald.conf
#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.
#
# Entries in this file show the compile time defaults.
# You can change settings by editing this file.
# Defaults can be restored by simply deleting this file.
#
# See journald.conf(5) for details.

[Journal]
#Storage=auto
#Compress=yes
#Seal=yes
#SplitMode=uid
#SyncIntervalSec=5m
#RateLimitIntervalSec=30s
#RateLimitBurst=10000
#SystemMaxUse=
#SystemKeepFree=
#SystemMaxFileSize=
#SystemMaxFiles=100
#RuntimeMaxUse=
#RuntimeKeepFree=
#RuntimeMaxFileSize=
#RuntimeMaxFiles=100
#MaxRetentionSec=
#MaxFileSec=1month
#ForwardToSyslog=no
#ForwardToKMsg=no
#ForwardToConsole=no
#ForwardToWall=yes
#TTYPath=/dev/console
#MaxLevelStore=debug
#MaxLevelSyslog=debug
#MaxLevelKMsg=notice
#MaxLevelConsole=info
#MaxLevelWall=emerg
#LineMax=48K

デフォルトの値は、コメントで記載されている値です。ログ出力をすべて記録するためには、以下のように変更します。

RateLimitIntervalSec=0
RateLimitBurst=0

jounarldを再起動します。

# systemctl restart systemd-journald.service

rsyslogdの設定を変更する!

rsyslogd.confに設定に以下の2行を追記します。

# cat /etc/rsyslog.conf
...
$imjournalRatelimitInterval 0
$imjournalRatelimitBurst    0

rsyslogdを再起動します。

# systemctl restart rsyslog.service

ログがすべて記録されることを確認する!

以下のようなシェルを作成して、ログがすべて記録されることを確認します。

#!/bin/bash

MAX_NUM=30000

i=1
while [ $i -le ${MAX_NUM} ]
do
  logger -ip local0.crit -t logtest "Critical error 01 occured! [$i]"
  i=`expr $i + 1`
done

ログ出力の件数を確認します。

# journalctl -x | grep "Critical error 01 occured!" | wc -l
30000
# grep "Critical error 01 occured!" /var/log/messages | wc -l
30000

おわりに

RHEL 8では、ログ出力に制限がかかっています。ロストしないようにするためには、jounraldとrsyslogdの設定を変更します。

参考情報

関連記事

関連書籍(Amazon)

N/A