三人行必有我师

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

Logstash | 作者 nosec | 发布于2016年10月13日 | 阅读数:4141

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

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到底要怎么用,官方的插件文档真的是好粗略啊
已邀请:

leighton_buaa

赞同来自:

query=>"username:%{[username]}" 先改为 query=>"%{[username]}" 或者 query=>"username:*" 试试报错不?

要回复问题请先登录注册