Skip to content

System Properties

Overview

SwiftMQ uses Java system properties (passed via -D flags or set in startup scripts) to control various runtime behaviors. These are set in the router/client startup scripts or passed on the JVM command line.

Router Properties

General

Property Default Description
swiftmq.directory.autocreate If true, directories required by SwiftMQ will be created automatically if missing.
swiftmq.paths.absolute Controls whether SwiftMQ uses absolute paths for file operations.
swiftmq.preconfig Specifies preconfiguration parameters for router startup.

JMS Behavior

Property Default Description
swiftmq.jms.keepalive.missing.threshold 5 Number of missing keepalive packets before a connection is considered dead.

Network/TLS

Property Default Description
javax.net.ssl.keyStore ../certs/server.keystore Specifies the path to the server's SSL keystore.
javax.net.ssl.keyStorePassword secret Password for the server's SSL keystore.
javax.net.ssl.trustStore ../certs/client.truststore Specifies the path to the SSL truststore.
javax.net.ssl.trustStorePassword secret Password for the SSL truststore.
io.netty.noUnsafe true Disables Netty's use of unsafe operations.

Scheduler

Property Default Description
swiftmq.swiftlet.scheduler.respectdst true If true, the scheduler swiftlet will respect daylight saving time.

Store/Persistence

Property Default Description
swiftmq.store.analyze false Controls store analysis/repair on startup.
swiftmq.store.txlog.precreate true Controls whether transaction log files are precreated for the store.

Client Properties

AMQP Client

Property Default Description
swiftmq.amqp.open.hostname Hostname to use in the AMQP open frame.

CLI

Property Default Description
cli.username Username for CLI authentication.
cli.password Password for CLI authentication.

Connection & Protocol

Property Default Description
swiftmq.mgmt.protocol.version 750 Protocol version used for management connections.
swiftmq.smqp.version 750 SMQP protocol version used for client connections.
swiftmq.filetransfer.protocol.version 941 Protocol version for file transfer operations.
swiftmq.request.timeout 60000 Timeout in milliseconds for client request/response operations.

Debugging/Logging

Property Default Description
swiftmq.client.debugtofile.enabled false Enables or disables client debug logging to file.
swiftmq.client.debugtofile.filename swiftmqclient Filename for client debug logs.
swiftmq.client.debugtofile.generations 10 Number of log file generations to keep.
swiftmq.client.debugtofile.rolloversizekb 1024 Log file rollover size in KB.
swiftmq.springsupport.debug false Enables debug logging for Spring JMS support classes.

General

Property Default Description
swiftmq.version.properties ../version.properties Path to the version properties file.

JMS Behavior

Property Default Description
swiftmq.cc.ss.delay 100 Delay in milliseconds for connection consumer server session polling.
swiftmq.jms.keepalive.missing.threshold 5 Number of missing keepalive packets before a connection is considered dead.
swiftmq.jms.persistent.asyncsend false If true, enables asynchronous send for persistent messages.

Network/TLS

Property Default Description
swiftmq.tcp.no.delay true If true, disables Nagle's algorithm for TCP connections.
javax.net.ssl.trustStore ../certs/client.truststore Specifies the path to the SSL truststore.
javax.net.ssl.trustStorePassword secret Password for the SSL truststore.

Reconnection

Property Default Description
swiftmq.reconnect.debug false Enables debug logging for client reconnection logic.
swiftmq.reconnect.max.internal.retry.count 10 Maximum number of internal retries for client reconnection.

Security

Property Default Description
swiftmq.security.objectmessage.trusted.pkg * Specifies trusted packages for deserialization in ObjectMessages.