2.10. syslog Tips の調整

syslog ネットワークを介して任意の数のプログラムからログメッセージを転送できます。多くの場合、これはより大きく、保留中のトランザクションである可能性が高くなります。トランザクションのサイズが非常に大きい場合は、I/O 増加が発生する可能性があります。これを防ぐには、間隔を合理的に小さく維持します。

手順2.9 システムロギングに syslogd を使用する。

システムロギングデーモン (syslogd) は、複数の異なるプログラムからメッセージを収集するために使用されます。また、カーネルロギングデーモン klogd からカーネルが報告する情報を収集します。通常、syslogd によりローカルファイルにログが記録されますが、リモートロギングサーバーにネットワーク経由でログを記録するように設定することもできます。
  1. リモートロギングを有効にするには、まずログを受信するマシンを設定する必要があります。詳細はhttps://access.redhat.com/solutions/54363を参照してください。
  2. リモートロギングサーバーでリモートロギングサポートを有効にすると、ログを送信する各システムは、そのログをローカルファイルシステムに書き込むのではなく、その syslog 出力をサーバーに送信するように設定する必要があります。これを行うには、各クライアントシステムの /etc/rsyslog.conf ファイルを編集します。このファイルで定義されたさまざまなロギングルールについて、ローカルログファイルをリモートロギングサーバーのアドレスに置き換えることができます。
    # Log all kernel messages to remote logging host.
    kern.*     @my.remote.logging.server
    
    上記の例では、クライアントシステムがすべてのカーネルメッセージを @my.remote.logging.server でリモートマシンにログ記録します。
  3. ワイルドカード行を /etc/rsyslog.conf ファイルに追加することで、ローカルで生成されるすべてのシステムメッセージをログに記録するように syslogd を設定することもできます。
    # Log all messages to a remote logging server:
    *.*     @my.remote.logging.server
    

重要

生成されたネットワークトラフィックに組み込みのレート制限が syslogd に含まれていないことに注意してください。したがって、Red Hat Enterprise Linux for Real Time システムのリモートロギングは、組織がリモートでログに記録する必要があるメッセージのみに制限することを推奨します。たとえば、カーネルの警告、認証要求などです。他のメッセージはローカルでログに記録されます。
関連する man ページ

詳細は、以下の man ページは本セクションに記載の情報に関連しています。

  • syslog(3)
  • rsyslog.conf(5)
  • rsyslogd(8)