NXLOG ファイル入力検索パターン

NXLOG ファイル入力検索パターン

私は nxlog を使用して、im_file入力モジュールと監視するファイルを指定するパターンを使用して、vCenter メッセージを Logstash に転送しようとしています。通常であれば簡単な処理が、vCenter のログ ローテーションによってログが圧縮され、次のログ ファイルが作成されるときにファイル名が増分されるため、不必要に複雑になっています。例:

vpxd-1.log -> vpxd-1.log.gz -> vpxd-2.log

vCenter vpxd.log ログからのメッセージを転送したい:

*vpxa(\.log|\.\d+(\.gz)?|-\d+\.log(\.gz)?)

答え1

vCenter ログは ESXi ログとは異なる形式になっているため、nxlog ではなく Logstash を使用することにしました。フォワーダーにローカル フィルターを設定して、vCenter メッセージを ESXi メッセージと同様の形式に変換します。

Logstash を Windows サービスとして実行する方法の詳細については、このガイドを参照してください。


サービス構成:

C:
cd \logstash
set HOME=c:/logstash/sincedb
"C:\Program Files\Java\jdk1.7.0_45\bin\java.exe" -jar logstash-1.2.2.jar agent --config logstash.conf --log logstash.log

Logstash 構成:

input {
  file {
    path => [ "C:/vmware_logs/vpxd-[0-5][0-9].log", "C:/vmware_logs/vpxd-alert-[0-5][0-9].log" ]
    type => "syslog"
    exclude => "*.gz"
  }
}

output {
  udp {
    host => "<address>"
    port => "514"
  }
  stdout {
    debug => true
  }
}

関連情報