logstash を使用して新しいフィールド ( loglevel ) を生成し、最終的にキバナに表示する必要があります。
- このログを抽出し、このログに対して grok フィルターを使用してパターンを作成する方法。
- logstash 構成を使用してloglevelのフィールドを作成する方法。
logstash を使用して新しいフィールド ( loglevel ) を生成し、最終的にキバナに表示する必要があります。
はい、今私は答えを得ました。新しいフィールドを作成し、いくつかのフィールドをフィルタリングするための以下の構成を見つけてください。
filter {
multiline{
pattern => "^%{TIMESTAMP_ISO8601}"
what => "previous"
negate=> true
}
# Delete trailing whitespaces
mutate {
strip => "message"
}
# Delete \n from messages
mutate {
gsub => ['message', "\n", " "]
}
# Delete \r from messages
mutate {
gsub => ['message', "\r", " "]
}
grok {
match => { "message" => "%{TIMESTAMP_ISO8601:time} \[%{NUMBER:thread}\] %{LOGLEVEL:loglevel} %{JAVACLASS:class} - %{GREEDYDATA:msg}" }
}
if "Exception" in [msg] {
mutate {
add_field => { "msg_error" => "%{msg}" }
}
}
}