我将logastash7.6与输出jdbc插件一起使用,但是我得到了一个错误,我理解这是因为在这个事件中,它向我发送了作为@metadata一部分的所有要索引的字段。只需在事件名称中添加@就可以了。
如何在@metada集合中获得单个字段?
错误:
ERROR logstash.outputs.jdbc - JDBC - Exception. Not retrying {:exception=>#, :statement=>"UPDATE table SET estate = 'P' WHERE codigo = ? ", :event=>"{\"properties\":{\"rangoAltura1\":null,\"rangoAltura2\":null,\"codigo\":\"DB_001\",\"rangoAltura3\":null,\"descrip\":\"CARLOS PEREZ\",\"codigo\":\"106\",\"rangoAltura5\":null,\"active\":true},\"id\":\"DB_001_555\"}"}
我的.conf:
statement => ["UPDATE table SET estate = 'A' WHERE entidad = ? ","%{[@metadata][miEntidad]}"]
{[@metadata][mientidad]}----->map['entidad\u temp']=event.get('entidad')
1条答案
按热度按时间brjng4g31#
根据输出jdbc插件自述文件,您已经正确设置了它/
或许可以尝试以下解决方法:
statement => ["UPDATE table SET estate = 'A' WHERE entidad = ? ","[@metadata][miEntidad]"]