Bagikan melalui


@azure/core-amqp package

Kelas

CbsClient

Menjelaskan klien EventHub/ServiceBus Cbs yang berbicara dengan titik akhir $cbs melalui koneksi AMQP.

MessagingError

Menjelaskan kelas dasar untuk Kesalahan Olahpesan.

RequestResponseLink

Menjelaskan tautan permintaan amqp(pengirim)-respons(penerima) yang dibuat melalui sesi amqp.

Antarmuka

AcquireLockProperties

Menjelaskan properti yang harus disediakan saat memperoleh kunci.

CancellableAsyncLock

CancellableAsyncLock menyediakan mekanisme untuk memaksa tugas menggunakan 'kunci' yang sama untuk dijalankan secara serial.

Tugas yang tertunda dapat dibatalkan secara manual melalui abortSignal atau dibatalkan secara otomatis dengan mencapai nilai batas waktu yang disediakan.

CbsResponse

Menjelaskan Respons CBS.

ConnectionConfigOptions

Menjelaskan opsi yang dapat disediakan saat membuat konfigurasi koneksi.

ConnectionProperties

Menentukan properti yang perlu diatur saat membuat koneksi AMQP.

CreateConnectionContextBaseParameters

Menjelaskan parameter yang dapat disediakan untuk membuat konteks koneksi dasar.

NetworkSystemError

Menjelaskan bidang pada systemError Node.js. Menghilangkan bidang yang tidak terkait dengan panggilan jaringan (misalnya panggilan sistem file). Lihat https://nodejs.org/dist/latest-v12.x/docs/api/errors.html#errors_class_systemerror

RetryConfig

Menjelaskan parameter yang perlu dikonfigurasi untuk operasi coba lagi.

RetryOptions

Coba lagi opsi kebijakan yang menentukan mode, jumlah percobaan ulang, interval coba lagi, dll.

SendRequestOptions

Menjelaskan opsi yang dapat ditentukan saat mengirim permintaan.

WebSocketOptions

Opsi untuk mengonfigurasi saluran koneksi AMQP melalui Soket Web.

Alias Jenis

ParsedOutput

Menentukan objek dengan properti yang mungkin ditentukan dalam T.

Enum

ConditionErrorNameMapper

Memetakan kondisi kesalahan amqp ke Nama kesalahan.

ErrorNameConditionMapper

Memetakan Nama kesalahan ke kondisi kesalahan amqp.

RetryMode

Menjelaskan jenis Mode Coba Lagi

RetryOperationType

Menjelaskan jenis operasi coba lagi.

SystemErrorConditionMapper

Memetakan beberapa SystemErrors ke kondisi kesalahan amqp

TokenType

Menjelaskan jenis token yang didukung.

Fungsi

delay<T>(number, AbortSignalLike, string, T)

Pembungkus untuk setTimeout yang menyelesaikan janji setelah t milidetik.

isMessagingError(MessagingError | Error)

Menentukan apakah kesalahan adalah MessagingError.

isSystemError(unknown)

Memeriksa apakah kesalahan yang diberikan adalah node.js SystemError.

parseConnectionString<T>(string)

Mengurai string koneksi dan mengembalikan objek jenis T.

String koneksi memiliki sintaks berikut:

ConnectionString ::= Part { ";" Part } [ ";" ] [ WhiteSpace ] Bagian ::= [ PartLiteral [ "=" PartLiteral ] ] PartLiteral ::= [ WhiteSpace ] Literal [ WhiteSpace ] Literal ::= ? urutan karakter apa pun kecuali ; atau = atau WhiteSpace ? Spasi Putih ::= ? semua karakter spasi putih termasuk \r dan \n ?

retry<T>(RetryConfig<T>)

Setiap operasi dicoba setidaknya sekali. Upaya tambahan dilakukan jika upaya sebelumnya gagal dengan kesalahan yang dapat dicoba kembali. Jumlah upaya tambahan diatur oleh properti maxRetries yang disediakan pada argumen RetryConfig.

Jika opsi mode diatur ke Fixed, maka percobaan ulang dilakukan pada operasi yang diberikan untuk beberapa kali tertentu, dengan penundaan tetap di antara setiap percobaan ulang setiap kali.

Jika opsi mode diatur ke Exponential, maka penundaan antara percobaan ulang disesuaikan untuk meningkatkan secara eksponensial dengan setiap upaya menggunakan faktor back-off daya 2.

translate(unknown)

Menerjemahkan kesalahan AMQP yang diterima pada lapisan protokol atau SystemError ke dalam MessagingError. Semua kesalahan lainnya dikembalikan tanpa diubah.

Variabel

AmqpAnnotatedMessage

Menjelaskan operasi yang dapat dilakukan pada(atau untuk mendapatkan) AmqpAnnotatedMessage.

AmqpMessageHeader

Menjelaskan operasi yang dapat dilakukan pada header pesan.

AmqpMessageProperties

Menjelaskan operasi yang dapat dilakukan pada properti pesan amqp.

ConnectionConfig

Menjelaskan modul ConnectionConfig

ConnectionContextBase
Constants
defaultCancellableLock

Instans kunci asinkron yang dapat dibatalkan.

logger

Konfigurasi @azure/logger untuk paket ini. Ini akan menghasilkan log menggunakan azure:event-hubs awalan namespace.

retryableErrors

Menyediakan daftar kesalahan AMQP yang dapat dicoba ulang. "InternalServerError", "ServerBusyError", "ServiceUnavailableError", "OperationCancelledError", "SenderBusyError", "SenderNotReadyError", "MessagingError", "DetachForcedError", "ConnectionForcedError", "TransferLimitExceededError"

Detail Fungsi

delay<T>(number, AbortSignalLike, string, T)

Pembungkus untuk setTimeout yang menyelesaikan janji setelah t milidetik.

function delay<T>(delayInMs: number, abortSignal?: AbortSignalLike, abortErrorMsg?: string, value?: T): Promise<T | void>

Parameter

delayInMs

number

Jumlah milidetik yang akan ditunda.

abortSignal
AbortSignalLike

AbortSignal yang terkait dengan operasi yang berisi.

abortErrorMsg

string

Pesan kesalahan batalkan yang terkait dengan operasi yang berisi.

value

T

Nilai yang akan diselesaikan setelah batas waktu t milidetik.

Mengembalikan

Promise<T | void>

  • Janji yang diselesaikan

isMessagingError(MessagingError | Error)

Menentukan apakah kesalahan adalah MessagingError.

function isMessagingError(error: MessagingError | Error): error

Parameter

error

MessagingError | Error

Kesalahan yang dapat berupa Kesalahan atau MessagingError.

Mengembalikan

error

isSystemError(unknown)

Memeriksa apakah kesalahan yang diberikan adalah node.js SystemError.

function isSystemError(err: unknown): err

Parameter

err

unknown

Objek yang mungkin berisi informasi kesalahan.

Mengembalikan

err

parseConnectionString<T>(string)

Mengurai string koneksi dan mengembalikan objek jenis T.

String koneksi memiliki sintaks berikut:

ConnectionString ::= Part { ";" Part } [ ";" ] [ WhiteSpace ] Bagian ::= [ PartLiteral [ "=" PartLiteral ] ] PartLiteral ::= [ WhiteSpace ] Literal [ WhiteSpace ] Literal ::= ? urutan karakter apa pun kecuali ; atau = atau WhiteSpace ? Spasi Putih ::= ? semua karakter spasi putih termasuk \r dan \n ?

function parseConnectionString<T>(connectionString: string): ParsedOutput<T>

Parameter

connectionString

string

String koneksi yang akan diurai.

Mengembalikan

Keluaran yang<Diurai T>.

retry<T>(RetryConfig<T>)

Setiap operasi dicoba setidaknya sekali. Upaya tambahan dilakukan jika upaya sebelumnya gagal dengan kesalahan yang dapat dicoba kembali. Jumlah upaya tambahan diatur oleh properti maxRetries yang disediakan pada argumen RetryConfig.

Jika opsi mode diatur ke Fixed, maka percobaan ulang dilakukan pada operasi yang diberikan untuk beberapa kali tertentu, dengan penundaan tetap di antara setiap percobaan ulang setiap kali.

Jika opsi mode diatur ke Exponential, maka penundaan antara percobaan ulang disesuaikan untuk meningkatkan secara eksponensial dengan setiap upaya menggunakan faktor back-off daya 2.

function retry<T>(config: RetryConfig<T>): Promise<T>

Parameter

config

RetryConfig<T>

Parameter untuk mengonfigurasi operasi coba lagi

Mengembalikan

Promise<T>

Janji<T>.

translate(unknown)

Menerjemahkan kesalahan AMQP yang diterima pada lapisan protokol atau SystemError ke dalam MessagingError. Semua kesalahan lainnya dikembalikan tanpa diubah.

function translate(err: unknown): MessagingError | Error

Parameter

err

unknown

Kesalahan amqp yang diterima.

Mengembalikan

MessagingError | Error

Objek MessagingError.

Variable Details

AmqpAnnotatedMessage

Menjelaskan operasi yang dapat dilakukan pada(atau untuk mendapatkan) AmqpAnnotatedMessage.

AmqpAnnotatedMessage: { fromRheaMessage(msg: Message) => AmqpAnnotatedMessage, toRheaMessage(msg: AmqpAnnotatedMessage) => Message }

Jenis

{ fromRheaMessage(msg: Message) => AmqpAnnotatedMessage, toRheaMessage(msg: AmqpAnnotatedMessage) => Message }

AmqpMessageHeader

Menjelaskan operasi yang dapat dilakukan pada header pesan.

AmqpMessageHeader: { fromRheaMessageHeader(props: MessageHeader) => AmqpMessageHeader, toRheaMessageHeader(props: AmqpMessageHeader) => MessageHeader }

Jenis

{ fromRheaMessageHeader(props: MessageHeader) => AmqpMessageHeader, toRheaMessageHeader(props: AmqpMessageHeader) => MessageHeader }

AmqpMessageProperties

Menjelaskan operasi yang dapat dilakukan pada properti pesan amqp.

AmqpMessageProperties: { fromRheaMessageProperties(props: MessageProperties) => AmqpMessageProperties, toRheaMessageProperties(props: AmqpMessageProperties) => MessageProperties }

Jenis

{ fromRheaMessageProperties(props: MessageProperties) => AmqpMessageProperties, toRheaMessageProperties(props: AmqpMessageProperties) => MessageProperties }

ConnectionConfig

Menjelaskan modul ConnectionConfig

ConnectionConfig: { create(connectionString: string, path?: string) => ConnectionConfig, validate(config: ConnectionConfig, options?: ConnectionConfigOptions) => void }

Jenis

{ create(connectionString: string, path?: string) => ConnectionConfig, validate(config: ConnectionConfig, options?: ConnectionConfigOptions) => void }

ConnectionContextBase

ConnectionContextBase: { create(parameters: CreateConnectionContextBaseParameters) => ConnectionContextBase }

Jenis

{ 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" }

Jenis

{ 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

Instans kunci asinkron yang dapat dibatalkan.

defaultCancellableLock: CancellableAsyncLock

Jenis

logger

Konfigurasi @azure/logger untuk paket ini. Ini akan menghasilkan log menggunakan azure:event-hubs awalan namespace.

logger: AzureLogger

Jenis

retryableErrors

Menyediakan daftar kesalahan AMQP yang dapat dicoba ulang. "InternalServerError", "ServerBusyError", "ServiceUnavailableError", "OperationCancelledError", "SenderBusyError", "SenderNotReadyError", "MessagingError", "DetachForcedError", "ConnectionForcedError", "TransferLimitExceededError"

retryableErrors: string[]

Jenis

string[]