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

ServiceBusError class

服务总线中发生的错误。

扩展

构造函数

ServiceBusError(MessagingError)
ServiceBusError(string, ServiceBusErrorCode)

属性

code

失败的原因。

  • GeneralError:异常是客户端库中出现常规错误的结果。
  • MessagingEntityNotFound:服务总线服务找不到服务总线资源。
  • MessageLockLost:消息上的锁丢失。 调用方应尝试再次接收和处理消息。
  • MessageNotFound:找不到请求的消息。
  • MessageSizeExceeded:消息大于传输允许的最大大小。
  • MessagingEntityAlreadyExists:同名实体存在于同一命名空间下。
  • MessagingEntityDisabled:消息传送实体已禁用。 使用门户再次启用实体。
  • QuotaExceeded:与 Azure 服务总线服务交互时,已超出应用于服务总线资源的配额。
  • ServiceBusy:Azure 服务总线服务报告它正忙于响应客户端请求来执行作。
  • ServiceTimeout:与 Azure 服务总线服务交互时作或其他请求超时。
  • ServiceCommunicationProblem:与 Azure 服务总线服务交互时遇到常规通信错误。
  • SessionCannotBeLocked:无法锁定请求的会话。
  • SessionLockLost:会话上的锁已过期。 调用方应再次请求会话。
  • UnauthorizedAccess“:用户无权访问实体。

继承属性

address

网络连接失败的地址。 仅当 MessagingError 被实例化为 Node.js SystemError时才存在。

errno

系统提供的错误号。 仅当 MessagingError 被实例化为 Node.js SystemError时才存在。

info

有关错误的额外详细信息。

message
name

错误名称。 默认值:“MessagingError”。

port

不可用的网络连接端口。 仅当 MessagingError 被实例化为 Node.js SystemError时才存在。

retryable

描述错误是否可重试。 默认值:true。

stack
stackTraceLimit

Error.stackTraceLimit 属性指定堆栈跟踪收集的堆栈帧数(无论是由 new Error().stack 还是 Error.captureStackTrace(obj)生成)。

默认值为 10 but can be set to any valid JavaScript number. 更改将影响在更改值 捕获的任何堆栈跟踪。

如果设置为非数字值或设置为负数,则堆栈跟踪将不会捕获任何帧。

syscall

触发错误的系统调用的名称。 仅当 MessagingError 被实例化为 Node.js SystemError时才存在。

继承的方法

captureStackTrace(object, Function)

在 上创建一个 .stack 属性,该属性在访问时返回一个字符串,该字符串 targetObject表示调用的代码 Error.captureStackTrace() 中的位置。

const myObject = {};
Error.captureStackTrace(myObject);
myObject.stack;  // Similar to `new Error().stack`

跟踪的第一行将以 为 ${myObject.name}: ${myObject.message}前缀。

optional constructorOpt 参数接受一个函数。 如果给定,则 上面的 constructorOpt所有帧 ,包括 constructorOpt,将从生成的堆栈跟踪中省略。

constructorOpt 参数可用于向用户隐藏错误生成的实现详细信息。 例如:

function a() {
  b();
}

function b() {
  c();
}

function c() {
  // Create an error without stack trace to avoid calculating the stack trace twice.
  const { stackTraceLimit } = Error;
  Error.stackTraceLimit = 0;
  const error = new Error();
  Error.stackTraceLimit = stackTraceLimit;

  // Capture the stack trace above function b
  Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace
  throw error;
}

a();
prepareStackTrace(Error, CallSite[])

请参阅 https://v8.dev/docs/stack-trace-api#customizing-stack-traces

构造函数详细信息

ServiceBusError(MessagingError)

new ServiceBusError(messagingError: MessagingError)

参数

messagingError
MessagingError

将属性复制到 ServiceBusError 的错误。

ServiceBusError(string, ServiceBusErrorCode)

new ServiceBusError(message: string, code: ServiceBusErrorCode)

参数

message

string

提供有关错误的详细信息的错误消息。

code
ServiceBusErrorCode

失败的原因。

属性详细信息

code

失败的原因。

  • GeneralError:异常是客户端库中出现常规错误的结果。
  • MessagingEntityNotFound:服务总线服务找不到服务总线资源。
  • MessageLockLost:消息上的锁丢失。 调用方应尝试再次接收和处理消息。
  • MessageNotFound:找不到请求的消息。
  • MessageSizeExceeded:消息大于传输允许的最大大小。
  • MessagingEntityAlreadyExists:同名实体存在于同一命名空间下。
  • MessagingEntityDisabled:消息传送实体已禁用。 使用门户再次启用实体。
  • QuotaExceeded:与 Azure 服务总线服务交互时,已超出应用于服务总线资源的配额。
  • ServiceBusy:Azure 服务总线服务报告它正忙于响应客户端请求来执行作。
  • ServiceTimeout:与 Azure 服务总线服务交互时作或其他请求超时。
  • ServiceCommunicationProblem:与 Azure 服务总线服务交互时遇到常规通信错误。
  • SessionCannotBeLocked:无法锁定请求的会话。
  • SessionLockLost:会话上的锁已过期。 调用方应再次请求会话。
  • UnauthorizedAccess“:用户无权访问实体。
code: ServiceBusErrorCode

属性值

继承属性详细信息

address

网络连接失败的地址。 仅当 MessagingError 被实例化为 Node.js SystemError时才存在。

address?: string

属性值

string

继承自MessagingError.address

errno

系统提供的错误号。 仅当 MessagingError 被实例化为 Node.js SystemError时才存在。

errno?: string | number

属性值

string | number

继承自 MessagingError.errno

info

有关错误的额外详细信息。

info?: any

属性值

any

继承自 MessagingError.info

message

message: string

属性值

string

继承自 MessagingError.message

name

错误名称。 默认值:“MessagingError”。

name: string

属性值

string

继承自 MessagingError.name

port

不可用的网络连接端口。 仅当 MessagingError 被实例化为 Node.js SystemError时才存在。

port?: number

属性值

number

继承自 MessagingError.port

retryable

描述错误是否可重试。 默认值:true。

retryable: boolean

属性值

boolean

继承自 MessagingError.retryable

stack

stack?: string

属性值

string

继承自 MessagingError.stack

stackTraceLimit

Error.stackTraceLimit 属性指定堆栈跟踪收集的堆栈帧数(无论是由 new Error().stack 还是 Error.captureStackTrace(obj)生成)。

默认值为 10 but can be set to any valid JavaScript number. 更改将影响在更改值 捕获的任何堆栈跟踪。

如果设置为非数字值或设置为负数,则堆栈跟踪将不会捕获任何帧。

static stackTraceLimit: number

属性值

number

继承自 MessagingError.stackTraceLimit

syscall

触发错误的系统调用的名称。 仅当 MessagingError 被实例化为 Node.js SystemError时才存在。

syscall?: string

属性值

string

继承自 MessagingError.syscall

继承的方法详细信息

captureStackTrace(object, Function)

在 上创建一个 .stack 属性,该属性在访问时返回一个字符串,该字符串 targetObject表示调用的代码 Error.captureStackTrace() 中的位置。

const myObject = {};
Error.captureStackTrace(myObject);
myObject.stack;  // Similar to `new Error().stack`

跟踪的第一行将以 为 ${myObject.name}: ${myObject.message}前缀。

optional constructorOpt 参数接受一个函数。 如果给定,则 上面的 constructorOpt所有帧 ,包括 constructorOpt,将从生成的堆栈跟踪中省略。

constructorOpt 参数可用于向用户隐藏错误生成的实现详细信息。 例如:

function a() {
  b();
}

function b() {
  c();
}

function c() {
  // Create an error without stack trace to avoid calculating the stack trace twice.
  const { stackTraceLimit } = Error;
  Error.stackTraceLimit = 0;
  const error = new Error();
  Error.stackTraceLimit = stackTraceLimit;

  // Capture the stack trace above function b
  Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace
  throw error;
}

a();
static function captureStackTrace(targetObject: object, constructorOpt?: Function)

参数

targetObject

object

constructorOpt

Function

继承自 MessagingError.captureStackTrace

prepareStackTrace(Error, CallSite[])

请参阅 https://v8.dev/docs/stack-trace-api#customizing-stack-traces

static function prepareStackTrace(err: Error, stackTraces: CallSite[]): any

参数

err

Error

stackTraces

CallSite[]

返回

any

继承自 MessagingError.prepareStackTrace