@azure/core-amqp package
Классы
| CbsClient |
Описывает клиент EventHub/ServiceBus Cbs, который взаимодействует с конечной точкой $cbs через подключение AMQP. |
| MessagingError |
Описывает базовый класс для ошибки обмена сообщениями. |
| RequestResponseLink |
Описывает ссылку amqp request(sender)-response(receiver), созданную через сеанс amqp. |
Интерфейсы
| AcquireLockProperties |
Описывает свойства, которые необходимо предоставить при получении блокировки. |
| CancellableAsyncLock |
CancellableAsyncLock предоставляет механизм принудительного выполнения задач с помощью одного и того же ключа, выполняемого последовательно. Ожидающие задачи можно вручную отменить с помощью прерывания или автоматически отменить, достигнув заданного значения времени ожидания. |
| CbsResponse |
Описывает ответ CBS. |
| ConnectionConfigOptions |
Описывает параметры, которые можно предоставить при создании конфигурации подключения. |
| ConnectionProperties |
Определяет свойства, которые необходимо задать при установке подключения AMQP. |
| CreateConnectionContextBaseParameters |
Описывает параметры, которые можно предоставить для создания контекста базового подключения. |
| NetworkSystemError |
Описывает поля в Node.js SystemError. Поля Omits, которые не связаны с сетевыми вызовами (например, вызовы файловой системы). См. https://nodejs.org/dist/latest-v12.x/docs/api/errors.html#errors_class_systemerror |
| RetryConfig |
Описывает параметры, которые необходимо настроить для операции повтора. |
| RetryOptions |
Параметры политики повторных попыток, определяющие режим, количество повторных попыток, интервал повторных попыток и т. д. |
| SendRequestOptions |
Описывает параметры, которые можно указать при отправке запроса. |
| WebSocketOptions |
Параметры настройки канала подключения AMQP через веб-сокеты. |
Псевдонимы типа
| ParsedOutput |
Определяет объект с возможными свойствами, определенными в T. |
Перечисления
| ConditionErrorNameMapper |
Сопоставляет условия ошибки amqp с именами ошибок. |
| ErrorNameConditionMapper |
Сопоставляет имена ошибок с условиями ошибки amqp. |
| RetryMode |
Описание типа режима повтора |
| RetryOperationType |
Описывает тип операции повтора. |
| SystemErrorConditionMapper |
Сопоставляет некоторые systemErrors с условиями ошибки amqp |
| TokenType |
Описывает тип поддерживаемых маркеров. |
Функции
| delay<T>(number, Abort |
Оболочка для setTimeout, разрешающая обещание после миллисекунда. |
| is |
Определяет, является ли ошибка в MessagingError. |
| is |
Проверяет, является ли указанная ошибка node.js SystemError. |
| parse |
Анализирует строку подключения и возвращает объект типа T. Строки подключения имеют следующий синтаксис: ConnectionString ::= |
| retry<T>(Retry |
Каждая операция выполняется по крайней мере один раз. Дополнительные попытки выполняются, если предыдущая попытка завершилась ошибкой повторной попытки. Количество дополнительных попыток регулируется свойством Если для параметра Если для параметра |
| translate(unknown) | Преобразует ошибку AMQP, полученную на уровне протокола или SystemError, в MessagingError. Все остальные ошибки возвращаются неуправляемые. |
Переменные
| Amqp |
Описывает операции, которые могут быть выполнены на AmqpAnnotatedMessage (или для получения) его. |
| Amqp |
Описывает операции, которые можно выполнить над заголовком сообщения. |
| Amqp |
Описывает операции, которые можно выполнять над свойствами сообщения amqp. |
| Connection |
Описывает модуль ConnectionConfig |
| Connection |
|
| Constants | |
| default |
Отменяемый экземпляр асинхронной блокировки. |
| logger |
@azure/logger Конфигурация для этого пакета.
Это будет выводить логи с использованием префикса |
| retryable |
Предоставляет список повторяемых ошибок AMQP. "InternalServerError", "ServerBusyError", "ServiceUnavailableError", "OperationCancelledError", "SenderBusyError", "SenderNotReadyError", "MessagingError", "DetachForcedError", "ConnectionForcedError", "TransferLimitExceededError" |
Сведения о функции
delay<T>(number, AbortSignalLike, string, T)
Оболочка для setTimeout, разрешающая обещание после миллисекунда.
function delay<T>(delayInMs: number, abortSignal?: AbortSignalLike, abortErrorMsg?: string, value?: T): Promise<T | void>
Параметры
- delayInMs
-
number
Число отложенных миллисекундах.
- abortSignal
- AbortSignalLike
ПрерываниеSignal, связанное с содержащей операцией.
- abortErrorMsg
-
string
Сообщение об ошибке прерывания, связанное с содержащей операцией.
- value
-
T
Значение, которое необходимо устранить после истечения времени ожидания миллисекунда.
Возвращаемое значение
Promise<T | void>
- Разрешенное обещание
isMessagingError(MessagingError | Error)
Определяет, является ли ошибка в MessagingError.
function isMessagingError(error: MessagingError | Error): error
Параметры
- error
-
MessagingError | Error
Ошибка, которая может быть ошибкой или messagingError.
Возвращаемое значение
error
isSystemError(unknown)
Проверяет, является ли указанная ошибка node.js SystemError.
function isSystemError(err: unknown): err
Параметры
- err
-
unknown
Объект, который может содержать сведения об ошибке.
Возвращаемое значение
err
parseConnectionString<T>(string)
Анализирует строку подключения и возвращает объект типа T.
Строки подключения имеют следующий синтаксис:
ConnectionString ::= Part { ";" Part } [ ";" ] [ WhiteSpace ] часть ::= [ PartLiteral [ "=" PartLiteral ] PartLiteral ::= [ WhiteSpace ] Литерал [ Пробелы ] Литерал ::= ? любая последовательность символов, кроме ; or = или WhiteSpace ?
Пробелы ::= ? все символы пробелов, включая \r и \n?
function parseConnectionString<T>(connectionString: string): ParsedOutput<T>
Параметры
- connectionString
-
string
Строка подключения для синтаксического анализа.
Возвращаемое значение
ParsedOutput<T>
ParsedOutput<T>.
retry<T>(RetryConfig<T>)
Каждая операция выполняется по крайней мере один раз. Дополнительные попытки выполняются, если предыдущая попытка завершилась ошибкой повторной попытки. Количество дополнительных попыток регулируется свойством maxRetries, предоставленным в аргументе RetryConfig.
Если для параметра mode задано значение Fixed, то повторные попытки выполняются для заданного количества раз с фиксированной задержкой между каждой повторными попытками каждый раз.
Если для параметра mode задано значение Exponential, то задержка между повторными попытками корректируется, чтобы увеличить экспоненциально при каждой попытке использования коэффициента обратного отключения power 2.
function retry<T>(config: RetryConfig<T>): Promise<T>
Параметры
- config
-
RetryConfig<T>
Параметры для настройки операции повтора
Возвращаемое значение
Promise<T>
Обещание<Т>.
translate(unknown)
Преобразует ошибку AMQP, полученную на уровне протокола или SystemError, в MessagingError. Все остальные ошибки возвращаются неуправляемые.
function translate(err: unknown): MessagingError | Error
Параметры
- err
-
unknown
Ошибка amqp, полученная.
Возвращаемое значение
MessagingError | Error
Объект MessagingError.
Variable Details
AmqpAnnotatedMessage
Описывает операции, которые могут быть выполнены на AmqpAnnotatedMessage (или для получения) его.
AmqpAnnotatedMessage: { fromRheaMessage(msg: Message) => AmqpAnnotatedMessage, toRheaMessage(msg: AmqpAnnotatedMessage) => Message }
Тип
{ fromRheaMessage(msg: Message) => AmqpAnnotatedMessage, toRheaMessage(msg: AmqpAnnotatedMessage) => Message }
AmqpMessageHeader
Описывает операции, которые можно выполнить над заголовком сообщения.
AmqpMessageHeader: { fromRheaMessageHeader(props: MessageHeader) => AmqpMessageHeader, toRheaMessageHeader(props: AmqpMessageHeader) => MessageHeader }
Тип
{ fromRheaMessageHeader(props: MessageHeader) => AmqpMessageHeader, toRheaMessageHeader(props: AmqpMessageHeader) => MessageHeader }
AmqpMessageProperties
Описывает операции, которые можно выполнять над свойствами сообщения amqp.
AmqpMessageProperties: { fromRheaMessageProperties(props: MessageProperties) => AmqpMessageProperties, toRheaMessageProperties(props: AmqpMessageProperties) => MessageProperties }
Тип
{ fromRheaMessageProperties(props: MessageProperties) => AmqpMessageProperties, toRheaMessageProperties(props: AmqpMessageProperties) => MessageProperties }
ConnectionConfig
Описывает модуль ConnectionConfig
ConnectionConfig: { create(connectionString: string, path?: string) => ConnectionConfig, validate(config: ConnectionConfig, options?: ConnectionConfigOptions) => void }
Тип
{ create(connectionString: string, path?: string) => ConnectionConfig, validate(config: ConnectionConfig, options?: ConnectionConfigOptions) => void }
ConnectionContextBase
ConnectionContextBase: { create(parameters: CreateConnectionContextBaseParameters) => ConnectionContextBase }
Тип
{ create(parameters: CreateConnectionContextBaseParameters) => ConnectionContextBase }
Constants
Constants: { TCP: "tcp", TLS: "tls", aadEventHubsAudience: "https://eventhubs.azure.net/", aadEventHubsScope: "https://eventhubs.azure.net//.default", aadServiceBusAudience: "https://servicebus.azure.net/", aadServiceBusScope: "https://servicebus.azure.net//.default", aadTokenValidityMarginInMs: 5000, associatedLinkName: "associated-link-name", attachEpoch: "com.microsoft:epoch", cbsEndpoint: "$cbs", cbsReplyTo: "cbs", connectionError: "connection_error", connectionReconnectDelay: 300, dateTimeOffset: "com.microsoft:datetime-offset", deadLetterDescription: "deadletter-description", deadLetterName: "com.microsoft:dead-letter", deadLetterReason: "deadletter-reason", deadLetterSource: "x-opt-deadletter-source", defaultConnectionIdleTimeoutInMs: 60000, defaultConsumerGroup: "$default", defaultDelayBetweenOperationRetriesInMs: 30000, defaultMaxDelayForExponentialRetryInMs: 90000, defaultMaxRetries: 3, defaultMaxRetriesForConnection: 150, defaultOperationTimeoutInMs: 60000, defaultPrefetchCount: 1000, descriptorCodes: { correlationFilterList: 83483426825, falseFilterList: 83483426824, ruleDescriptionList: 1335734829060, sqlFilterList: 83483426822, sqlRuleActionList: 1335734829062, trueFilterList: 83483426823 }, dispositionStatus: "disposition-status", enableReceiverRuntimeMetricName: "com.microsoft:enable-receiver-runtime-metric", enqueueSequenceNumber: "x-opt-enqueue-sequence-number", enqueuedTime: "x-opt-enqueued-time", enqueuedTimeAnnotation: "amqp.annotation.x-opt-enqueued-time", enqueuedTimeUtc: "enqueued-time-utc", ensureContainerAndBlob: "ensureContainerAndBlob", error: "error", errorCondition: "error-condition", establishConnection: "establishConnection", eventHub: "eventhub", fromSequenceNumber: "from-sequence-number", guidSize: 16, lockTokenMapKey: "lock-token", lockTokens: "lock-tokens", lockedUntil: "x-opt-locked-until", management: "$management", managementRequestKey: "managementRequest", maxAbsoluteExpiryTime: number, maxDeadLetterReasonLength: 4096, maxDurationValue: 922337203685477, maxMessageIdLength: 128, maxPartitionKeyLength: 128, maxSessionIdLength: 128, maxUint32Value: 4294967295, maxUserAgentLength: 512, maximumSqlFilterStatementLength: 1024, maximumSqlRuleActionStatementLength: 1024, message: "message", messageCount: "message-count", messageIdMapKey: "message-id", messageState: "x-opt-message-state", minDurationValue: -922337203685477, negotiateCbsKey: "negotiateCbs", negotiateClaim: "negotiateClaim", offset: "x-opt-offset", offsetAnnotation: "amqp.annotation.x-opt-offset", operationPutToken: "put-token", operations: { addRule: "com.microsoft:add-rule", cancelScheduledMessage: "com.microsoft:cancel-scheduled-message", deleteMessages: "com.microsoft:batch-delete-messages", enumerateRules: "com.microsoft:enumerate-rules", enumerateSessions: "com.microsoft:get-message-sessions", getSessionState: "com.microsoft:get-session-state", peekMessage: "com.microsoft:peek-message", putToken: "put-token", read: "READ", receiveBySequenceNumber: "com.microsoft:receive-by-sequence-number", removeRule: "com.microsoft:remove-rule", renewLock: "com.microsoft:renew-lock", renewSessionLock: "com.microsoft:renew-session-lock", scheduleMessage: "com.microsoft:schedule-message", setSessionState: "com.microsoft:set-session-state", updateDisposition: "com.microsoft:update-disposition" }, partition: "partition", partitionId: "partitionId", partitionIdName: "x-opt-partition-id", partitionKey: "x-opt-partition-key", pathDelimiter: "/", propertiesToModify: "properties-to-modify", publisher: "x-opt-publisher-name", readOperation: "READ", receiverError: "receiver_error", receiverIdentifierName: "com.microsoft:receiver-name", receiverSettleMode: "receiver-settle-mode", reconnectLimit: 100, ruleNameMaximumLength: 50, scheduledEnqueueTime: "x-opt-scheduled-enqueue-time", senderError: "sender_error", sequenceNumber: "x-opt-sequence-number", sequenceNumberAnnotation: "amqp.annotation.x-opt-sequence-number", sequenceNumberMapKey: "sequence-number", sequenceNumbers: "sequence-numbers", serverTimeout: "com.microsoft:server-timeout", sessionError: "session_error", sessionFilterName: "com.microsoft:session-filter", sessionIdMapKey: "session-id", statusCode: "status-code", statusDescription: "status-description", timespan: "com.microsoft:timespan", trackingId: "com.microsoft:tracking-id", uri: "com.microsoft:uri", vendorString: "com.microsoft", viaPartitionKey: "x-opt-via-partition-key" }
Тип
{ TCP: "tcp", TLS: "tls", aadEventHubsAudience: "https://eventhubs.azure.net/", aadEventHubsScope: "https://eventhubs.azure.net//.default", aadServiceBusAudience: "https://servicebus.azure.net/", aadServiceBusScope: "https://servicebus.azure.net//.default", aadTokenValidityMarginInMs: 5000, associatedLinkName: "associated-link-name", attachEpoch: "com.microsoft:epoch", cbsEndpoint: "$cbs", cbsReplyTo: "cbs", connectionError: "connection_error", connectionReconnectDelay: 300, dateTimeOffset: "com.microsoft:datetime-offset", deadLetterDescription: "deadletter-description", deadLetterName: "com.microsoft:dead-letter", deadLetterReason: "deadletter-reason", deadLetterSource: "x-opt-deadletter-source", defaultConnectionIdleTimeoutInMs: 60000, defaultConsumerGroup: "$default", defaultDelayBetweenOperationRetriesInMs: 30000, defaultMaxDelayForExponentialRetryInMs: 90000, defaultMaxRetries: 3, defaultMaxRetriesForConnection: 150, defaultOperationTimeoutInMs: 60000, defaultPrefetchCount: 1000, descriptorCodes: { correlationFilterList: 83483426825, falseFilterList: 83483426824, ruleDescriptionList: 1335734829060, sqlFilterList: 83483426822, sqlRuleActionList: 1335734829062, trueFilterList: 83483426823 }, dispositionStatus: "disposition-status", enableReceiverRuntimeMetricName: "com.microsoft:enable-receiver-runtime-metric", enqueueSequenceNumber: "x-opt-enqueue-sequence-number", enqueuedTime: "x-opt-enqueued-time", enqueuedTimeAnnotation: "amqp.annotation.x-opt-enqueued-time", enqueuedTimeUtc: "enqueued-time-utc", ensureContainerAndBlob: "ensureContainerAndBlob", error: "error", errorCondition: "error-condition", establishConnection: "establishConnection", eventHub: "eventhub", fromSequenceNumber: "from-sequence-number", guidSize: 16, lockTokenMapKey: "lock-token", lockTokens: "lock-tokens", lockedUntil: "x-opt-locked-until", management: "$management", managementRequestKey: "managementRequest", maxAbsoluteExpiryTime: number, maxDeadLetterReasonLength: 4096, maxDurationValue: 922337203685477, maxMessageIdLength: 128, maxPartitionKeyLength: 128, maxSessionIdLength: 128, maxUint32Value: 4294967295, maxUserAgentLength: 512, maximumSqlFilterStatementLength: 1024, maximumSqlRuleActionStatementLength: 1024, message: "message", messageCount: "message-count", messageIdMapKey: "message-id", messageState: "x-opt-message-state", minDurationValue: -922337203685477, negotiateCbsKey: "negotiateCbs", negotiateClaim: "negotiateClaim", offset: "x-opt-offset", offsetAnnotation: "amqp.annotation.x-opt-offset", operationPutToken: "put-token", operations: { addRule: "com.microsoft:add-rule", cancelScheduledMessage: "com.microsoft:cancel-scheduled-message", deleteMessages: "com.microsoft:batch-delete-messages", enumerateRules: "com.microsoft:enumerate-rules", enumerateSessions: "com.microsoft:get-message-sessions", getSessionState: "com.microsoft:get-session-state", peekMessage: "com.microsoft:peek-message", putToken: "put-token", read: "READ", receiveBySequenceNumber: "com.microsoft:receive-by-sequence-number", removeRule: "com.microsoft:remove-rule", renewLock: "com.microsoft:renew-lock", renewSessionLock: "com.microsoft:renew-session-lock", scheduleMessage: "com.microsoft:schedule-message", setSessionState: "com.microsoft:set-session-state", updateDisposition: "com.microsoft:update-disposition" }, partition: "partition", partitionId: "partitionId", partitionIdName: "x-opt-partition-id", partitionKey: "x-opt-partition-key", pathDelimiter: "/", propertiesToModify: "properties-to-modify", publisher: "x-opt-publisher-name", readOperation: "READ", receiverError: "receiver_error", receiverIdentifierName: "com.microsoft:receiver-name", receiverSettleMode: "receiver-settle-mode", reconnectLimit: 100, ruleNameMaximumLength: 50, scheduledEnqueueTime: "x-opt-scheduled-enqueue-time", senderError: "sender_error", sequenceNumber: "x-opt-sequence-number", sequenceNumberAnnotation: "amqp.annotation.x-opt-sequence-number", sequenceNumberMapKey: "sequence-number", sequenceNumbers: "sequence-numbers", serverTimeout: "com.microsoft:server-timeout", sessionError: "session_error", sessionFilterName: "com.microsoft:session-filter", sessionIdMapKey: "session-id", statusCode: "status-code", statusDescription: "status-description", timespan: "com.microsoft:timespan", trackingId: "com.microsoft:tracking-id", uri: "com.microsoft:uri", vendorString: "com.microsoft", viaPartitionKey: "x-opt-via-partition-key" }
defaultCancellableLock
Отменяемый экземпляр асинхронной блокировки.
defaultCancellableLock: CancellableAsyncLock
Тип
logger
@azure/logger Конфигурация для этого пакета.
Это будет выводить логи с использованием префикса azure:event-hubs пространства имён.
logger: AzureLogger
Тип
retryableErrors
Предоставляет список повторяемых ошибок AMQP. "InternalServerError", "ServerBusyError", "ServiceUnavailableError", "OperationCancelledError", "SenderBusyError", "SenderNotReadyError", "MessagingError", "DetachForcedError", "ConnectionForcedError", "TransferLimitExceededError"
retryableErrors: string[]
Тип
string[]