1.3. ロギングパラメーターのバランシング
syslog サーバーは、プログラムからのログメッセージをネットワーク経由で送信します。送信の頻度が低いほど、保留中のトランザクションが大きくなる可能性があります。トランザクションが非常に大きい場合、I/O スパイクが発生する可能性があります。これを防ぐには、間隔を合理的な範囲で小さい値に維持します。
システムロギングデーモン syslogd は、さまざまなプログラムからメッセージを収集するために使用されます。また、カーネルが報告する情報をカーネルロギングデーモン klogd から収集します。通常、syslogd によりローカルファイルにログが記録されますが、リモートロギングサーバーにネットワーク経由でログを記録するように設定することもできます。
前提条件
- システムの root 権限がある。
手順
- リモートロギングを有効にするには、ログの送信先となるマシンを設定してください。詳細は、Red Hat Enterprise Linux での rsyslog を使用したリモート Syslog を参照してください。
ログをリモートログサーバーに送信する各システムを設定して、
syslog出力がローカルファイルシステムではなくサーバーに書き込まれるようにします。これを行うには、各クライアントシステムの/etc/rsyslog.confファイルを編集します。そのファイルで定義されているロギングルールごとに、ローカルログファイルをリモートロギングサーバーのアドレスに置き換えます。# Log all kernel messages to remote logging host. kern.* @my.remote.logging.server上記の例では、すべてのカーネルメッセージをリモートマシン (
@my.remote.logging.server) に記録するようにクライアントシステムを設定します。または、以下の行を
/etc/rsyslog.confファイルに追加して、ローカルに生成されたすべてのシステムメッセージをログに記録するようにsyslogdを設定できます。# Log all messages to a remote logging server: . @my.remote.logging.server重要syslogdデーモンには、生成されたネットワークトラフィックに対する組み込みのレート制限は含まれていません。したがって、RHEL for Real Time システムを使用する際は、組織が必要とするリモートメッセージのみをログに記録するようにしてください。たとえば、カーネルの警告や認証要求など。その他のメッセージはローカルにログ記録する必要があります。ヒント詳細は、お使いのシステムの
syslog(3)、rsyslog.conf(5)、およびrsyslogd(8) のman ページを参照してください。