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. |