我在弹性搜索中使用NEST进行请求。将数据保存到elasticsearch时,会发生错误。
请求:PUT:/ strategy / 30772377 {“ id”:1,“ name”:“ strategy1”}
保存时,NEST返回一个错误。
我的代码:
var settings = new ConnectionSettings(new StaticConnectionPool(uri));
var client = new ElasticClient(settings);
var response = await client.IndexAsync(
model,
x => x.Type(indexType).Index(indexName),
cancellationToken).ConfigureAwait(false);
错误:
NEST.Response.DebugInformation:
从上把一个不成功的低电平呼叫建立无效NEST响应: / strategy / 30772377
此API调用的审核记录: - [1] BadResponse:节点:http://localhost:9200/注意到:00:00:51.9406716 -[2]取消要求:参加:00:00:00
OriginalException:Elasticsearch.Net.ElasticsearchClientException: 请求已中止:请求已取消。。呼叫:状态代码 从未知:PUT /策略/ 30772377 --->
System.Net.WebException:请求被中止:请求被 取消。在System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) System.Threading.Tasks.TaskFactory
1.FromAsyncCoreLogic(IAsyncResult iar, Func
2 endFunction,操作1 endAction, Task
1承诺,布尔值 需要同步) ---从上一个引发异常的位置开始的堆栈跟踪- System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务 任务)在Elasticsearch.Net.HttpWebRequestConnection。d__5`1.MoveNext()-内部异常堆栈的结尾 跟踪---
请求:{“ id”:1,“名称”:“ strategy1”}
响应:
答案 0 :(得分:0)
调试信息中的审核跟踪指示最终使用CancellationToken
取消了该请求。在此之前的审计事件表示从Elasticsearch坏的响应;如果请求有问题,response.ServerError
将包含来自Elasticsearch的错误。