我创建了一个java客户端来连接到elasticsearch并请求多个名为analytics-%{+YYYY.MM.dd}的索引中的文档。这是我的代码:
try {
client = TransportClient.builder().build()
.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName(serverIpAddr), serverPort));
} catch (UnknownHostException e) {
e.printStackTrace();
}
GetResponse response = client.prepareGet("analytics*", "logs", "AVbgot3mAQOAFbgN9Rtz")
.setOperationThreaded(false)
.get();
但是,我收到以下错误:[analytics*] IndexNotFoundException[没有这样的索引]
当我尝试使用: 'analytics-2016.08.31' 时它有效。但是,出于我的目的,我需要请求多个索引。
你知道我该如何解决这个问题吗?
感谢您的关注和帮助。
最佳答案
如果您不知道索引名称,则无法通过 ID 运行 GET(假设您知道index/type/id
),但您需要跨多个索引进行搜索。
您可以查看IDs query和 its Java form .
关于java - Eclipse J2E : IndexNotFoundException[no such index],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39250525/