如何在logstash中生成新字段
我需要使用logstash生成新字段(loglevel),最后显示在kibana中如何在logstash中生成新字段,logstash,elastic-stack,Logstash,Elastic Stack,我需要使用logstash生成新字段(loglevel),最后显示在kibana中 如何提取此日志并为此日志使用grok筛选器生成模式 如何使用logstash配置创建loglevel字段 当我设置log4net过滤器时,我发现这个页面很有用。根据日志的外观,您将得到如下结果(从该页面复制): 当我设置log4net过滤器时,我发现这个页面很有用。根据日志的外观,您将得到如下结果(从该页面复制): 是的,现在我得到了答案。请查找以下用于创建新字段和筛选某些字段的配置 filter {
是的,现在我得到了答案。请查找以下用于创建新字段和筛选某些字段的配置
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}" }
}
}
}
是的,现在我得到了答案。请查找以下用于创建新字段和筛选某些字段的配置
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}" }
}
}
}
开始制作grok模式的最佳方法是使用grok调试器:开始制作grok模式的最佳方法是使用grok调试器:对@Samuel,但我的日志在GREEDYDATA时不同,在日志消息中丢失了一些数据。对@Samuel,但我的日志在GREEDYDATA时不同,日志消息中的某些数据出错。