是否可以使用scripted_upsert访问elasticsearch logstash输出脚本中的事件字段?
output {
elasticsearch {
hosts => ["elasticsearch:9200"]
index => "index"
document_type => "doctype"
action => "update"
document_id => "%{some_field}"
scripted_upsert => true
script => 'ctx._source.name = event["some_field"];'
script_var_name => "event"
script_type => "inline"
}
}
如果我使用这样的脚本,它不会插入文件。但是如果我将ctx._source.name
设置为静态的东西。例如。
script => 'ctx._source.name = "something"'
它按预期工作。并且uptss文件。
答案 0 :(得分:0)
您可以尝试以下方法:
ctx._source.name = params.event.get("some_field")