我需要解析我们的Symfony php应用程序的日志,而且我面对这种类型的日志消息,我不知道如何使用grok或任何可以帮助我获得此日志消息的过滤器将它与logstash一起解析。解析并使其能够在elasticsearch和kibana中进行查询。
到目前为止,这是我的代码,我需要完全解析它:
现在写,我看不到消息字段的每个部分完全清楚地解析,然后我无法在Elastcsearch和kibana中对其进行查询,
beats {
port => 5044
}
}
filter {
json {
source => "message"
}
mutate {
remove_field => ["input", "agent", "input", "tags", "ecs", "host", "@version", "log", "offset", "file"]
}
grok {
match => { "message" => "%{GREEDYDATA:dateoflog} %{GREEDYDATA:timeoflog} %{GREEDYDATA:info} %{GREEDYDATA:env} %{GREEDYDATA:logininfo} %{GREEDYDATA:empty1} %{GREEDYDATA:empty2}" }
overwrite => [ "message" ]
}
}
output {
stdout { codec => rubydebug }
elasticsearch {
hosts => "10.2.100.17:9200"
}
}
这是日志行中的消息字段,我需要对其进行解析:
[2019-05-15 10:28:33] app.INFO: {"service":{"name":"Biomed","version":"1.5.0"},"user":[],"action":{"description":"User login","email":"jordi.cami@genomcore.com","code":"login_user"},"environment":"test"} [] []