你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

CosmosItemRequestOptions 类

  • java.lang.Object
    • com.azure.cosmos.models.CosmosItemRequestOptions

public class CosmosItemRequestOptions

封装可为向 cosmos Item 发出的请求指定的选项。

构造函数摘要

构造函数 说明
CosmosItemRequestOptions()

构造函数

方法摘要

修饰符和类型 方法和描述
ConsistencyLevel getConsistencyLevel()

获取请求所需的一致性级别。

DedicatedGatewayRequestOptions getDedicatedGatewayRequestOptions()

获取专用网关请求选项

List<String> getExcludedRegions()

获取要为请求/重试排除的区域的列表。

String getIfMatchETag()

获取与 Azure Cosmos DB 服务中的请求关联的If-Match (ETag) 。

String getIfNoneMatchETag()

获取与 Azure Cosmos DB 服务中的请求关联的 If-None-Match (ETag) 。

IndexingDirective getIndexingDirective()

获取索引指令 (索引、do not index 等) 。

List<String> getPostTriggerInclude()

获取在操作后要调用的触发器。

List<String> getPreTriggerInclude()

获取在操作之前要调用的触发器。

String getSessionToken()

获取用于会话一致性的令牌。

Duration getThresholdForDiagnosticsOnTracer()

获取DiagnosticsOnTracer 的阈值,如果 CRUD 操作的延迟大于此诊断将作为端到端 CRUD api 跟踪器范围中的事件发送到打开遥测导出程序。

String getThroughputControlGroupName()

获取吞吐量控制组名称。

Boolean isContentResponseOnWriteEnabled()

获取布尔值,以仅返回 Cosmos DB 响应中的标头和状态代码,以防对 Cosmos项执行创建、更新和删除操作。

CosmosItemRequestOptions setConsistencyLevel(ConsistencyLevel consistencyLevel)

设置请求所需的一致性级别。

CosmosItemRequestOptions setContentResponseOnWriteEnabled(Boolean contentResponseOnWriteEnabled)

将布尔值设置为仅返回 Cosmos DB 响应中的标头和状态代码,以防对 CosmosItem 执行创建、更新和删除操作。

CosmosItemRequestOptions setCosmosEndToEndOperationLatencyPolicyConfig(CosmosEndToEndOperationLatencyPolicyConfig endToEndOperationLatencyPolicyConfig)

CosmosEndToEndOperationLatencyPolicyConfig设置要用于请求的 。

CosmosItemRequestOptions setDedicatedGatewayRequestOptions(DedicatedGatewayRequestOptions dedicatedGatewayRequestOptions)

设置专用网关请求选项

CosmosItemRequestOptions setDiagnosticsThresholds(CosmosDiagnosticsThresholds operationSpecificThresholds)

允许替代特定操作的诊断阈值。

CosmosItemRequestOptions setExcludedRegions(List<String> excludeRegions)

要为请求/重试排除的区域列表。

CosmosItemRequestOptions setIfMatchETag(String ifMatchETag)

设置与 Azure Cosmos DB 服务中的请求关联的If-Match (ETag) 。

CosmosItemRequestOptions setIfNoneMatchETag(String ifNoneMatchETag)

设置与 Azure Cosmos DB 服务中的请求关联的 If-None-Match (ETag) 。

CosmosItemRequestOptions setIndexingDirective(IndexingDirective indexingDirective)

设置索引指令 (索引,不索引等) 。

CosmosItemRequestOptions setNonIdempotentWriteRetryPolicy(boolean nonIdempotentWriteRetriesEnabled, boolean useTrackingIdPropertyForCreateAndReplace)

为写入操作启用自动重试,即使 SDK 无法保证这些操作是幂等的。

CosmosItemRequestOptions setPostTriggerInclude(List<String> postTriggerInclude)

设置在操作后调用的触发器。

CosmosItemRequestOptions setPreTriggerInclude(List<String> preTriggerInclude)

设置在操作之前要调用的触发器。

CosmosItemRequestOptions setSessionToken(String sessionToken)

设置用于会话一致性的令牌。

CosmosItemRequestOptions setThresholdForDiagnosticsOnTracer(Duration thresholdForDiagnosticsOnTracer)

DiagnosticsOnTracer 设置阈值,如果 CRUD 操作的延迟大于此诊断将作为端到端 CRUD API 跟踪器范围中的事件发送到打开遥测导出程序。

void setThroughputControlGroupName(String throughputControlGroupName)

设置吞吐量控制组名称。

方法继承自 java.lang.Object

构造函数详细信息

CosmosItemRequestOptions

public CosmosItemRequestOptions()

构造函数

方法详细信息

getConsistencyLevel

public ConsistencyLevel getConsistencyLevel()

获取请求所需的一致性级别。

Returns:

一致性级别。

getDedicatedGatewayRequestOptions

public DedicatedGatewayRequestOptions getDedicatedGatewayRequestOptions()

获取专用网关请求选项

Returns:

专用网关请求选项

getExcludedRegions

public List getExcludedRegions()

获取要为请求/重试排除的区域的列表。 这些区域从首选区域列表中排除。

Returns:

排除区域的列表

getIfMatchETag

public String getIfMatchETag()

获取与 Azure Cosmos DB 服务中的请求关联的If-Match (ETag) 。

Returns:

与请求关联的 ifMatchETag。

getIfNoneMatchETag

public String getIfNoneMatchETag()

获取与 Azure Cosmos DB 服务中的请求关联的 If-None-Match (ETag) 。

Returns:

与请求关联的 ifNoneMatchETag。

getIndexingDirective

public IndexingDirective getIndexingDirective()

获取索引指令 (索引、do not index 等) 。

Returns:

索引指令。

getPostTriggerInclude

public List getPostTriggerInclude()

获取在操作后要调用的触发器。

Returns:

操作后要调用的触发器。

getPreTriggerInclude

public List getPreTriggerInclude()

获取在操作之前要调用的触发器。

Returns:

在操作之前要调用的触发器。

getSessionToken

public String getSessionToken()

获取用于会话一致性的令牌。

Returns:

会话令牌。

getThresholdForDiagnosticsOnTracer

public Duration getThresholdForDiagnosticsOnTracer()

获取 thresholdForDiagnosticsOnTracer,如果 CRUD 操作的延迟大于此诊断将作为端到端 CRUD API 跟踪器范围中的事件发送到打开遥测导出程序。 默认值为 100 毫秒。

Returns:

thresholdForDiagnosticsOnTracerInMS 跟踪器上诊断的延迟阈值。

getThroughputControlGroupName

public String getThroughputControlGroupName()

获取吞吐量控制组名称。

Returns:

吞吐量控制组名称。

isContentResponseOnWriteEnabled

public Boolean isContentResponseOnWriteEnabled()

获取在 CosmosItem 上执行创建、更新和删除操作时仅返回 Cosmos DB 响应中的标头和状态代码的布尔值。 如果设置为 false,则服务不会在响应中返回有效负载。 它不通过网络发送有效负载并在客户端上对其进行序列化,从而减少了网络和 CPU 负载。 此功能不会影响读取或写入操作的 RU 使用率。 注意:此标志也存在于 上 CosmosClientBuilder,但如果在 上 CosmosItemRequestOptions指定,它将替代 中为此请求指定的 CosmosClientBuilder 值。 默认情况下,此值为 null。

Returns:

一个布尔值,指示此请求的响应中是否包含有效负载。

setConsistencyLevel

public CosmosItemRequestOptions setConsistencyLevel(ConsistencyLevel consistencyLevel)

设置请求所需的一致性级别。 只能降低读取/查询请求的有效一致性级别。 因此,当帐户的默认一致性级别为例如“会话”时,可以在单个请求的逐请求级别上指定最终一致性是足够的 - 这可以减少此请求的延迟和 RU 费用,但不能保证会话一致性 (读取-自己写入) 注意:如果此处的请求级别上设置的一致性级别为 SESSION,则通过 构造 CosmosClient 实例时指定的默认一致性级别CosmosClientBuilder.consistencyLevel 不是 SESSION,则还需要通过显式调用 CosmosClientBuilder:sessionCapturingOverrideEnabled (true) 来启用会话令牌捕获。

Parameters:

consistencyLevel - 一致性级别。

Returns:

CosmosItemRequestOptions。

setContentResponseOnWriteEnabled

public CosmosItemRequestOptions setContentResponseOnWriteEnabled(Boolean contentResponseOnWriteEnabled)

将布尔值设置为仅返回 Cosmos DB 响应中的标头和状态代码,以防对 CosmosItem 执行创建、更新和删除操作。 如果设置为 false,则服务不会在响应中返回有效负载。 它不通过网络发送有效负载并在客户端上对其进行序列化,从而减少了网络和 CPU 负载。 此功能不会影响读取或写入操作的 RU 使用率。 默认情况下,此值为 null。 注意:此标志也存在于 上 CosmosClientBuilder,但如果在 上 CosmosItemRequestOptions指定,它将替代 中为此请求指定的 CosmosClientBuilder 值。

Parameters:

contentResponseOnWriteEnabled - 一个布尔值,指示此请求的响应中是否包含有效负载

Returns:

CosmosItemRequestOptions。

setCosmosEndToEndOperationLatencyPolicyConfig

public CosmosItemRequestOptions setCosmosEndToEndOperationLatencyPolicyConfig(CosmosEndToEndOperationLatencyPolicyConfig endToEndOperationLatencyPolicyConfig)

CosmosEndToEndOperationLatencyPolicyConfig设置要用于请求的 。 如果已在客户端上设置配置,则这将替代此请求的客户端级别配置

Parameters:

endToEndOperationLatencyPolicyConfig - CosmosEndToEndOperationLatencyPolicyConfig

Returns:

setDedicatedGatewayRequestOptions

public CosmosItemRequestOptions setDedicatedGatewayRequestOptions(DedicatedGatewayRequestOptions dedicatedGatewayRequestOptions)

设置专用网关请求选项

Parameters:

dedicatedGatewayRequestOptions - 专用网关请求选项

Returns:

CosmosItemRequestOptions

setDiagnosticsThresholds

public CosmosItemRequestOptions setDiagnosticsThresholds(CosmosDiagnosticsThresholds operationSpecificThresholds)

允许替代特定操作的诊断阈值。

Parameters:

operationSpecificThresholds - 此操作的诊断阈值替代

Returns:

CosmosItemRequestOptions。

setExcludedRegions

public CosmosItemRequestOptions setExcludedRegions(List excludeRegions)

要为请求/重试排除的区域列表。 示例“美国东部”或“美国东部,美国西部”这些区域将从首选区域列表中排除

Parameters:

excludeRegions - 区域列表

Returns:

setIfMatchETag

public CosmosItemRequestOptions setIfMatchETag(String ifMatchETag)

设置与 Azure Cosmos DB 服务中的请求关联的If-Match (ETag) 。

Parameters:

ifMatchETag - 与请求关联的 ifMatchETag。

Returns:

当前请求选项

setIfNoneMatchETag

public CosmosItemRequestOptions setIfNoneMatchETag(String ifNoneMatchETag)

设置与 Azure Cosmos DB 服务中的请求关联的 If-None-Match (ETag) 。

Parameters:

ifNoneMatchETag - 与请求关联的 ifNoneMatchETag。

Returns:

当前请求选项

setIndexingDirective

public CosmosItemRequestOptions setIndexingDirective(IndexingDirective indexingDirective)

设置索引指令 (索引,不索引等) 。

Parameters:

indexingDirective - 索引指令。

Returns:

CosmosItemRequestOptions。

setNonIdempotentWriteRetryPolicy

public CosmosItemRequestOptions setNonIdempotentWriteRetryPolicy(boolean nonIdempotentWriteRetriesEnabled, boolean useTrackingIdPropertyForCreateAndReplace)

为写入操作启用自动重试,即使 SDK 无法保证这些操作是幂等的。 这是对特定请求/操作的行为的替代 CosmosClientBuilder#setNonIdempotentWriteRetryPolicy(boolean, boolean) 。 注意:CosmosClientBuilder 上的设置将确定创建、替换、更新插入和删除操作的默认行为。 可以在请求选项中基于每个请求重写它。 对于默认 (修补操作,除非在请求选项中重写) 重试默认始终处于禁用状态。 - 创建:重试可能会导致 (更多) 409 冲突请求向应用程序显示,当重试尝试创建成功创建初始尝试的文档时。 启用 useTrackingIdPropertyForCreateAndReplace 时,可以避免重试导致的 409 冲突。 - 替换:当替换操作使用先决条件检查 (etag) ,并且重试尝试更新初始尝试成功更新的文档 (导致 etag 更改) 时,重试可能会导致向应用程序显示 (更多) 412-前置条件失败请求。 启用 useTrackingIdPropertyForCreateAndReplace 时,可以避免重试导致的 412 前置条件故障。 - 删除:重试可能会导致在重试删除操作且初始尝试成功时显示 (更多) 404-NotFound 请求。 理想情况下,仅当应用程序可以正常处理 404 - 未找到时,才应启用写入重试。 - 更新插入:重试可能会导致出现 200 (看起来文档是在最初尝试实际创建文档时更新的)因此在同一操作中逻辑上如此。 这只会影响具有 201 和 200 特殊大小写的应用程序(用于更新插入操作)。 修补程序:修补程序的重试可以,但不会始终是幂等的 - 它完全取决于正在执行的修补程序操作和使用前置条件筛选器。 在为修补程序启用写入重试之前,需要仔细检查并测试(即只能在请求选项上启用补丁的重试),将忽略任何 CosmosClient 范围配置。 通过 PK/事务批处理/Stroed 过程执行批量/删除:不支持自动重试。

Parameters:

nonIdempotentWriteRetriesEnabled - 一个标志,指示当无法保证幂等性时,SDK 是否应为操作启用自动重试的标志,因为上一次尝试已在网络上发送请求。
useTrackingIdPropertyForCreateAndReplace - 一个标志,指示写入操作是否可以使用 trackingId 系统属性“/_trackingId”来识别由于重试而导致的冲突和先决条件故障。 如果启用,则创建或替换的每个文档将具有一个附加的“/_trackingId”属性,其值将由 SDK 更新。 如果不希望 (添加此新 json 属性,例如,由于基于有效负载大小的 RU 增加,或导致文档) 超过最大有效负载大小上限,可以通过将此参数设置为 false 来禁用此系统属性的用法。 这意味着,由于重试,可能会有更高级别的 409/312 ,应用程序需要自行正常处理它们。

Returns:

CosmosItemRequestOptions

setPostTriggerInclude

public CosmosItemRequestOptions setPostTriggerInclude(List postTriggerInclude)

设置在操作后调用的触发器。

Parameters:

postTriggerInclude - 操作后要调用的触发器。

Returns:

CosmosItemRequestOptions。

setPreTriggerInclude

public CosmosItemRequestOptions setPreTriggerInclude(List preTriggerInclude)

设置在操作之前要调用的触发器。

Parameters:

preTriggerInclude - 在操作之前要调用的触发器。

Returns:

CosmosItemRequestOptions。

setSessionToken

public CosmosItemRequestOptions setSessionToken(String sessionToken)

设置用于会话一致性的令牌。

Parameters:

sessionToken - 会话令牌。

Returns:

CosmosItemRequestOptions。

setThresholdForDiagnosticsOnTracer

public CosmosItemRequestOptions setThresholdForDiagnosticsOnTracer(Duration thresholdForDiagnosticsOnTracer)

设置 thresholdForDiagnosticsOnTracer,如果 CRUD 操作的延迟大于此诊断将作为端到端 CRUD API 的跟踪器范围中的事件发送到打开遥测导出程序。 默认值为 100 毫秒。

Parameters:

thresholdForDiagnosticsOnTracer - 跟踪器上诊断的延迟阈值。

Returns:

CosmosItemRequestOptions

setThroughputControlGroupName

public void setThroughputControlGroupName(String throughputControlGroupName)

设置吞吐量控制组名称。

Parameters:

throughputControlGroupName - 吞吐量控制组名称。

适用于