服务总线资源管理器异常

本文列出了使用 Azure 资源管理器通过模板或直接调用来与 Azure 服务总线进行交互时生成的异常。

重要

本文档经常更新。 请回头查看是否有更新。

下面是通过 Azure 资源管理器显示的各种异常/错误。

错误:错误的请求

“错误的请求”表示资源管理器收到的请求未通过验证。

错误代码 错误子代码 错误消息 说明 建议
错误的请求 40000 子代码=40000。 创建队列时无法设置属性“<属性名称>”,因为命名空间“<命名空间名称>”使用的是“基本”层。 此操作仅在“标准”层或“高级”层中受支持。 在 Azure 服务总线基本层上,无法设置或更新以下属性 -
  • RequiresDuplicateDetection
  • AutoDeleteOnIdle
  • RequiresSession
  • DefaultMessageTimeToLive
  • DuplicateDetectionHistoryTimeWindow
  • EnableExpress(高级版中也不支持)
  • ForwardTo
  • 主题
若要使用此功能,请考虑从“基本”层升级到“标准”层或“高级”层。
错误的请求 40000 子代码=40000。 无法更改现有队列(或主题)的“requiresDuplicateDetection”属性值。 只能在创建实体时启用/禁用重复检测。 创建后无法更改重复检测配置参数。 若要对先前创建的队列/主题启用重复检测,可以创建启用了重复检测的新队列/主题,然后从原始队列转发到新队列/主题。
错误的请求 40000 子代码=40000。 指定的值 16384 无效。 属性“MaxSizeInMegabytes”必须是以下值之一:1024;2048;3072;4096;5120。 MaxSizeInMegabytes 值无效。 确保 MaxSizeInMegabytes 是以下值之一:1024、2048、3072、4096、5120。
错误的请求 40000 子代码=40000。 无法更改队列/主题的分区。 无法更改实体的分区。 创建一个新实体(队列或主题)并启用分区。
错误的请求 命名空间“<命名空间名称>”不存在。 Azure 订阅中不存在该命名空间。 若要解决此错误:
  • 确保 Azure 订阅正确。
  • 确保该命名空间存在。
  • 验证命名空间名称是否正确(无拼写错误或空字符串)。
错误的请求 40000 子代码=40000。 提供的锁定时间超出了允许的最大值(5 分钟)。 消息的可锁定时间必须介于 1 分钟(最小值)和 5 分钟(最大值)之间。 确保提供的锁定时间介于 1 分钟和 5 分钟之间。
错误的请求 40000 子代码=40000。 不能同时启用 DelayedPersistence 和 RequiresDuplicateDetection 属性。 启用了重复检测的实体必须是持久性的,因此持久性不能延迟。 详细了解重复检测
错误的请求 40000 子代码=40000。 无法更改现有队列的 RequiresSession 属性值。 应在创建实体时启用会话支持。 创建后无法对现有实体(队列或订阅)启用/禁用会话 删除再重新创建启用了“RequiresSession”属性的新队列(或订阅)。
错误的请求 40000 子代码=40000。 “URI_PATH”包含服务总线不允许的字符。 实体段只能包含字母、数字、句点(.)、连字符(-) 和下划线(_)。 实体段只能包含字母、数字、句点(.)、连字符(-) 和下划线(_)。 任何其他字符都会导致请求失败。 确保 URI 路径中不包含任何无效字符。
错误的请求 40000 子代码=40000。 请求错误。 若要了解更多信息,请访问 https://aka.ms/sbResourceMgrExceptions。 TrackingId:00000000-0000-0000-0000-00000000000000_000, SystemTracker:contososbusnamesapce.servicebus.chinacloudapi.cn:myqueue, Timestamp:yyyy-mm-ddThh:mm:ss 尝试在非高级层命名空间中创建队列,并将值设置为属性 maxMessageSizeInKilobytes 时,会发生此错误。 只能为高级命名空间中的队列设置此属性。
错误的请求 40300 子代码=40300。 已达到或超过 EnablePartioning == true 类型的资源数上限。 每个命名空间的分区实体数有限制。 请参阅配额和限制
错误的请求 40400 子代码=40400。 自动转发目标实体不存在。 自动转发目标实体的目标不存在。 在创建源之前,目标实体(队列或主题)必须存在。 在创建目标实体后重试

错误代码:429

与在 HTTP 中一样,“错误代码 429”指示“请求过多”。 这意味着,由于针对特定资源(命名空间)的请求过多(或由于操作冲突),导致该资源受到限制。

错误代码 错误子代码 错误消息 说明 建议
429 50004 子代码=50004。 由于命名空间 <你的命名空间> 正受到限制,因此已终止请求。 当传入请求数超过资源限制时,会出现此错误状况。 等待几秒钟,然后重试。

详细了解配额Azure 资源管理器请求限制
429 40901 子代码=40901。 另一个有冲突的操作正在进行。 针对同一资源/实体的另一个有冲突操作正在进行 等待当前正在进行的操作完成,然后重试。
429 40900 子代码=40900。 冲突。 在资源的当前状态下不允许所请求的操作。 同时发出多个请求来对同一实体(队列、主题、订阅或规则)执行操作时,可能会发生这种状况。 等待几秒钟,然后重试
429 40901 对实体“<实体名称>”的请求与另一个请求相冲突 针对同一资源/实体的另一个有冲突操作正在进行 等待前一个操作完成,然后重试
429 40901 针对实体“<实体名称>”的另一个更新请求正在进行。 针对同一资源/实体的另一个有冲突操作正在进行 等待前一个操作完成,然后重试
429 发生资源冲突。 可能正在进行另一个有冲突的操作。 如果此操作是针对失败的操作进行的重试,则后台清理仍处于挂起状态。 请稍后再试。 如果同一实体存在挂起的操作,可能会出现此状况。 等待前一个操作完成,然后重试。

错误代码:未找到

此类错误表示找不到资源。

错误代码 错误子代码 错误消息 说明 建议
未找到 找不到实体“<实体名称>”。 找不到要对其运行该操作的实体。 请检查该实体是否存在,然后重试该操作。
未找到 找不到该加密提供程序。 操作不存在。 尝试执行的操作不存在。 请检查操作,然后重试。
未找到 传入请求未识别为命名空间策略放置请求。 传入请求正文为空,因此无法作为放置请求执行。 检查请求正文,确保它不为空。
未找到 找不到消息实体“<实体名称>”。 找不到你尝试对其执行操作的实体。 检查该实体是否存在,然后重试该操作。

错误代码:内部服务器错误

此类错误表示发生了内部服务器错误

错误代码 错误子代码 错误消息 说明 建议
内部服务器错误 50000 子代码=50000。 内部服务器错误 可能由于各种原因而发生。 部分症状为 -
  • 客户端请求/正文损坏并导致错误。
  • 客户端请求因服务中出现处理问题而超时。
若要解决此错误:
  • 确保请求参数不为 NULL,也不存在格式错误。
  • 重试请求。

错误代码:未授权

此类错误表示缺少授权来运行命令。

错误代码 错误子代码 错误消息 说明 建议
未授权 针对辅助命名空间的操作无效。 辅助命名空间是只读的。 针对设置为只读命名空间的辅助命名空间执行了操作。 请针对主要命名空间重试该命令。 详细了解辅助命名空间
未授权 MissingToken:找不到授权标头。 当授权标头包含空值或不正确的值时,将发生此错误。 确保授权标头中提到的令牌值正确且不为空。