Links

Queue

Kubemq queue target connector allows services using kubemq server to access queue messaging services.

Prerequisites

The following are required to run the queue target connector:
  • kubemq cluster
  • Azure active storage account
  • Azure active with storage enable - with access account
  • kubemq-targets deployment

Configuration

queue target connector configuration properties:
Properties Key
Required
Description
Example
storage_account
yes
azure storage account name
"my_account"
storage_access_key
yes
azure storage access key
"abcd1234"
policy
no
exponential or linear
"retry_policy_exponential",default(retry_policy_exponential)
max_tries
no
request max tries (1 disable)
"1",default(1)
try_timeout
no
Maximum time allowed for any single try
"3000",default(10000) milliseconds
retry_delay
no
Backoff amount for each retry
"1000",default(600) milliseconds
max_retry_delay
no
delay between retries
"1000",default(1800) milliseconds
Example:
bindings:
- name: kubemq-query-azure-queue
source:
kind: kubemq.query
name: kubemq-query
properties:
address: "kubemq-cluster:50000"
client_id: "kubemq-query-azure-queue-connector"
auth_token: ""
channel: "azure.storage.queue"
group: ""
concurrency: "1"
auto_reconnect: "true"
reconnect_interval_seconds: "1"
max_reconnects: "0"
target:
kind: azure.storage.queue
name: azure-storage-queue
properties:
storage_account: "id"
storage_access_key: "key".
max_retry_delay: "180000"
max_tries: "1"
policy: retry_policy_exponential
retry_delay: "60000"
try_timeout: "1000"

Usage

Create

Create metadata setting:
Metadata Key
Required
Description
Possible values
method
yes
type of method
"create"
service_url
yes
service url path
queue_name
yes
the name of the queue to create
"my_queue"
queue_metadata
no
key value string string queue Metadata
"{"tag":"test","name":"myname"}",default(none)
{
"metadata": {
"method": "create",
"queue_name": "my_queue",
"service_url": "https://test.end.point.test.net"
},
"data": null
}

Push

Push metadata setting:
Metadata Key
Required
Description
Possible values
method
yes
type of method
"push"
service_url
yes
service url path
queue_name
yes
the name of the queue to send the message to
"my_queue"
queue_metadata
no
key value string string queue Metadata
"{"tag":"test","name":"myname"}",default(none)
visibility_timeout
no
visibility timeout value,in milliseconds
"2000000000",default(100000000)
time_to_live
no
maximum time to allow the message to be in the queue,in milliseconds
"2000000000",default(100000000)
Example:
{
"metadata": {
"method": "push",
"queue_name": "test",
"service_url": "https://test.end.point.test.net"
},
"data": "bXktZmlsZS1kYXRh"
}

Get Message Count

Get Message Count metadata setting:
Metadata Key
Required
Description
Possible values
method
yes
type of method
"get_messages_count"
service_url
yes
service url path and
queue_name
yes
the name of the queue
"my_queue"
Example:
{
"metadata": {
"method": "get_messages_count",
"queue_name": "test",
"service_url": "https://test.end.point.test.net"
},
"data": null
}

Delete

Delete metadata setting:
Metadata Key
Required
Description
Possible values
method
yes
type of method
"delete"
service_url
yes
service url path and
queue_name
yes
the name of the queue
"my_queue"
Example:
{
"metadata": {
"method": "delete",
"queue_name": "test",
"service_url": "https://test.end.point.test.net"
},
"data": null
}

Peek

Peek metadata setting:
Metadata Key
Required
Description
Possible values
method
yes
type of method
"peek"
file_name
yes
the name of the file to delete
"myfile.txt"
service_url
yes
service url path and
max_messages
no
max number of messages to receive int32
"10",default(32)
Example:
{
"metadata": {
"method": "peek",
"queue_name": "test",
"service_url": "https://test.end.point.test.net"
},
"data": null
}

Pop

Pop metadata setting:
Pop will remove the message
Metadata Key
Required
Description
Possible values
method
yes
type of method
"pop"
file_name
yes
the name of the file to delete
"myfile.txt"
service_url
yes
service url path and
max_messages
no
max number of messages to receive int32
"10",default(32)
Example:
{
"metadata": {
"method": "pop",
"queue_name": "test",
"service_url": "https://test.end.point.test.net"
},
"data": null
}
Last modified 2yr ago