@azure/core-amqp package
Classi
| CbsClient |
Descrive il client Cbs EventHub/ServiceBus che comunica con l'endpoint $cbs tramite la connessione AMQP. |
| MessagingError |
Descrive la classe di base per l'errore di messaggistica. |
| RequestResponseLink |
Descrive un collegamento amqp request(sender)-response(receiver) creato in una sessione amqp. |
Interfacce
| AcquireLockProperties |
Descrive le proprietà che devono essere fornite durante l'acquisizione di un blocco. |
| CancellableAsyncLock |
CancellableAsyncLock fornisce un meccanismo per forzare l'esecuzione seriale delle attività che usano la stessa 'chiave'. Le attività in sospeso possono essere annullate manualmente tramite un oggetto abortSignal o annullate automaticamente dal raggiungimento di un valore di timeout specificato. |
| CbsResponse |
Descrive la risposta CBS. |
| ConnectionConfigOptions |
Vengono descritte le opzioni che è possibile specificare durante la creazione di una configurazione di connessione. |
| ConnectionProperties |
Definisce le proprietà che devono essere impostate durante la definizione della connessione AMQP. |
| CreateConnectionContextBaseParameters |
Descrive i parametri che è possibile specificare per creare il contesto di connessione di base. |
| NetworkSystemError |
Descrive i campi di un Node.js SystemError. Omette i campi non correlati alle chiamate di rete ,ad esempio le chiamate al file system. Vedere https://nodejs.org/dist/latest-v12.x/docs/api/errors.html#errors_class_systemerror |
| RetryConfig |
Descrive i parametri che devono essere configurati per l'operazione di ripetizione dei tentativi. |
| RetryOptions |
Opzioni dei criteri di ripetizione dei tentativi che determinano la modalità, il numero di tentativi, l'intervallo di ripetizione dei tentativi e così via. |
| SendRequestOptions |
Descrive le opzioni che è possibile specificare durante l'invio di una richiesta. |
| WebSocketOptions |
Opzioni per configurare il canale della connessione AMQP tramite Web Socket. |
Alias tipo
| ParsedOutput |
Definisce un oggetto con le possibili proprietà definite in T. |
Enumerazioni
| ConditionErrorNameMapper |
Esegue il mapping delle condizioni di errore amqp ai nomi degli errori. |
| ErrorNameConditionMapper |
Esegue il mapping dei nomi degli errori alle condizioni di errore amqp. |
| RetryMode |
Descrive il tipo di modalità di ripetizione dei tentativi |
| RetryOperationType |
Descrive il tipo di operazione di ripetizione dei tentativi. |
| SystemErrorConditionMapper |
Esegue il mapping di alcuni errori SystemErrors a condizioni di errore amqp |
| TokenType |
Descrive il tipo di token supportati. |
Funzioni
| delay<T>(number, Abort |
Wrapper per setTimeout che risolve una promessa dopo t millisecondi. |
| is |
Determina se un errore è un errore MessagingError. |
| is |
Controlla se l'errore specificato è un node.js SystemError. |
| parse |
Analizza la stringa di connessione e restituisce un oggetto di tipo T. Le stringhe di connessione hanno la sintassi seguente: ConnectionString ::= |
| retry<T>(Retry |
Ogni operazione viene tentata almeno una volta. Vengono eseguiti altri tentativi se il tentativo precedente non è riuscito con un errore riprovabile. Il numero di tentativi aggiuntivi è disciplinato dalla proprietà Se Se |
| translate(unknown) | Converte l'errore AMQP ricevuto a livello di protocollo o SystemError in un MessagingError. Tutti gli altri errori vengono restituiti invariati. |
Variabili
| Amqp |
Descrive le operazioni che possono essere eseguite su (o per ottenere) l'AmqpAnnotatedMessage. |
| Amqp |
Descrive le operazioni che possono essere eseguite sull'intestazione del messaggio. |
| Amqp |
Descrive le operazioni che possono essere eseguite sulle proprietà del messaggio amqp. |
| Connection |
Descrive il modulo ConnectionConfig |
| Connection |
|
| Constants | |
| default |
L'istanza di blocco asincrono cancellabile. |
| logger | La @azure/logger configurazione di questo pacchetto.
Questo genererà log usando il |
| retryable |
Fornisce una lista di errori AMQP ritentabili. "ErroreDeServerInterno", "ErroreOccupatoServer", "ErroreIndisponibileServizio", "ErroreCancellato", "ErroreOccupatoMittente", "ErroreInviantePronto", "ErroreMessaggio", "ErroreForzatoDistaccato", "ErroreForzatoCollega", "LimiteTrasferitoExceedErrore" |
Dettagli funzione
delay<T>(number, AbortSignalLike, string, T)
Wrapper per setTimeout che risolve una promessa dopo t millisecondi.
function delay<T>(delayInMs: number, abortSignal?: AbortSignalLike, abortErrorMsg?: string, value?: T): Promise<T | void>
Parametri
- delayInMs
-
number
Numero di millisecondi da ritardare.
- abortSignal
- AbortSignalLike
AbortSignal associato all'operazione contenitore.
- abortErrorMsg
-
string
Messaggio di errore di interruzione associato all'operazione contenitore.
- value
-
T
Valore da risolvere con dopo un timeout di t millisecondi.
Restituisce
Promise<T | void>
- Promessa risolta
isMessagingError(MessagingError | Error)
Determina se un errore è un errore MessagingError.
function isMessagingError(error: MessagingError | Error): error
Parametri
- error
-
MessagingError | Error
Errore che può essere un errore o un errore di MessagingError.
Restituisce
error
isSystemError(unknown)
Controlla se l'errore specificato è un node.js SystemError.
function isSystemError(err: unknown): err
Parametri
- err
-
unknown
Oggetto che può contenere informazioni sull'errore.
Restituisce
err
parseConnectionString<T>(string)
Analizza la stringa di connessione e restituisce un oggetto di tipo T.
Le stringhe di connessione hanno la sintassi seguente:
ConnectionString ::= Part { ";" Part } [ ";" ] [ WhiteSpace ] Parte ::= [ PartLiteral [ "=" PartLiteral ] ] PartLiteral ::= [ WhiteSpace ] Letterale [ WhiteSpace ] Letterale ::= ? qualsiasi sequenza di caratteri tranne ; o = o spazi vuoti ?
Spazio bianco ::= ? tutti gli spazi vuoti, inclusi \r e \n ?
function parseConnectionString<T>(connectionString: string): ParsedOutput<T>
Parametri
- connectionString
-
string
Stringa di connessione da analizzare.
Restituisce
ParsedOutput<T>
ParsedOutput<T>.
retry<T>(RetryConfig<T>)
Ogni operazione viene tentata almeno una volta. Vengono eseguiti altri tentativi se il tentativo precedente non è riuscito con un errore riprovabile. Il numero di tentativi aggiuntivi è disciplinato dalla proprietà maxRetries fornita nell'argomento RetryConfig.
Se mode opzione è impostata su Fixed, i tentativi vengono eseguiti nell'operazione specificata per un numero specificato di volte, con un ritardo fisso tra ogni tentativo ogni volta.
Se mode opzione è impostata su Exponential, il ritardo tra i tentativi viene modificato in modo da aumentare in modo esponenziale ogni tentativo usando il fattore di back-off della potenza 2.
function retry<T>(config: RetryConfig<T>): Promise<T>
Parametri
- config
-
RetryConfig<T>
Parametri per configurare l'operazione di ripetizione dei tentativi
Restituisce
Promise<T>
Promessa<T>.
translate(unknown)
Converte l'errore AMQP ricevuto a livello di protocollo o SystemError in un MessagingError. Tutti gli altri errori vengono restituiti invariati.
function translate(err: unknown): MessagingError | Error
Parametri
- err
-
unknown
Errore amqp ricevuto.
Restituisce
MessagingError | Error
Oggetto MessagingError.
Variable Details
AmqpAnnotatedMessage
Descrive le operazioni che possono essere eseguite su (o per ottenere) l'AmqpAnnotatedMessage.
AmqpAnnotatedMessage: { fromRheaMessage(msg: Message) => AmqpAnnotatedMessage, toRheaMessage(msg: AmqpAnnotatedMessage) => Message }
Tipo
{ fromRheaMessage(msg: Message) => AmqpAnnotatedMessage, toRheaMessage(msg: AmqpAnnotatedMessage) => Message }
AmqpMessageHeader
Descrive le operazioni che possono essere eseguite sull'intestazione del messaggio.
AmqpMessageHeader: { fromRheaMessageHeader(props: MessageHeader) => AmqpMessageHeader, toRheaMessageHeader(props: AmqpMessageHeader) => MessageHeader }
Tipo
{ fromRheaMessageHeader(props: MessageHeader) => AmqpMessageHeader, toRheaMessageHeader(props: AmqpMessageHeader) => MessageHeader }
AmqpMessageProperties
Descrive le operazioni che possono essere eseguite sulle proprietà del messaggio amqp.
AmqpMessageProperties: { fromRheaMessageProperties(props: MessageProperties) => AmqpMessageProperties, toRheaMessageProperties(props: AmqpMessageProperties) => MessageProperties }
Tipo
{ fromRheaMessageProperties(props: MessageProperties) => AmqpMessageProperties, toRheaMessageProperties(props: AmqpMessageProperties) => MessageProperties }
ConnectionConfig
Descrive il modulo ConnectionConfig
ConnectionConfig: { create(connectionString: string, path?: string) => ConnectionConfig, validate(config: ConnectionConfig, options?: ConnectionConfigOptions) => void }
Tipo
{ create(connectionString: string, path?: string) => ConnectionConfig, validate(config: ConnectionConfig, options?: ConnectionConfigOptions) => void }
ConnectionContextBase
ConnectionContextBase: { create(parameters: CreateConnectionContextBaseParameters) => ConnectionContextBase }
Tipo
{ 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" }
Tipo
{ 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
L'istanza di blocco asincrono cancellabile.
defaultCancellableLock: CancellableAsyncLock
Tipo
logger
La @azure/logger configurazione di questo pacchetto.
Questo genererà log usando il azure:event-hubs prefisso dello spazio dei nomi.
logger: AzureLogger
Tipo
retryableErrors
Fornisce una lista di errori AMQP ritentabili. "ErroreDeServerInterno", "ErroreOccupatoServer", "ErroreIndisponibileServizio", "ErroreCancellato", "ErroreOccupatoMittente", "ErroreInviantePronto", "ErroreMessaggio", "ErroreForzatoDistaccato", "ErroreForzatoCollega", "LimiteTrasferitoExceedErrore"
retryableErrors: string[]
Tipo
string[]