Logstash 简单系统日志的Grok模式
Im使用7.2.0和filebeat 7.2.0的ELK设置。 现在我已经在filebeata和im中启用了系统模块,并尝试在Logstash中使用一个简单的grokLogstash 简单系统日志的Grok模式,logstash,elastic-stack,logstash-grok,logstash-configuration,Logstash,Elastic Stack,Logstash Grok,Logstash Configuration,Im使用7.2.0和filebeat 7.2.0的ELK设置。 现在我已经在filebeata和im中启用了系统模块,并尝试在Logstash中使用一个简单的grok input { beats { port => 5044 ssl => false } } filter { if [fileset][module] == "system" { grok { match => { "
input {
beats {
port => 5044
ssl => false
}
}
filter {
if [fileset][module] == "system" {
grok {
match => { "message" => "%{SYSLOGLINE}"}
}
}
output {
elasticsearch {
hosts => ["10.16.5.24:9200"]
index => "rehatsystemlogs"
}
stdout { codec => rubydebug }
}
示例日志:Nov 17 08:01:01 strproelk02 systemd:已删除根的用户切片
现在,当我为这个示例日志签入%{SYSLOGLINE}时,我能够通过日志拆分获得正确的输出
但是,当我执行日志存储时,单独的列不会在ES中的索引中拆分
哪里出错了?缺少一个大括号,过滤器的末端
input {
beats {
port => 5044
ssl => false
}
}
filter {
grok {
match => { "message" => "%{SYSLOGLINE}"}
}
}
output {
elasticsearch {
hosts => ["10.16.5.24:9200"]
index => "rehatsystemlogsdata"
}
stdout { codec => rubydebug }
}
我更正了,它仍然没有按预期分割我的数据。请帮助我,为我的延迟回复道歉。请删除该条件并仅保留grok进行检查。它不起作用,但是,定制grok对我有效。谢谢