[英]Elasticsearch-py Index takes 4 arguments, 5 given?
我有以下对Elasticsearch-py客户端的调用:
esClient.index(index=data['AppName'], id=data['RequestId'], body=data)
运行代码时出现以下错误:
Traceback (most recent call last):
File "C:\Users\danielschnoll\dashboard\backend.py", line 52, in main
parseData(sowSet)
File "C:\Users\danielschnoll\dashboard\backend.py", line 36, in parseData
sendToElasticSearch(d)
File "C:\Users\danielschnoll\dashboard\backend.py", line 39, in sendToElasticSearch
esClient.index(data['AppName'], id=data['RequestId'], body=data)
File "C:\elasticsearch-6.2.0-py2.7.egg\elasticsearch\client\utils.py", line 76, in _wrapped
return func(*args, params=params, **kwargs)
TypeError: index() takes at least 4 arguments (5 given)
我不确定我是怎么得到这个错误的。 我的4个参数是来自esClient的'self'调用,然后是index,id和body JSON对象。 这个假设的第五个论点在哪里,我该如何解决这个问题呢? 谢谢
错误很尴尬,文档缺乏解释。
提供5个或更多参数时你不会犯错误 - 它至少说 - 但你应该提供你的第一个参数index
作为第一个位置参数,id作为第二个参数:
esClient.index(data['AppName'], data['RequestId'], body=data)
这是在上面评论中链接目标下提供的链接中间接解释的,因为没有选项提供索引作为参数,只能直接调用PUT indexname/...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.