我正在尝试索引一个文档,在该文档上出现此错误。
Caught exception: {"error":{"root_cause":[{"type":"string_index_out_of_bounds_exception","reason":"String index out of range: 0"}],"type":"string_index_out_of_bounds_exception","reason":"String index out of range: 0"},"status":500}
我像这样在php中添加索引
$es = $this->elasticsearch->client;
$params = [
'index' => 'app_users',
'body' => [
'full_name' => "someone",
'login' => "someone",
'password' => "password",
'role' => "Engineer",
'email' => "email@test.com",
'status' => "active",
'last_login' => date("Y-m-d\TH:i:s\Z"),
'creation_date' => date("Y-m-d\TH:i:s\Z")
]
];
try{
$response = $es->index($params);
echo "$r->id"."\n";
echo "- Status => ".ucwords($response["result"])." - ".$r->date."\n";
unset($rec[$key]);
}catch(Exception $e){
echo 'Caught exception: ', $e->getMessage(), "\n";
exit;
}
下面是弹性日志中的错误日志,我认为由于某种原因它没有传递索引名。如果我做错了什么或错过了什么,谁能指导我?我在windows上安装了elasticsearch。
[2020-10-15T02:23:58,717][WARN ][r.suppressed ] [computer_name] path: //app_users/_doc, params: {index=, id=_doc, type=app_users}
java.lang.StringIndexOutOfBoundsException: String index out of range: 0
at java.lang.StringLatin1.charAt(StringLatin1.java:48) ~[?:?]
at java.lang.String.charAt(String.java:712) ~[?:?]
at org.elasticsearch.cluster.metadata.MetadataCreateIndexService.validateIndexOrAliasName(MetadataCreateIndexService.java:227) ~[elasticsearch-7.9.2.jar:7.9.2]
at org.elasticsearch.cluster.metadata.MetadataCreateIndexService.validateIndexName(MetadataCreateIndexService.java:165) ~[elasticsearch-7.9.2.jar:7.9.2]
at org.elasticsearch.cluster.metadata.MetadataCreateIndexService.validate(MetadataCreateIndexService.java:941) ~[elasticsearch-7.9.2.jar:7.9.2]
at org.elasticsearch.cluster.metadata.MetadataCreateIndexService.applyCreateIndexRequest(MetadataCreateIndexService.java:322) ~[elasticsearch-7.9.2.jar:7.9.2]
at org.elasticsearch.cluster.metadata.MetadataCreateIndexService.applyCreateIndexRequest(MetadataCreateIndexService.java:367) ~[elasticsearch-7.9.2.jar:7.9.2]
at org.elasticsearch.action.admin.indices.create.AutoCreateAction$TransportAction$1.execute(AutoCreateAction.java:137) ~[elasticsearch-7.9.2.jar:7.9.2]
at org.elasticsearch.cluster.ClusterStateUpdateTask.execute(ClusterStateUpdateTask.java:47) ~[elasticsearch-7.9.2.jar:7.9.2]
at org.elasticsearch.cluster.service.MasterService.executeTasks(MasterService.java:702) ~[elasticsearch-7.9.2.jar:7.9.2]
at org.elasticsearch.cluster.service.MasterService.calculateTaskOutputs(MasterService.java:324) ~[elasticsearch-7.9.2.jar:7.9.2]
at org.elasticsearch.cluster.service.MasterService.runTasks(MasterService.java:219) [elasticsearch-7.9.2.jar:7.9.2]
at org.elasticsearch.cluster.service.MasterService.access$000(MasterService.java:73) [elasticsearch-7.9.2.jar:7.9.2]
at org.elasticsearch.cluster.service.MasterService$Batcher.run(MasterService.java:151) [elasticsearch-7.9.2.jar:7.9.2]
at org.elasticsearch.cluster.service.TaskBatcher.runIfNotProcessed(TaskBatcher.java:150) [elasticsearch-7.9.2.jar:7.9.2]
at org.elasticsearch.cluster.service.TaskBatcher$BatchedTask.run(TaskBatcher.java:188) [elasticsearch-7.9.2.jar:7.9.2]
at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:678) [elasticsearch-7.9.2.jar:7.9.2]
at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.runAndClean(PrioritizedEsThreadPoolExecutor.java:252) [elasticsearch-7.9.2.jar:7.9.2]
at org.elasticsearch.common.util.concurrent.PrioritizedEsThreadPoolExecutor$TieBreakingPrioritizedRunnable.run(PrioritizedEsThreadPoolExecutor.java:215) [elasticsearch-7.9.2.jar:7.9.2]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]
at java.lang.Thread.run(Thread.java:832) [?:?]
暂无答案!
目前还没有任何答案,快来回答吧!