- Print
- PDF
The Azure Service Bus output module is used to push messages to either an Azure Service Bus Queue or an Azure Service Bus Topic. If messages are sent to a Topic, the message will be distributed to all Subscribers to that Topic.
Configuration
The Azure Service Bus output module requires several settings to be filled in order to gain access to the Azure Service Bus API.
.png)
Type | Choose between Queue or Topic. Queues are used when you have one sender and one recipient, or if you need to balance the load by distributing messages between multiple recipients. If several input ports pull messages from the same queue, the messages will be distributed between them. Topic is used when you have one sender and several recipients. Each recipient must have its own subscription. Messages are delivered once to each subscription. |
Connection String | You can copy and paste the connection string from the Azure Portal. The remaining fields will automatically be populated by the content of the connection string. Alternatively, you can fill the remaining fields and the connection string will be automatically built. |
Entity Path | This is the name/path of the Queue or Topic. |
SAS Key Name | The name of the Shared Access Service (SAS) key. |
SAS Key | The Shared Access Service (SAS) key used to authenticate Lasernet. |
Custom Properties / Metadata
It is possible to add custom properties to a message sent via the Azure Service Bus. Custom properties are key-value pairs which are distributed alongside the message. The custom properties are sent as HTTP headers. This imposes some restrictions on the content of the key. It must abide by the restrictions for header names defined in RFC2616.
If you use characters that are not allowed according to RFC2616, Lasernet will either remove them (ASCII 128 or higher), or replace them with hyphens (control-characters and separator-characters).
The value will be encoded as a JSON string in the HTTP request to the Azure Service Bus API.
JobInfos
The following JobInfos are used by the Azure Service Bus output module.
AzureServiceBusCorrelationId | The CorrelationId for this message. |
AzureServiceBusForcePersistence | Force the message to be written to persistent storage immediately. |
AzureServiceBusLabel | A sender-defined label. |
AzureServiceBusMessageID | Identifier of the message. This is a user-defined value that the Service Bus can use to identify duplicate messages. |
AzureServiceBusMessagePropertyNames | Array of metadata field names to associate with the message. |
AzureServiceBusMessagePropertyValues | Array of metadata field values to associate with the message. |
AzureServiceBusMimeType | The MIME type of the message content. Defaults to application/octet-stream if not set. |
AzureServiceBusPartitionKey | A partition key for sending a transactional message to a queue or topic that is not session-aware. |
AzureServiceBusReplyTo | The address of the queue to send replies to. |
AzureServiceBusReplyToSessionId | The SessionId to reply to. |
AzureServiceBusScheduledEnqueueTimeUtc | The date and time in UTC at which the message will be enqueued. Specified as a RFC2822 date/time string. Example: “Thu, 01 Sep 2016 08:28:01 GMT”. |
AzureServiceBusSessionId | The identifier of the session. |
AzureServiceBusTimeToLive | The message’s time to live in seconds. Messages older than the time-to-live value will expire and no longer be retained in the message store. |
AzureServiceBusTo | The send-to address. |
AzureServiceBusViaPartitionKey | Sets a partition key value when a transaction is to be used to send messages via the transfer queue. |
Each of these JobInfos (except MimeType) corresponds to a similar named property of a Service Bus BrokeredMessage object. For more information about these properties, please refer to Microsoft’s documentation of the Azure Service Bus and Brokered Messaging.
Custom Properties / Metadata Using JobInfos
If the custom properties of the message are not static, it is possible to add dynamic custom properties to a message by using JobInfos. As described in Custom Properties / Metadata, custom properties are key-value pairs. Therefore, you must manipulate two JobInfos to add a custom property.
AzureServiceBusMessagePropertyNames | The name of the key for the custom properties. See Custom Properties / Metadata for information about character restrictions of message property keys. |
AzureServiceBusMessagePropertyValues | The value of the custom properties. |
The JobInfos are treated as arrays, where the first entry in MessagePropertyNames defines the key of the first property, and the first entry of the MessagePropertyValues defines the value of the first property, and so forth.