logstashディレクトリに複数のプロファイルの1つのインスタンス、すべての設定ファイルをすることができます実行します
/ usr / share / logstash /パイプライン
ただし、デフォルトの動作では、プロファイルごとに独立して実行されていませんが、全体として、各入力が処理され、間違った場所に送信する誤ったデータをもたらすことができる、フィルタのすべてに一致して、すべての出力と一致します。
解決策1:
可変フィルタと出力を決定するために、入力変数に設定し、独立して実行する各プロファイルの実現は、変数はそれを使用する、お互いに影響を与えないのだろうか?
次のように公式に説明し、多くの一般的なデフォルトの入力パラメータが、利用可能な唯一のタイプがあります:
追加
type
この入力によって処理されるすべてのイベントにフィールドを。タイプは、フィルタの活性化のために主に使用されています。
タイプは、イベント自体の一部として保存されているので、あなたもKibanaでそれを検索するための型を使用することができます。
入力パラメータのタイプは、イベントに追加され、それ以降の出力フィルタに使用することができ、次のように他のパラメータは配置されないであろう。
入力{ JDBC { ... タイプ => " some_type " } } フィルタリング{ なら [タイプ] == " some_type " { ... } } 出力{ なら [タイプ] == " some_type " { ... } }
すべてがうまくいけば、問題がある場合に、お祝いの言葉は、それはあなたがフィールドにイベントの種類を持っているということ、そして割り当てることができ、(代わりに追加のカバレッジの)タイプの配列があるでしょう、そして、2つの問題があります。
1)決意と出力フィルタの故障ならば、あなたはおそらく、データが送信されていない処理されません。
2)あなたのデータ・タイプ・フィールドは、混乱を変えています。
対処方法2:
次のようにイベントに手動で設定、例えばmy_typeとして、変数を追加します。
入力{ JDBC { ... ステートメント => " *を選択し、 'some_type' my_type MY_TABLE UPDATE_TIME>から:sql_last_value " ... } } フィルタリング{ なら [my_type] == " some_type " { ... } } 出力{ もし [my_type] == " some_type " { ... } }
裁判官と@metadata変数の使用の場合など、下記参照公式文書に詳述され、他のソリューションがあります。
参考:
JDBC入力
https://www.elastic.co/guide/en/logstash/6.3/plugins-inputs-jdbc.html
イベント依存設定
https://www.elastic.co/guide/en/logstash/6.7/event-dependent-configuration.html