2016-04-08 5 views
1

私はelasticsearchクラスタ(ELK)といくつかのノードがfilebeatを使ってログをlogstashに送信しています。私の環境内のすべてのサーバーはCentOS 6.5です。filebeatカスタムフィールドの生成

各サーバーのfilebeat.ymlファイルはPuppetモジュールによって強制されます(私の実動サーバーとテストサーバーの構成は同じです)。

生産/テストサーバーからのものかどうかを伝えるフィールドを各ドキュメントに入れたいと思っています。

filebeat.ymlファイルを使用して環境(生産/テスト)を示すすべてのドキュメントに動的カスタムフィールドを生成したかったのです。

これを動作させるには、環境を返すコマンドを実行することを考えました(環境を知っていることが可能です)。それをfilebeat.ymlファイルの "環境"カスタムフィールドの下に追加しましたが、そうする方法は見つけられません。

filebeat.ymlでコマンドを実行することはできますか? 私の目標を達成する他の方法はありますか?

答えて

0

はい、ドキュメントにファイルビートを使用してフィールドを追加できます。

official docにはどのように表示されますか?あなたのfilebeat.ymlで

+0

おかげで、サーバーの環境を指定しますダイナミックなフィールドです。私はカスタムフィールドを追加することができますが、私はそれがコマンドである必要があります。あなたが提案したように私が手動でそれをしたくない理由は、私は多くのサーバーを持っているので、それぞれとそれぞれのために異なるファイルを作成したくありません。とにかくありがとう!! –

+1

ファイルビート設定をサーバーに展開するときに、構成管理システムから変数を入力します。 –

+0

私はそれをやろうと思う、別の選択肢があるかどうかを知りたかった。どうもありがとう :) –

3

:高速な応答が、私は必要とするため

filebeat: 
    prospectors: 
    - 
     paths: 
     - /path/to/my/folder 
     input_type: log 

     # Optional additional fields. These field can be freely picked 
     # to add additional information to the crawled log files 
     fields: 
     mycustomvar: production 
関連する問題