Management Tree
Overview
The Management Tree is the central configuration hierarchy of a SwiftMQ router. Every Swiftlet registers its configuration under the tree. Administrators use the CLI to navigate and modify it at runtime.
Tree Structure
/
├── sys$trace/
│ ├── max-file-size = 10240
│ ├── number-old-tracefile-generations = 50
│ ├── spaces/
│ │ └── <space>/ (dynamic)
│ │ ├── enabled = false
├── sys$log/
│ ├── size-limit = 1024
│ ├── number-old-logfile-generations = 50
│ ├── logfile-info-enabled = true
│ ├── logfile-info = swiftmq_info.log
│ ├── logfile-warning-enabled = true
│ ├── logfile-warning = swiftmq_warning.log
│ ├── logfile-error-enabled = true
│ ├── logfile-error = swiftmq_error.log
│ ├── logsink-directory = ./
├── sys$timer/
│ ├── min-delay = 100
│ ├── max-delay = 10000
├── sys$net/
│ ├── collect-interval = 1000
│ ├── zombi-connection-timeout = 0
│ ├── dns-resolve-enabled = false
│ ├── reuse-serversockets = true
│ ├── number-selector-tasks = 10
│ ├── max-chunk-size = -1
├── sys$store/
│ ├── backup/
│ │ ├── path
│ │ ├── keep-generations = 3
│ ├── database/
│ │ ├── path
│ │ ├── initial-db-size-pages = 25600
│ │ ├── size-collect-interval = 1000
│ │ ├── page-size-current = 2048
│ │ ├── page-size-recommended = 2048
│ │ ├── page-size-max = 32768
│ │ ├── perform-compact-on-startup = false
│ │ ├── perform-resize-on-startup = false
│ ├── cache/
│ │ ├── min-size = 1024
│ │ ├── max-size = 2048
│ ├── transaction-log/
│ │ ├── path
│ │ ├── checkpoint-size = 104857600
│ │ ├── force-sync = false
│ ├── swap/
│ │ ├── path
│ │ ├── roll-over-size = 10485760
│ ├── durable-subscriber/
│ │ ├── path
├── sys$topicmanager/
│ ├── flowcontrol-enabled = true
│ ├── direct-subscriber-selection = true
│ ├── topics/
│ │ └── <topic>/ (dynamic)
│ ├── announce-filters/
│ │ └── <router-name-filter>/ (dynamic)
│ │ ├── routername
│ │ ├── filter-type = exclude
│ ├── slow-subscriber-conditions/
│ │ └── <topic>/ (dynamic)
│ │ ├── max-messages = 500
│ │ ├── persistence-mode = non_persistent
│ │ ├── subscription-type = all
│ │ ├── disconnect-non-durable-subscriber = false
│ │ ├── disconnect-delete-durable-subscriber = false
│ ├── static-remote-router-subscriptions/
│ │ └── <static-remote-router-subscription>/ (dynamic)
├── sys$scheduler/
│ ├── calendars/
│ │ └── <calendar>/ (dynamic)
│ │ ├── type = exclude
│ │ ├── base-calendar
│ │ ├── enable-weekdays = false
│ │ ├── enable-monthdays = false
│ │ ├── enable-monthdays-last = false
│ │ ├── enable-annualdays = false
│ │ ├── enable-dateranges = false
│ ├── schedules/
│ │ └── <schedule>/ (dynamic)
│ │ ├── enabled = false
│ │ ├── logging-enabled = false
│ │ ├── calendar
│ │ ├── job-group
│ │ ├── job-name
│ │ ├── date-from = now
│ │ ├── date-to = forever
│ │ ├── max-runtime
│ │ ├── time-expression
├── sys$xa/
│ ├── scan-interval = 20000
│ ├── default-transaction-timeout = 0
├── sys$routing/
│ ├── reject-disconnect-delay = 5000
│ ├── stage-valid-timeout = 15000
│ ├── roundrobin-enabled = false
│ ├── inbound-flow-control-enabled = false
│ ├── crfactory-class = com.swiftmq.auth.ChallengeResponseFactoryImpl
│ ├── route-announce-hop-limit = 3
│ ├── static-routes/
│ │ └── <static-route>/ (dynamic)
│ ├── filters/
│ │ └── <filter>/ (dynamic)
│ │ ├── type
│ ├── listeners/
│ │ └── <listener>/ (dynamic)
│ │ ├── bindaddress
│ │ ├── port
│ │ ├── use-tcp-no-delay = true
│ │ ├── socketfactory-class = com.swiftmq.net.PlainSocketFactory
│ │ ├── password
│ │ ├── keepalive-interval = 60000
│ │ ├── inbound-transaction-size = 20
│ │ ├── inbound-window-size = 10
│ │ ├── router-input-buffer-size = 131072
│ │ ├── router-input-extend-size = 65536
│ │ ├── router-output-buffer-size = 131072
│ │ ├── router-output-extend-size = 131072
│ │ ├── use-compression = false
│ │ ├── use-xa = true
│ ├── connectors/
│ │ └── <connector>/ (dynamic)
│ │ ├── hostname
│ │ ├── enabled = true
│ │ ├── port
│ │ ├── use-tcp-no-delay = true
│ │ ├── socketfactory-class = com.swiftmq.net.PlainSocketFactory
│ │ ├── password
│ │ ├── retry-time = 60000
│ │ ├── inbound-transaction-size = 20
│ │ ├── inbound-window-size = 10
│ │ ├── router-input-buffer-size = 131072
│ │ ├── router-input-extend-size = 65536
│ │ ├── router-output-buffer-size = 131072
│ │ ├── router-output-extend-size = 131072
│ │ ├── use-compression = false
│ │ ├── use-xa = true
├── sys$mgmt/
│ ├── authentication-enabled = false
│ ├── admin-roles-enabled = false
│ ├── admintool-connect-logging-enabled = true
│ ├── crfactory-class = com.swiftmq.auth.ChallengeResponseFactoryImpl
│ ├── password
│ ├── flush-interval = 500
│ ├── roles/
│ │ └── <role>/ (dynamic)
│ ├── jmx/
│ │ ├── enabled = false
│ │ ├── groupable-objectnames = true
│ ├── message-interface/
│ │ ├── enabled = false
│ │ ├── request-queue-name = swiftmqmgmt-message-interface
├── sys$threadpool/
│ ├── collect-interval = 1000
│ ├── group-shutdown-order
│ ├── groups/
│ │ └── <group>/ (dynamic)
│ │ ├── freezable = true
│ ├── adhocplatform/
│ │ ├── core-pool-size = 0
│ │ ├── max-pool-size = 30
│ │ ├── keepalive = 1000
├── sys$jndi/
│ ├── jndi-replications/
│ │ └── <jndi-replication>/ (dynamic)
│ │ ├── enabled = false
│ │ ├── keepalive-interval = 60000
│ │ ├── keepalive-lookup-name = test
│ │ ├── destination-context
│ │ ├── name-prefix
│ ├── aliases/
│ │ └── <alias>/ (dynamic)
│ │ ├── map-to
│ ├── remote-queues/
│ │ └── <remote-queue>/ (dynamic)
├── sys$queuemanager/
│ ├── collect-interval = 1000
│ ├── cluster-metric-interval = 10000
│ ├── max-flowcontrol-delay = 5000
│ ├── log-expired-messages = false
│ ├── log-duplicate-messages = false
│ ├── deliver-expired-messages = false
│ ├── cluster-topic = swiftmq.cluster
│ ├── multi-queue-transaction-global-lock = false
│ ├── queue-controllers/
│ │ └── <queue-controller>/ (dynamic)
│ │ ├── predicate
│ │ ├── cache-size = 500
│ │ ├── cache-size-bytes-kb = -1
│ │ ├── cleanup-interval = 120000
│ │ ├── flowcontrol-start-queuesize = 400
│ │ ├── max-messages = -1
│ │ ├── persistence-mode = as_message
│ │ ├── consumer-mode = shared
│ │ ├── duplicate-detection-enabled = true
│ │ ├── duplicate-detection-backlog-size = 2000
│ │ ├── monitor-alert-threshold = -1
│ ├── clustered-queues/
│ │ └── <clustered-queue>/ (dynamic)
│ │ ├── message-group-enabled = false
│ │ ├── message-group-property = JMSXGroupID
│ │ ├── message-group-expiration = -1
│ │ ├── message-group-expiration-cleanup-interval = -1
│ ├── composite-queues/
│ │ └── <composite-queue>/ (dynamic)
│ ├── queues/
│ │ └── <queue>/ (dynamic)
│ │ ├── cache-size = 500
│ │ ├── cache-size-bytes-kb = -1
│ │ ├── cleanup-interval = 120000
│ │ ├── max-messages = -1
│ │ ├── persistence-mode = as_message
│ │ ├── consumer-mode = shared
│ │ ├── flowcontrol-start-queuesize = 400
│ │ ├── duplicate-detection-enabled = true
│ │ ├── duplicate-detection-backlog-size = 2000
│ │ ├── monitor-alert-threshold = -1
├── sys$authentication/
│ ├── authentication-enabled = false
│ ├── password-check-only = false
│ ├── groups/
│ │ └── <group>/ (dynamic)
│ ├── resource-limit-groups/
│ │ └── <resource-limit-group>/ (dynamic)
│ │ ├── max-connections = -1
│ │ ├── max-tempqueues = 50
│ │ ├── max-sessions = 50
│ │ ├── max-producers = 50
│ │ ├── max-consumers = 50
│ ├── users/
│ │ └── <user>/ (dynamic)
│ │ ├── password
│ │ ├── group = public
│ │ ├── resource-limit-group = public
├── sys$jms/
│ ├── allow-same-clientid = false
│ ├── collect-interval = 10000
│ ├── max-connections = -1
│ ├── consumer-cache-low-water-mark = 100
│ ├── crfactory-class = com.swiftmq.auth.ChallengeResponseFactoryImpl
│ ├── intravm-connection-factories/
│ │ └── <intravm-connection-factory>/ (dynamic)
│ │ ├── smqp-producer-reply-interval = 20
│ │ ├── smqp-consumer-cache-size = 500
│ │ ├── smqp-consumer-cache-size-kb = 2048
│ │ ├── jms-client-id
│ │ ├── jms-default-delivery-mode = persistent
│ │ ├── jms-default-message-ttl = 0
│ │ ├── jms-default-message-priority = 4
│ │ ├── jms-default-message-id-enabled = true
│ │ ├── jms-default-message-timestamp-enabled = true
│ │ ├── thread-context-classloader-for-getobject = false
│ ├── listeners/
│ │ └── <listener>/ (dynamic)
│ │ ├── connectaddress
│ │ ├── connectport = -1
│ │ ├── bindaddress
│ │ ├── port
│ │ ├── hostname2
│ │ ├── connectaddress2
│ │ ├── connectport2 = -1
│ │ ├── bindaddress2
│ │ ├── port2 = -1
│ │ ├── use-tcp-no-delay = true
│ │ ├── socketfactory-class = com.swiftmq.net.PlainSocketFactory
│ │ ├── keepalive-interval = 60000
│ │ ├── max-connections = -1
│ │ ├── router-input-buffer-size = 131072
│ │ ├── router-input-extend-size = 65536
│ │ ├── router-output-buffer-size = 131072
│ │ ├── router-output-extend-size = 65536
├── sys$amqp/
│ ├── allow-same-containerid = true
│ ├── collect-interval = 1000
│ ├── listeners/
│ │ └── <listener>/ (dynamic)
│ │ ├── bindaddress
│ │ ├── port = 5672
│ │ ├── max-connections = -1
│ │ ├── sasl-enabled = true
│ │ ├── connection-template = default
│ ├── declarations/
├── sys$mqtt/
│ ├── collect-interval = 1000
│ ├── session-timeout = 168
│ ├── listeners/
│ │ └── <listener>/ (dynamic)
│ │ ├── bindaddress
│ │ ├── port = 1883
│ │ ├── max-connections = -1
│ │ ├── connection-template = default
│ ├── declarations/
├── sys$deploy/
│ ├── deploy-spaces/
│ │ └── <deploy-space>/ (dynamic)
│ │ ├── path
│ │ ├── check-interval = 60000
├── sys$streams/
│ ├── collect-interval = 1000
│ ├── stream-grant-predicates = stream\_%
│ ├── stream-lib-directory = ../data/streamlib
│ ├── domains/
│ │ └── <domain>/ (dynamic)
CLI Navigation
The following commands are available for navigating and modifying the tree:
| Command | Description |
|---|---|
cc <context> |
Change context (navigate into entity or entity list) |
lc [<context>] |
List contents of current or specified context |
set <prop> [<value>] |
Set property value on current entity |
describe <prop> |
Show description of a property |
new <name> [<prop> <value> ...] |
Create entity in an entity list with inline properties |
delete <name> |
Delete entity from entity list |
show template |
Show template for new entities |
There is no get, show (for property values), list, create, remove, add, or status command.
Common Configuration Tasks
Creating a Queue
cc /sys$queuemanager/queues
new myqueue cache-size 1000 persistence-mode persistent
Viewing Queue Configuration
cc /sys$queuemanager/queues/myqueue
lc
Modifying an Existing Property
cc /sys$queuemanager/queues/myqueue
set cache-size 2000
Deleting an Entity
cc /sys$queuemanager/queues
delete myqueue
Viewing the Template for New Entities
cc /sys$queuemanager/queues
show template
Swiftlet Configuration Reference
Trace Swiftlet (sys$trace)
Trace Swiftlet
Root Properties:
| Parameter | Type | Default | Description |
|---|---|---|---|
max-file-size |
Integer | 10240 |
Max. Tracefile Size (KB) |
number-old-tracefile-generations |
Integer | 50 |
Number old Tracefile Generations to keep |
Spaces (spaces/) — Trace Space Definitions
| Parameter | Type | Default | Description |
|---|---|---|---|
enabled |
Boolean | false |
Enables/Disables the Space |
Log Swiftlet (sys$log)
Central Logging Facility
Root Properties:
| Parameter | Type | Default | Description |
|---|---|---|---|
size-limit |
Integer | 1024 |
Logfiles do rotate by reaching this size |
number-old-logfile-generations |
Integer | 50 |
Number old Logfile Generations to keep |
logfile-info-enabled |
Boolean | true |
Info Logfile enabled |
logfile-info |
String | swiftmq_info.log |
Logfile Information Messages |
logfile-warning-enabled |
Boolean | true |
Warning Logfile enabled |
logfile-warning |
String | swiftmq_warning.log |
Logfile Warning Messages |
logfile-error-enabled |
Boolean | true |
Error Logfile enabled |
logfile-error |
String | swiftmq_error.log |
Logfile Error Messages |
logsink-directory |
String | ./ |
Directory where Logsinks will be stored |
Timer Swiftlet (sys$timer)
Timer Swiftlet
Root Properties:
| Parameter | Type | Default | Description |
|---|---|---|---|
min-delay |
Long | 100 |
Minimum Delay |
max-delay |
Long | 10000 |
Maximum Delay |
Network Swiftlet (sys$net)
Network Swiftlet
Root Properties:
| Parameter | Type | Default | Description |
|---|---|---|---|
collect-interval |
Long | 1000 |
Throughput Collect Interval |
zombi-connection-timeout |
Long | 0 |
Zombi-Connection Timeout |
dns-resolve-enabled |
Boolean | false |
Resolve DNS Names during Connect |
reuse-serversockets |
Boolean | true |
Re-Use Server Sockets |
number-selector-tasks |
Integer | 10 |
Number Selector Tasks. Might be increased for Multi-Processor Machines. |
max-chunk-size |
Long | -1 |
Maximum size of a network chunk (chunk = message in JMS) to limit the incoming message size router-wide. |
Store Swiftlet (sys$store)
Store Swiftlet
Backup (backup/) — Backup Settings
| Parameter | Type | Default | Description |
|---|---|---|---|
path |
String | — | Root Path for Backup Save Sets |
keep-generations |
Integer | 3 |
Number of Generations to keep |
Database (database/) — Database Settings
| Parameter | Type | Default | Description |
|---|---|---|---|
path |
String | — | Path of the Database (page.db) |
initial-db-size-pages |
Integer | 25600 |
Initial Size of the Database in Pages |
size-collect-interval |
Long | 1000 |
Interval to collect the Usage |
page-size-current |
Integer | 2048 |
Current Size of the Database Pages |
page-size-recommended |
Integer | 2048 |
Recommended Size of the Database Pages |
page-size-max |
Integer | 32768 |
Maximum Page Size |
perform-compact-on-startup |
Boolean | false |
Perform a compact of the page.db on startup if current page size is equal to recommended page size |
perform-resize-on-startup |
Boolean | false |
Perform a page resize on startup if the recommended size is greater than the current page size |
Cache (cache/) — Cache Settings
| Parameter | Type | Default | Description |
|---|---|---|---|
min-size |
Integer | 1024 |
Min. Size (Pages) |
max-size |
Integer | 2048 |
Max. Size (Pages) |
Transaction Log (transaction-log/) — Transaction Log Settings
| Parameter | Type | Default | Description |
|---|---|---|---|
path |
String | — | Path of the Transaction Log (transaction.log) |
checkpoint-size |
Long | 104857600 |
Size at which a Checkpoint is performed |
force-sync |
Boolean | false |
Force a sync with the disk |
Swap (swap/) — Swap Settings
| Parameter | Type | Default | Description |
|---|---|---|---|
path |
String | — | Path of Swap Files |
roll-over-size |
Long | 10485760 |
Roll Over Size |
Durable Subscriber (durable-subscriber/) — Durable Subscriber Settings
| Parameter | Type | Default | Description |
|---|---|---|---|
path |
String | — | Path of Durable Subscriber Files |
Topic Manager Swiftlet (sys$topicmanager)
Topic Manager
Root Properties:
| Parameter | Type | Default | Description |
|---|---|---|---|
flowcontrol-enabled |
Boolean | true |
Enable/Disable Publish/Subscribe Flow Control |
direct-subscriber-selection |
Boolean | true |
Select Subscribers directly and do NOT interpret the Publisher's Topic Name as SQL-Like Predicate |
Topics (topics/) — Topic Definitions
Announce Filters (announce-filters/) — Topic Announce Filters
| Parameter | Type | Default | Description |
|---|---|---|---|
routername |
String | — | SQL LIKE Predicate to match router names |
filter-type |
String | exclude |
Filter Type |
Slow Subscriber Conditions (slow-subscriber-conditions/) — Slow Subscriber Conditions
| Parameter | Type | Default | Description |
|---|---|---|---|
max-messages |
Long | 500 |
Maximum Messages in Subscriber Queue |
persistence-mode |
String | non_persistent |
Persistence Mode |
subscription-type |
String | all |
Subscription Type |
disconnect-non-durable-subscriber |
Boolean | false |
Disconnect Non-Durable Subscriber |
disconnect-delete-durable-subscriber |
Boolean | false |
Disconnect and Delete Durable Subscriber |
Static Remote Router Subscriptions (static-remote-router-subscriptions/) — Static Remote Router Subscriptions
Scheduler Swiftlet (sys$scheduler)
Scheduler Swiftlet
Calendars (calendars/) — Calendars
| Parameter | Type | Default | Description |
|---|---|---|---|
type |
String | exclude |
Calendar Type |
base-calendar |
String | — | Calendar which is Base for this Calendar |
enable-weekdays |
Boolean | false |
Enable Week Days on this Calendar |
enable-monthdays |
Boolean | false |
Enable Month Days on this Calendar |
enable-monthdays-last |
Boolean | false |
Enable Last Month Day on this Calendar |
enable-annualdays |
Boolean | false |
Enable Annual Days on this Calendar |
enable-dateranges |
Boolean | false |
Enable Dange Ranges on this Calendar |
Job Schedules (schedules/) — Job Schedules
| Parameter | Type | Default | Description |
|---|---|---|---|
enabled |
Boolean | false |
Schedule enabled/disabled |
logging-enabled |
Boolean | false |
If true, start/stop are logged in SwiftMQ's log file |
calendar |
String | — | Apply this Calendar |
job-group |
String | — | Job Group |
job-name |
String | — | Job Name |
date-from |
String | now |
From Date |
date-to |
String | forever |
To Date |
max-runtime |
String | — | n(s|m|h), e.g. 30m |
time-expression |
String | — | (at HH:mm[:ss][, HH:mm[:ss]...]) | (start HH:mm[:ss] stop HH:mm[:ss] delay n(s|m|h [repeat n]) |
XA Resource Manager Swiftlet (sys$xa)
XA Resource Manager Swiftlet
Root Properties:
| Parameter | Type | Default | Description |
|---|---|---|---|
scan-interval |
Long | 20000 |
Interval to scan prepared XA transaction to put into the Usage List |
default-transaction-timeout |
Long | 0 |
Max. time a XA transaction can run, thereafter it will be rolled back |
Routing Swiftlet (sys$routing)
Routing Swiftlet
Root Properties:
| Parameter | Type | Default | Description |
|---|---|---|---|
reject-disconnect-delay |
Long | 5000 |
Time (ms) after which a rejected Connection is closed |
stage-valid-timeout |
Long | 15000 |
Time (ms) after which a Protocol Stage in a wait State becomes invalid |
roundrobin-enabled |
Boolean | false |
Enables/Disables Round Robin Scheduling |
inbound-flow-control-enabled |
Boolean | false |
Enables/Disables Inbound Flow Control |
crfactory-class |
String | com.swiftmq.auth.ChallengeResponseFactoryImpl |
Challenge/Response Factory Class |
route-announce-hop-limit |
Integer | 3 |
Maximum Hop Count for Route Announce (-1 = unlimited) |
Static Routes (static-routes/) — Static Route Definitions
Route Filters (filters/) — Route Filter Definitions
| Parameter | Type | Default | Description |
|---|---|---|---|
type |
String | — | Filter Type |
Listeners (listeners/) — Listener Definitions
| Parameter | Type | Default | Description |
|---|---|---|---|
bindaddress |
String | — | Listener Bind IP Address |
port |
Integer | — | Listener Port |
use-tcp-no-delay |
Boolean | true |
Use Tcp No Delay |
socketfactory-class |
String | com.swiftmq.net.PlainSocketFactory |
Listener Socketfactory Class |
password |
String | — | Password |
keepalive-interval |
Long | 60000 |
Interval for sending Keep Alive Messages |
inbound-transaction-size |
Integer | 20 |
Number of Messages per Transaction |
inbound-window-size |
Integer | 10 |
Max. Number of open Transactions |
router-input-buffer-size |
Integer | 131072 |
Router Network Input Buffer Size |
router-input-extend-size |
Integer | 65536 |
Router Network Input Extend Size |
router-output-buffer-size |
Integer | 131072 |
Router Network Output Buffer Size |
router-output-extend-size |
Integer | 131072 |
Router Network Output Extend Size |
use-compression |
Boolean | false |
Uses Wirelevel Compression if enabled |
use-xa |
Boolean | true |
Uses 2 Phase Commit Protocol (XA) if enabled |
Connectors (connectors/) — Connector Definitions
| Parameter | Type | Default | Description |
|---|---|---|---|
hostname |
String | — | Remote Hostname |
enabled |
Boolean | true |
Enables/Disables this Connector |
port |
Integer | — | Remote Port |
use-tcp-no-delay |
Boolean | true |
Use Tcp No Delay |
socketfactory-class |
String | com.swiftmq.net.PlainSocketFactory |
Connector Socketfactory Class |
password |
String | — | Password |
retry-time |
Long | 60000 |
Retry Time |
inbound-transaction-size |
Integer | 20 |
Number of Messages per Transaction |
inbound-window-size |
Integer | 10 |
Max. Number of open Transactions |
router-input-buffer-size |
Integer | 131072 |
Router Network Input Buffer Size |
router-input-extend-size |
Integer | 65536 |
Router Network Input Extend Size |
router-output-buffer-size |
Integer | 131072 |
Router Network Output Buffer Size |
router-output-extend-size |
Integer | 131072 |
Router Network Output Extend Size |
use-compression |
Boolean | false |
Uses Wirelevel Compression if enabled |
use-xa |
Boolean | true |
Uses 2 Phase Commit Protocol (XA) if enabled |
Management Swiftlet (sys$mgmt)
Management Swiftlet
Root Properties:
| Parameter | Type | Default | Description |
|---|---|---|---|
authentication-enabled |
Boolean | false |
Enables/Disables Authentication |
admin-roles-enabled |
Boolean | false |
Enables/Disables Administration Roles |
admintool-connect-logging-enabled |
Boolean | true |
Enables/Disables Connect/Disconnect Logging of Admin Tools |
crfactory-class |
String | com.swiftmq.auth.ChallengeResponseFactoryImpl |
Challenge/Response Factory Class |
password |
String | — | Authentication Password |
flush-interval |
Long | 500 |
Interval in which the Event queue is flushed to the SwiftMQ Explorers |
Roles (roles/) — Administration Roles
JMX Settings (jmx/) — JMX Settings
| Parameter | Type | Default | Description |
|---|---|---|---|
enabled |
Boolean | false |
Enables/Disabled JMX Administration |
groupable-objectnames |
Boolean | true |
Creates groupable Objectnames instead of flat Names |
Message Interface Settings (message-interface/) — Message Interface Settings
| Parameter | Type | Default | Description |
|---|---|---|---|
enabled |
Boolean | false |
Enables/Disabled Administration via Message Interface |
request-queue-name |
String | swiftmqmgmt-message-interface |
Input Queue Name for Admin Requests |
Threadpool Swiftlet (sys$threadpool)
Threadpool Swiftlet
Root Properties:
| Parameter | Type | Default | Description |
|---|---|---|---|
collect-interval |
Long | 1000 |
Interval for collecting the Thread Counts |
group-shutdown-order |
String | — | The order in which the groups are being shut down |
Groups (groups/) — Event Loop Groups
| Parameter | Type | Default | Description |
|---|---|---|---|
freezable |
Boolean | true |
If true, the groups event loops can be frozen for HA |
Ad Hoc Platform (adhocplatform/) — Configures the Ad Hoc Platform Thread Factory
| Parameter | Type | Default | Description |
|---|---|---|---|
core-pool-size |
Integer | 0 |
Minimum number of threads to keep in the pool |
max-pool-size |
Integer | 30 |
Maximum number of threads in the pool |
keepalive |
Long | 1000 |
Keep alive time for idle threads in milliseconds |
JNDI Swiftlet (sys$jndi)
JNDI Swiftlet
JNDI Replication (jndi-replications/) — JNDI Replication Definitions
| Parameter | Type | Default | Description |
|---|---|---|---|
enabled |
Boolean | false |
Enabled/Disabled |
keepalive-interval |
Long | 60000 |
Keepalive Interval |
keepalive-lookup-name |
String | test |
Name to use for Lookup during Keep Alive |
destination-context |
String | — | Destination Context |
name-prefix |
String | — | For LDAP you specify cn= here |
Aliases (aliases/) — Alias Definitions
| Parameter | Type | Default | Description |
|---|---|---|---|
map-to |
String | — | Mapping to generic Name |
Remote Queues (remote-queues/) — Remote Queue Definitions
Queue Manager Swiftlet (sys$queuemanager)
Queue Manager
Root Properties:
| Parameter | Type | Default | Description |
|---|---|---|---|
collect-interval |
Long | 1000 |
Interval for collecting the Number of Messages per Queue |
cluster-metric-interval |
Long | 10000 |
Interval for sending metrics about clustered queues |
max-flowcontrol-delay |
Long | 5000 |
Maximum Flow Control Delay |
log-expired-messages |
Boolean | false |
Log Expired Messages to the 'Warning' Log File |
log-duplicate-messages |
Boolean | false |
Log Duplicate Messages to the 'Warning' Log File |
deliver-expired-messages |
Boolean | false |
Deliver Expired Messages to Clients |
cluster-topic |
String | swiftmq.cluster |
Cluster Message Exchange Topic |
multi-queue-transaction-global-lock |
Boolean | false |
Use a global lock for multi Queue Transactions |
System Queue Controllers (queue-controllers/) — Controllers for System Queues
| Parameter | Type | Default | Description |
|---|---|---|---|
predicate |
String | — | Queue Name SQL-Like Predicate |
cache-size |
Integer | 500 |
Message Queue Cache Size |
cache-size-bytes-kb |
Integer | -1 |
Message Queue Cache Size Bytes (KB) |
cleanup-interval |
Long | 120000 |
Interval to check for expired Messages |
flowcontrol-start-queuesize |
Integer | 400 |
Flow Control starts at this Queue Size |
max-messages |
Integer | -1 |
Max. Messages for this Queue |
persistence-mode |
String | as_message |
Persistence Mode of this Queue |
consumer-mode |
String | shared |
Consumer Mode |
duplicate-detection-enabled |
Boolean | true |
Enables/Diables Duplicate Message Detection |
duplicate-detection-backlog-size |
Integer | 2000 |
Size of the Backlog for Duplicate Message Detection |
monitor-alert-threshold |
Integer | -1 |
Threshold in Number of Messages after which the Monitor Swiftlet sends a Queue Monitor Alert |
Clustered Queues (clustered-queues/) — Clustered Queues
| Parameter | Type | Default | Description |
|---|---|---|---|
message-group-enabled |
Boolean | false |
Enables/Diables grouping of Messages |
message-group-property |
String | JMSXGroupID |
Name of Property to group Messages |
message-group-expiration |
Long | -1 |
Time (ms) after the last occurance after which a message group expires |
message-group-expiration-cleanup-interval |
Long | -1 |
Interval (ms) in which message groups are checked for expiration |
Composite Queues (composite-queues/) — Composite Queues
Queues (queues/) — Queue Definitions
| Parameter | Type | Default | Description |
|---|---|---|---|
cache-size |
Integer | 500 |
Message Queue Cache Size |
cache-size-bytes-kb |
Integer | -1 |
Message Queue Cache Size Bytes (KB) |
cleanup-interval |
Long | 120000 |
Interval to check for expired Messages |
max-messages |
Integer | -1 |
Max. Messages for this Queue |
persistence-mode |
String | as_message |
Persistence Mode of this Queue |
consumer-mode |
String | shared |
Consumer Mode |
flowcontrol-start-queuesize |
Integer | 400 |
Flow Control starts at this Queue Size |
duplicate-detection-enabled |
Boolean | true |
Enables/Diables Duplicate Message Detection |
duplicate-detection-backlog-size |
Integer | 2000 |
Size of the Backlog for Duplicate Message Detection |
monitor-alert-threshold |
Integer | -1 |
Threshold in Number of Messages after which the Monitor Swiftlet sends a Queue Monitor Alert |
Authentication Swiftlet (sys$authentication)
Authentication Swiftlet
Root Properties:
| Parameter | Type | Default | Description |
|---|---|---|---|
authentication-enabled |
Boolean | false |
Enabes/Disables Authentication |
password-check-only |
Boolean | false |
If authentication is enabled, performs password checks only but not resource grants |
Groups (groups/) — Authentication Group Definitions
Resource Limit Groups (resource-limit-groups/) — Resource Limit Group Definitions
| Parameter | Type | Default | Description |
|---|---|---|---|
max-connections |
Integer | -1 |
Maximum Connections |
max-tempqueues |
Integer | 50 |
Maximum temp. Queues/Connection |
max-sessions |
Integer | 50 |
Maximum Sessions/Connection |
max-producers |
Integer | 50 |
Maximum Producers/Connection |
max-consumers |
Integer | 50 |
Maximum Consumers/Connection |
Users (users/) — User Definitions
| Parameter | Type | Default | Description |
|---|---|---|---|
password |
String | — | Password |
group |
String | public |
Authentication Group |
resource-limit-group |
String | public |
Resource Limit Group |
JMS Swiftlet (sys$jms)
JMS Swiftlet
Root Properties:
| Parameter | Type | Default | Description |
|---|---|---|---|
allow-same-clientid |
Boolean | false |
Allows multiple connection with the same JMS Client Id if set to true |
collect-interval |
Long | 10000 |
Collect Interval Messages/Sec |
max-connections |
Integer | -1 |
Maximum JMS Connections |
consumer-cache-low-water-mark |
Integer | 100 |
Consumer caches are refilled when reaching this mark |
crfactory-class |
String | com.swiftmq.auth.ChallengeResponseFactoryImpl |
Challenge/Response Factory Class |
IntraVM Connection Factories (intravm-connection-factories/) — IntraVM Connection Factories
| Parameter | Type | Default | Description |
|---|---|---|---|
smqp-producer-reply-interval |
Integer | 20 |
Number of SMQP Requests after which a SMQP Reply is required |
smqp-consumer-cache-size |
Integer | 500 |
Cache Size per Consumer (Messages) |
smqp-consumer-cache-size-kb |
Integer | 2048 |
Cache Size per Consumer (KB) |
jms-client-id |
String | — | JMS Client Id for durable Subscribers |
jms-default-delivery-mode |
String | persistent |
JMS Default Delivery Mode |
jms-default-message-ttl |
Long | 0 |
JMS Default Message TTL |
jms-default-message-priority |
Integer | 4 |
JMS Default Message Priority |
jms-default-message-id-enabled |
Boolean | true |
JMS Default Message Id Enabled |
jms-default-message-timestamp-enabled |
Boolean | true |
JMS Default Message Timestamp Enabled |
thread-context-classloader-for-getobject |
Boolean | false |
Use the Thread Context Classloader for getObject() |
Listeners (listeners/) — Listener Definitions
| Parameter | Type | Default | Description |
|---|---|---|---|
connectaddress |
String | — | Listener Connect IP Address for NAT |
connectport |
Integer | -1 |
Listener Connect Port for NAT |
bindaddress |
String | — | Listener Bind IP Address |
port |
Integer | — | Listener Port |
hostname2 |
String | — | Hostname of the 2nd HA Instance |
connectaddress2 |
String | — | Listener Connect IP Address for NAT of the 2nd HA Instance |
connectport2 |
Integer | -1 |
Listener Connect Port for NAT of the 2nd HA Instance |
bindaddress2 |
String | — | Listener Bind IP Address of the 2nd HA Instance |
port2 |
Integer | -1 |
Listener Port 2nd HA Instance of the 2nd HA Instance |
use-tcp-no-delay |
Boolean | true |
Use Tcp No Delay |
socketfactory-class |
String | com.swiftmq.net.PlainSocketFactory |
Listener Socketfactory Class |
keepalive-interval |
Long | 60000 |
Interval for sending Keep Alive Messages |
max-connections |
Integer | -1 |
Maximum JMS Connections for this Listener |
router-input-buffer-size |
Integer | 131072 |
Router Network Input Buffer Size |
router-input-extend-size |
Integer | 65536 |
Router Network Input Extend Size |
router-output-buffer-size |
Integer | 131072 |
Router Network Output Buffer Size |
router-output-extend-size |
Integer | 65536 |
Router Network Output Extend Size |
AMQP Swiftlet (sys$amqp)
AMQP Swiftlet
Root Properties:
| Parameter | Type | Default | Description |
|---|---|---|---|
allow-same-containerid |
Boolean | true |
If set to false, it is handled like a JMS Client Id |
collect-interval |
Long | 1000 |
Collect Interval Messages/Sec |
Listeners (listeners/) — Listener Definitions
| Parameter | Type | Default | Description |
|---|---|---|---|
bindaddress |
String | — | Listener Bind IP Address |
port |
Integer | 5672 |
Listener Port |
max-connections |
Integer | -1 |
Maximum Connections for Listener |
sasl-enabled |
Boolean | true |
Enabled/Disabled SASL Authentication |
connection-template |
String | default |
Connection Template to use |
Declarations (declarations/) — Declarations Section
MQTT Swiftlet (sys$mqtt)
MQTT Swiftlet
Root Properties:
| Parameter | Type | Default | Description |
|---|---|---|---|
collect-interval |
Long | 1000 |
Collect Interval Messages/Sec |
session-timeout |
Long | 168 |
Time in hours after which a unused Session is deleted |
Listeners (listeners/) — Listener Definitions
| Parameter | Type | Default | Description |
|---|---|---|---|
bindaddress |
String | — | Listener Bind IP Address |
port |
Integer | 1883 |
Listener Port |
max-connections |
Integer | -1 |
Maximum Connections for Listener |
connection-template |
String | default |
Connection Template to use |
Declarations (declarations/) — Declarations Section
Deploy Swiftlet (sys$deploy)
Deploy Swiftlet
Deploy Spaces (deploy-spaces/) — Deploy Spaces
| Parameter | Type | Default | Description |
|---|---|---|---|
path |
String | — | Path Name |
check-interval |
Long | 60000 |
Check Interval for Deployment Changes |
Streams Swiftlet (sys$streams)
SwiftMQ Streams Microservice Engine
Root Properties:
| Parameter | Type | Default | Description |
|---|---|---|---|
collect-interval |
Long | 1000 |
Interval for collecting Stream usage information |
stream-grant-predicates |
String | stream\_% |
SQL-Like Predicates to grant Stream Topic access |
stream-lib-directory |
String | ../data/streamlib |
Hot deploy directory for external jar files used from a stream |
Domains (domains/) — Stream Domain Names
Configuration Persistence
Changes made through the CLI are written to routerconfig.xml when the router shuts down cleanly. Properties marked as "reboot required" take effect only after a Swiftlet restart. All other property changes take effect immediately.