Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

25.5.4. rsyslog キューの新規構文の使用

rsyslog 7 で利用可能な新しい構文では、キューは /etc/rsyslog.conf で個別に使用するか、またはルールセット内部で使用できる action() オブジェクト内に定義されます。アクションキューの形式は以下のようになります。
action(type="action_type" queue.size="queue_size" queue.type="queue_type" queue.filename="file_name")
action_type を、アクションを実行するモジュールの名前に置き換え、queue_size をキューに含めることができるメッセージの最大数に置き換えます。queue_type には、disk を選択するか、インメモリーキュー( direct、Linkedlist、または fixedarray )のいずれかを選択します。file_name には、パスではなくファイル名のみを指定します。ログファイルを保持する新規ディレクトリーを作成する場合は、SELinux コンテキストを設定する必要があることに注意してください。例は、「rsyslog ログファイルの新しいディレクトリーの作成」 を参照してください。

例25.13 アクションキューの定義

出力アクションを、最大 10,000 個のメッセージを保持できる非同期リンクリストベースのアクションキューで設定するには、以下のようにコマンドを入力します。
action(type="omfile" queue.size="10000" queue.type="linkedlist" queue.filename="logfile")
直接アクションキューの rsyslog 7 構文は以下のとおりです。
*.* action(type="omfile" file="/var/lib/rsyslog/log_file
     )
複数のパラメーターがアクションキュー用 rsyslog 7 構文は以下のように記述できます。
*.* action(type="omfile"
              queue.filename="log_file"
              queue.type="linkedlist"
              queue.size="10000"
     )
デフォルトの作業ディレクトリー、または最後に設定した作業ディレクトリーが使用されます。別の作業ディレクトリーを使用する必要がある場合は、アクションキューの前に以下の行を追加します。
global(workDirectory="/directory")

例25.14 新規構文を使用した単一サーバーへの転送

以下の例は、手順25.2「単一サーバーへの転送」 の手順に基づき、従来の構文と rsyslog 7 の構文の違いを示しています。omfwd プラグインは、UDP または TCP を介した転送を提供するために使用されます。デフォルトは UDP です。プラグインは組み込まれているため、ロードする必要がありません。
/etc/rsyslog.conf の以下の設定を使用するか、/etc/rsyslog.d/ ディレクトリーに以下の内容のファイルを作成します。
*.* action(type="omfwd"
      queue.type="linkedlist"
      queue.filename="example_fwd"
      action.resumeRetryCount="-1"
      queue.saveOnShutdown="on"
      target="example.com" port="6514" protocol="tcp"
     )
詳細は以下のようになります。
  • queue.type="linkedlist" は、LinkedList インメモリーキューを有効にします。
  • queue.filename はディスクストレージを定義します。バックアップファイルは、前のグローバルの workDirectory ディレクティブで指定された作業ディレクトリーに example_fwd 接頭辞を付けて作成されます。
  • action.resumeRetryCount -1 設定は、サーバーが応答しない場合に接続を再試行するときに rsyslog がメッセージを破棄しないようにします。
  • rsyslog がシャットダウンすると、有効になっている queue.saveOnShutdown="on" はインメモリーデータを保存します。
  • 最後の行は受信メッセージをすべてロギングサーバーに転送します。ポートの指定は任意です。