关于logstash插件logstash-filter-elasticsearch的问题

其实我本意是想要实现如下需求:

logstash的插入数据到elasticsearch的时候,先从elasticsearch里去查数据,查的时候,字段都是固定,字段值从grok拆分message里字段得到,如果查到则不写入。

但是实际上,遇到很多问题

比如

urldecode {}
grok {
match => ["message","\s*\"(?<clientip>(.*?)?)\"\s+(.*)\s+\"(?<username>(.*?)?)\"\s+\"(?<userid>(\S+)?)\""]

}


elasticsearch {
hosts=>["127.0.0.1:9200/abc/cde/"]
query=>"username:%{[username]}"
fields => {"ida"=>"userid"}
sort=>"_id:desc"
}

居然报错

{"type":"parse_exception","reason":"Cannot parse 'username:%{username}'

一头雾水啊。。

来个大牛解答下啊!

这个logstash-filter-elasticsearch到底要怎么用,官方的插件文档真的是好粗略啊

阅读 3.2k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进