@azure/core-amqp package

Előkelő társaság

CbsClient

Az EventHub/ServiceBus Cbs-ügyfelet ismerteti, amely amqp-kapcsolaton keresztül kommunikál a $cbs végponttal.

MessagingError

Az üzenetkezelési hiba alaposztályát ismerteti.

RequestResponseLink

A cikk egy amqp-munkameneten keresztül létrehozott amqp-request(sender)-response(receiver) hivatkozást ismerteti.

Felületek

AcquireLockProperties

A zárolás beszerzésekor megadandó tulajdonságokat ismerteti.

CancellableAsyncLock

A CancellableAsyncLock olyan mechanizmust biztosít, amely kényszeríti a feladatokat ugyanazzal a "kulccsal" a sorozatos végrehajtáshoz.

A függőben lévő tevékenységek manuálisan megszakíthatók az abortSignal használatával, vagy automatikusan megszakíthatók egy megadott időtúllépési érték elérésével.

CbsResponse

A CBS-válasz leírása.

ConnectionConfigOptions

A kapcsolatkonfiguráció létrehozásakor megadható beállításokat ismerteti.

ConnectionProperties

Meghatározza az AMQP-kapcsolat létrehozásakor beállítani kívánt tulajdonságokat.

CreateConnectionContextBaseParameters

Az alapkapcsolati környezet létrehozásához megadható paramétereket ismerteti.

NetworkSystemError

Egy Node.js SystemError mezőit ismerteti. Kihagyja azokat a mezőket, amelyek nem kapcsolódnak hálózati hívásokhoz (például fájlrendszerbeli hívásokhoz). Lásd: https://nodejs.org/dist/latest-v12.x/docs/api/errors.html#errors_class_systemerror

RetryConfig

Az újrapróbálkozási művelethez konfigurálni kívánt paramétereket ismerteti.

RetryOptions

Próbálkozzon újra a házirend beállításaival, amelyek meghatározzák a módot, az újrapróbálkozási lehetőségek számát, az újrapróbálkozási időközt stb.

SendRequestOptions

A kérés elküldése során megadható beállításokat ismerteti.

WebSocketOptions

Az AMQP-kapcsolat webes szoftvercsatornákon keresztüli csatornázásának konfigurálásának beállításai.

Típus-aliasok

ParsedOutput

A T-ben definiált lehetséges tulajdonságokkal rendelkező objektumot definiál.

Enums

ConditionErrorNameMapper

Az amqp hibafeltételeinek leképezése a hibanevekre.

ErrorNameConditionMapper

A hibanevek leképezése az amqp hibafeltételeihez.

RetryMode

Az újrapróbálkozási mód típusát ismerteti

RetryOperationType

Az újrapróbálkozási művelet típusát ismerteti.

SystemErrorConditionMapper

Rendszerhiba-feltételek leképezése néhány SystemErrorhoz

TokenType

A támogatott jogkivonatok típusát ismerteti.

Functions

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

A setTimeout burkolója, amely ezredmásodperc után felold egy ígéretet.

isMessagingError(MessagingError | Error)

Megállapítja, hogy egy hiba MessagingError-e.

isSystemError(unknown)

Ellenőrzi, hogy a megadott hiba node.js SystemError-e.

parseConnectionString<T>(string)

Elemzi a kapcsolati sztringet, és egy T típusú objektumot ad vissza.

A kapcsolati sztringek szintaxisa a következő:

ConnectionString ::= Part { ";" Part } [ ";" ] [ WhiteSpace ] rész ::= [ PartLiteral [ "=" PartLiteral ] ] PartLiteral ::= [ WhiteSpace ] Literál [ WhiteSpace ] Literál ::= ? tetszőleges karaktersorozat, kivéve; vagy = vagy WhiteSpace? Szóköz ::= ? az összes szóköz karakter, beleértve \r és \n?

retry<T>(RetryConfig<T>)

Minden műveletet legalább egyszer megkísérlünk. További kísérletek akkor történnek, ha az előző kísérlet újrapróbálkozási hibával meghiúsult. A további kísérletek számát a maxRetries argumentumban megadott RetryConfig tulajdonság szabályozza.

Ha mode beállítás Fixedértékre van állítva, akkor az újrapróbálkozások adott számú alkalommal történnek az adott műveleten, és minden újrapróbálkozás között rögzített késleltetés van.

Ha mode beállítás Exponentialértékre van állítva, akkor az újrapróbálkozások közötti késleltetés exponenciálisan növekszik a 2. teljesítmény visszalépési tényezőjével végzett minden egyes kísérletnél.

translate(unknown)

Lefordítja a protokollrétegben vagy a SystemErrorban kapott AMQP-hibát egy MessagingError-ra. A rendszer minden más hibát változatlanul ad vissza.

Változók

AmqpAnnotatedMessage

Leírja azokat a műveleteket, amelyeket az AmqpAnnotatedMessage-en végrehajthatnak (vagy megkapni).

AmqpMessageHeader

Leírja azokat a műveleteket, amelyeket az üzenet fejlécén végezhetünk.

AmqpMessageProperties

Leírja azokat a műveleteket, amelyek az amqp üzenet tulajdonságain végrehajthatók.

ConnectionConfig

Leírja a ConnectionConfig modult

ConnectionContextBase
Constants
defaultCancellableLock

A törölhető aszinkron zárolás.

logger

A @azure/logger csomag konfigurációja. Ez a névtér előtagjával fog naplókat azure:event-hubs adni.

retryableErrors

Felsorolja az újrapróbálható AMQP hibákat. "InternalServerError", "ServerBusyError", "ServiceUnavailableError", "OperationCancelledError", "SenderBusyError", "SenderNotReadyError", "MessagingError", "DetachForcedError", "ConnectionForcedError", "TransferLimitExceededError"

Funkciók részletei

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

A setTimeout burkolója, amely ezredmásodperc után felold egy ígéretet.

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

Paraméterek

delayInMs

number

A késleltetni kívánt ezredmásodpercek száma.

abortSignal
AbortSignalLike

A műveletet tartalmazó művelethez társított abortSignal.

abortErrorMsg

string

A műveletet tartalmazó művelettel társított megszakítási hibaüzenet.

value

T

Ezredmásodperc időtúllépés után feloldandó érték.

Visszatér

Promise<T | void>

  • Megoldott ígéret

isMessagingError(MessagingError | Error)

Megállapítja, hogy egy hiba MessagingError-e.

function isMessagingError(error: MessagingError | Error): error

Paraméterek

error

MessagingError | Error

Hiba lehet hiba vagy MessagingError.

Visszatér

error

isSystemError(unknown)

Ellenőrzi, hogy a megadott hiba node.js SystemError-e.

function isSystemError(err: unknown): err

Paraméterek

err

unknown

Olyan objektum, amely hibainformációkat tartalmazhat.

Visszatér

err

parseConnectionString<T>(string)

Elemzi a kapcsolati sztringet, és egy T típusú objektumot ad vissza.

A kapcsolati sztringek szintaxisa a következő:

ConnectionString ::= Part { ";" Part } [ ";" ] [ WhiteSpace ] rész ::= [ PartLiteral [ "=" PartLiteral ] ] PartLiteral ::= [ WhiteSpace ] Literál [ WhiteSpace ] Literál ::= ? tetszőleges karaktersorozat, kivéve; vagy = vagy WhiteSpace? Szóköz ::= ? az összes szóköz karakter, beleértve \r és \n?

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

Paraméterek

connectionString

string

Az elemezni kívánt kapcsolati sztring.

Visszatér

Elemzett kimenet<T>.

retry<T>(RetryConfig<T>)

Minden műveletet legalább egyszer megkísérlünk. További kísérletek akkor történnek, ha az előző kísérlet újrapróbálkozási hibával meghiúsult. A további kísérletek számát a maxRetries argumentumban megadott RetryConfig tulajdonság szabályozza.

Ha mode beállítás Fixedértékre van állítva, akkor az újrapróbálkozások adott számú alkalommal történnek az adott műveleten, és minden újrapróbálkozás között rögzített késleltetés van.

Ha mode beállítás Exponentialértékre van állítva, akkor az újrapróbálkozások közötti késleltetés exponenciálisan növekszik a 2. teljesítmény visszalépési tényezőjével végzett minden egyes kísérletnél.

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

Paraméterek

config

RetryConfig<T>

Az újrapróbálkozási művelet konfigurálásához szükséges paraméterek

Visszatér

Promise<T>

Ígéret<T>.

translate(unknown)

Lefordítja a protokollrétegben vagy a SystemErrorban kapott AMQP-hibát egy MessagingError-ra. A rendszer minden más hibát változatlanul ad vissza.

function translate(err: unknown): MessagingError | Error

Paraméterek

err

unknown

A kapott amqp-hiba.

Visszatér

MessagingError | Error

MessagingError objektum.

Variable Details

AmqpAnnotatedMessage

Leírja azokat a műveleteket, amelyeket az AmqpAnnotatedMessage-en végrehajthatnak (vagy megkapni).

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

Típus

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

AmqpMessageHeader

Leírja azokat a műveleteket, amelyeket az üzenet fejlécén végezhetünk.

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

Típus

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

AmqpMessageProperties

Leírja azokat a műveleteket, amelyek az amqp üzenet tulajdonságain végrehajthatók.

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

Típus

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

ConnectionConfig

Leírja a ConnectionConfig modult

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

Típus

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

ConnectionContextBase

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

Típus

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

Típus

{ 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

A törölhető aszinkron zárolás.

defaultCancellableLock: CancellableAsyncLock

Típus

logger

A @azure/logger csomag konfigurációja. Ez a névtér előtagjával fog naplókat azure:event-hubs adni.

logger: AzureLogger

Típus

retryableErrors

Felsorolja az újrapróbálható AMQP hibákat. "InternalServerError", "ServerBusyError", "ServiceUnavailableError", "OperationCancelledError", "SenderBusyError", "SenderNotReadyError", "MessagingError", "DetachForcedError", "ConnectionForcedError", "TransferLimitExceededError"

retryableErrors: string[]

Típus

string[]