web-dev-qa-db-ja.com

logstash設定ファイルの形式は何ですか

Logstashは設定ファイルで独自のファイル構文を使用しますか?設定ファイル構文のパーサーまたはバリデーターはありますか?

Logstashを使用していないが、ファイル形式について考えている人のために、ここにサンプル構文があります。

input {
  file {
    path => "/var/log/messages"
    type => "syslog"
  }

  file {
    path => "/var/log/Apache/access.log"
    type => "Apache"
  }
}
25
kokeksibir

回答が投稿されてからコマンドライン引数が更新されたようです。--configtestおよび--config引数は無効になりました。 Logstash(少なくともv5)に構成ファイルの検証を依頼するには、次のようにします。

bin/logstash -t -f config.conf

引数を展開すると、次のようになります。

bin/logstash --config.test_and_exit --path.config config.conf
4
lehins

Logstash構成ファイルは、Logstashの人々が Treetop を使用して開発したカスタム形式です。

文法自体はソースファイル grammar.treetop に記述されており、Treetopを使用してカスタム grammar.rb パーサーにコンパイルされます。

そのパーサーは、Logstash構成からパイプラインをセットアップするために pipeline.rb ファイルによって使用されます。

Rubyにあまり詳しくない場合は、 node-logstash という別の興味深いプロジェクトがあります。これはNode.jsでLogstashの実装を提供します。構成形式は公式のLogstashとまったく同じですが、パーサーは明らかにNode.js用に作成されたものとは異なります。このプロジェクトでは、Logstash 構成ファイルの文法jison で記述され、パーサーも 自動生成 ですが、どのノードでも使用できます。生成されたパーサーを要求するだけでjsモジュール。

22
Val

次のコマンドを使用して、logstash構成ファイルが有効であることを確認できます。

bin/logstash --configtest --config <your config file>
9
Zanbel

これまでのところ。 logstash構成用のパーサーまたはバリデーターはありません。 logstashを使用して構成を確認することしかできません。

Configの詳細については、 ここ にアクセスしてください。このページではすべてのフォーマットを紹介しています。

1
Ben Lim

Logstash-Config Goパッケージ configは、GoのLogstash構成ファイルにすぐに使用できるパーサーと抽象構文ツリーを提供します。

Logstash構成フォーマットを解析するための文法の基礎は、元の Logstash Treetop文法 です。

logstash-configは pigeon を使用して、PEG(パーサー式文法)からパーサーを生成します。

0