Elasticsearch.Net 2.x 等价于 IElasticSearchResponse.NumberOfRetries 是什么?
What is the Elasticsearch.Net 2.x equivalent for IElasticSearchResponse.NumberOfRetries?
我正在开发一个使用 Elasticsearch .NET 客户端库(Elasticsearch.Net 和 NEST)的应用程序,作为从 Elasticsearch 1.x 到 2.x 转换的一部分,我正在尝试计算出之前通过 IElasticSearchResponse
.
公开的某些数据的 2.x 等价物
在我们的 1.x 实现中,我们在提供给 ConnectionSettings.SetConnectionStatusHandler()
的方法中执行了以下逻辑:
private static void LogElasticSearch1DotXMetrics(IElasticsearchResponse resp)
{
if (resp.NumberOfRetries > 0)
PerformSomeLoggingOperationOn(resp.NumberOfRetries);
}
在2.x中,我认为等同于ConnectionSettings.SetConnectionStatusHandler()
的是传递一个方法给ConnectionSettings.OnRequestCompleted()
。此方法将接收一个 IApiCallDetails
实例。
private static void LogElasticSearch2DotXMetrics(IApiCallDetails details)
{
PerformSomeLoggingOperationOn(details.??????);
}
我没能在 IApiCallDetails
上找到 IElasticSearchResponse.NumberOfRetries
的明显等价物。谁能指出我正确的方向?
我已将此问题提交给 Elasticsearch 支持人员,并在此处总结他们的回复,以防其他人发现它有用。
Elasticsearch.NET 2.x 中没有直接等同于 NumberOfRetries 的项。但是,当达到最大重试次数时,有一个事件。
var maxRetriesReached = callDetails.AuditTrail
.Any(a => a.Event == AuditEvent.MaxRetriesReached);
或者,如果您真的对重试次数感兴趣,而不是查询是否被放弃,您还可以观察 BadResponse 事件的审计线索。
var badResponses = callDetails.AuditTrail
.Any(a => a.Event == AuditEvent.BadResponse);
我正在开发一个使用 Elasticsearch .NET 客户端库(Elasticsearch.Net 和 NEST)的应用程序,作为从 Elasticsearch 1.x 到 2.x 转换的一部分,我正在尝试计算出之前通过 IElasticSearchResponse
.
在我们的 1.x 实现中,我们在提供给 ConnectionSettings.SetConnectionStatusHandler()
的方法中执行了以下逻辑:
private static void LogElasticSearch1DotXMetrics(IElasticsearchResponse resp)
{
if (resp.NumberOfRetries > 0)
PerformSomeLoggingOperationOn(resp.NumberOfRetries);
}
在2.x中,我认为等同于ConnectionSettings.SetConnectionStatusHandler()
的是传递一个方法给ConnectionSettings.OnRequestCompleted()
。此方法将接收一个 IApiCallDetails
实例。
private static void LogElasticSearch2DotXMetrics(IApiCallDetails details)
{
PerformSomeLoggingOperationOn(details.??????);
}
我没能在 IApiCallDetails
上找到 IElasticSearchResponse.NumberOfRetries
的明显等价物。谁能指出我正确的方向?
我已将此问题提交给 Elasticsearch 支持人员,并在此处总结他们的回复,以防其他人发现它有用。
Elasticsearch.NET 2.x 中没有直接等同于 NumberOfRetries 的项。但是,当达到最大重试次数时,有一个事件。
var maxRetriesReached = callDetails.AuditTrail
.Any(a => a.Event == AuditEvent.MaxRetriesReached);
或者,如果您真的对重试次数感兴趣,而不是查询是否被放弃,您还可以观察 BadResponse 事件的审计线索。
var badResponses = callDetails.AuditTrail
.Any(a => a.Event == AuditEvent.BadResponse);