Logstashで条件を使用して特定のタグが存在するかどうかを確認する方法はありますか?
例えば、
grok {
match => [
"message", "Some expression to match|%{GREEDYDATA:NOMATCHES}"
]
nOMATCHESが存在する場合.
NOMATCHESタグが存在するかどうかを確認するにはどうすればよいですか?
ありがとう。
わかりました。指定した設定スニペットは、タグではなくフィールドを設定しています。
Logstashイベントは、フィールドの辞書と考えることができます。 tags
という名前のフィールドは、add_tag
およびremove_tag
操作を介して多くのプラグインによって参照されます。
タグが設定されているかどうかを確認できます。
if "foo" in [tags] {
...
}
しかし、フィールドに何かが含まれているかどうかをチェックしたいようです:
if [NOMATCHES] =~ /.+/ {
...
}
上記はNOMATCHES
が存在し、空でないことを確認します。
次の存在のテストも機能します[Logstash 1.4.2でテスト済み]。ただし、空でないことを検証することはできません。
if [NOMATCHES] {
...
}