Configuration
Configuration properties
Deprecated settings for Axon Server connection
While these configuration options are still valid, please migrate to the new ones specified below. In future releases, these configuration options might no longer exist.
Property | Environment Variable | Default value | Description |
---|---|---|---|
synapse.server-list |
SYNAPSE_SERVER_LIST |
|
DEPRECATED, use |
synapse.use-tls |
SYNAPSE_USE_TLS |
|
DEPRECATED, use |
synapse.certificate-chain |
SYNAPSE_CERTIFICATE_CHAIN |
DEPRECATED, use `synapse.axonServer.trustManagerFile. Path to the file with a certificate |
Axon Server connection
Property | Environment Variable | Default value | Description |
---|---|---|---|
synapse.axon-server.server-list |
SYNAPSE_AXON_SERVER_SERVER_LIST |
localhost:8124 |
Comma separated list of known Axon Server instances. See "TLS for outgoing connections to AxonServer" below for TLS settings |
synapse.axon-server-http.port |
SYNAPSE_AXON_SERVER_HTTP_PORT |
8024 |
HTTP port of Axon Server. See "TLS for outgoing connections to AxonServer" below for TLS settings |
synapse.axon-server-http.clients-for-component-endpoints-path |
SYNAPSE_AXON_SERVER_HTTP_CLIENTS_FOR_COMPONENT_ENDPOINTS_PATH |
v1/components/clients |
Path in Axon Server used to retrieve information about other synapse instances |
synapse.client-id |
SYNAPSE_CLIENT_ID |
JVM process name |
Synapse instance identifier as seen by the Axon Server |
synapse.component-name |
SYNAPSE_COMPONENT_NAME |
|
Synapse component name as seen by the Axon Server |
synapse.client-component-name |
SYNAPSE_CLIENT_COMPONENT_NAME |
|
Synapse client component name as seen by the Axon Server |
synapse.connection-timeout |
SYNAPSE_CONNECTION_TIMEOUT |
|
Duration of inactivity, after which Synapse closes connection to the Axon Server |
synapse.default-context |
SYNAPSE_DEFAULT_CONTEXT |
|
The name of the default Axon Server context. It’s applied when the environment doesn’t provide context listing, for example, AS SE or AxonIQ Cloud. |
Security
Property | Environment Variable | Default value | Description |
---|---|---|---|
synapse.http-endpoints |
SYNAPSE_HTTP_ENDPOINTS |
Comma-separated list of Axon Server’s REST endpoints for fallback (applies for AS before 2023.0.0) |
Authentication and authorization
Property | Environment Variable | Default value | Description |
---|---|---|---|
synapse.internal.context |
SYNAPSE_INTERNAL_CONTEXT |
|
Context this synapse instance connects to |
synapse.internal.client-id |
SYNAPSE_INTERNAL_CLIENT_ID |
|
Client id used by this synapse instance. Important if using multiple synapse instances. |
synapse.internal.component-name |
SYNAPSE_INTERNAL_COMPONENT_NAME |
|
Component name used when contacting Axon Server. Should be the same for all synapse instances. |
synapse.auth.enabled |
SYNAPSE_AUTH_ENABLED |
|
Whether Synapse configuration APIs expect clients to provide username/password combination or token |
synapse.auth.token |
SYNAPSE_AUTH_TOKEN |
Axon Server access control token. Used by synapse to connect to AxonServer |
|
synapse.auth.sensitive-data-encryption-key |
SYNAPSE_AUTH_SENSITIVE_DATA_ENCRYPTION_KEY |
Encryption key for securing sensitive data. It’s not possible to change the key once set without recreating authentication objects. |
TLS for outgoing connections to AxonServer
Property | Environment Variable | Default value | Description |
---|---|---|---|
synapse.axon-server.tls-enabled |
SYNAPSE_AXON_SERVER_TLS_ENABLED |
false |
Whether to enable TLS for connections from synapse to Axon Server via gRPC |
synapse.axon-server.trust-manager-file |
SYNAPSE_AXON_SERVER_TRUST_MANAGER_FILE |
File containing a trust manager for specifying trust for certificates presented by Axon Server via gRPC |
|
synapse.axon-server-http.tls-enabled |
SYNAPSE_AXON_SERVER_HTTP_TLS_ENABLED |
false |
Whether to enable TLS for connections from synapse to Axon Server via http |
synapse.axon-server-http.trust-manager-file |
SYNAPSE_AXON_SERVER_HTTP_TRUST_MANAGER_FILE |
File containing a trust manager for specifying trust for certificates presented by Axon Server via http |
TLS for outgoing connections client applications
Property | Environment Variable | Default value | Description |
---|---|---|---|
synapse.synapse-handlers-http.trust-manager-files |
SYNAPSE_SYNAPSE_HANDLERS_HTTP_TRUST_MANAGER_FILEs |
File containing a trust manager for specifying trust for certificates presented by client applications |
TLS for incoming connections
Property | Environment Variable | Default value | Description |
---|---|---|---|
synapse.server.tls-enabled |
SYNAPSE_SERVER_TLS_ENABLED |
false |
Whether to enable TLS for connections coming to synapse |
synapse.server.key-store-file |
SYNAPSE_SERVER_KEY_STORE_FILE |
A file containing a key store. Synapse expects either |
|
synapse.server.key-store-password |
SYNAPSE_SERVER_KEY_STORE_PASSWORD |
The password for the selected key store |
|
synapse.server.key-store-type |
SYNAPSE_SERVER_KEY_STORE_TYPE |
The type of the selected key store. Synapse expects either |
Events
Property | Environment Variable | Default value | Description |
---|---|---|---|
synapse.event.streaming.buffer-size |
SYNAPSE_EVENT_STREAMING_BUFFER_SIZE |
100 |
The number of events the Synapse is pre-fetching |
Storage
Property | Environment Variable | Default value | Description |
---|---|---|---|
synapse.storage.type |
SYNAPSE_STORAGE_TYPE |
local |
Used storage backend. Valid values are |
synapse.storage.context |
SYNAPSE_STORAGE_CONTEXT |
synapse |
Context to use when using |
synapse.storage.component-name |
SYNAPSE_STORAGE_COMPONENT_NAME |
synapse-storage |
Component-name to use when using |
synapse.storage.min-token-offset |
SYNAPSE_STORAGE_MIN_TOKEN_OFFSET |
100 |
Minimum amount of events an event-token (an event processor) needs to have progressed before it stores progress back to configuration. |
synapse.storage.token |
SYNAPSE_STORAGE_TOKEN |
Authentication token used for the storage component to connect to Axon Server. This may be different from the system token used. |
High availability
Ensure these properties are the same on all Synapse instances except you have good reasons to do otherwise.
Property | Environment Variable | Default value | Description |
---|---|---|---|
synapse.event-handler.balancing.enabled |
SYNAPSE_EVENT_HANDLER_BALANCING_ENABLED |
false |
Whether or not to enable balancing of event handlers between synapse instances. Refer to High Availability. |
synapse.event-handler.balancing.synapse-discovery.timeout |
SYNAPSE_EVENT_HANDLER_BALANCING_SYNAPSE_DISCOVERY_TIMEOUT |
3s |
Timeout for contacting AS to discover synapse topology |
synapse.event-handler.balancing.synapse-discovery.retry-interval |
SYNAPSE_EVENT_HANDLER_BALANCING_SYNAPSE_DISCOVERY_RETRY_INTERVAL |
3s |
Interval for retrying to contact AS to discover synapse topology |
synapse.event-handler.balancing.synapse-discovery.poll-interval |
SYNAPSE_EVENT_HANDLER_BALANCING_SYNAPSE_DISCOVERY_POLL_INTERVAL |
0s |
Interval for polling new synapse discovery from AS. If zero, Synapse relies on topology updates via WebSocket instead of polling |
synapse.event-handler.balancing.web-socket.platform-endpoint |
SYNAPSE_EVENT_HANDLER_BALANCING_WEB_SOCKET_PLATFORM_ENDPOINT |
axonserver-platform-websocket |
Specifies the endpoint to use for the WS connection to detect topology updates |
synapse.event-handler.balancing.web-socket.reconnect-interval |
SYNAPSE_EVENT_HANDLER_BALANCING_WEB_SOCKET_RECONNECT_INTERVAL |
3s |
Interval of attempting reconnects of the WS connection |
synapse.event-handler.balancing.handler-run-inertia |
SYNAPSE_EVENT_HANDLER_BALANCING_HANDLER_RUN_INTERTIA |
5s |
Inertia Synapse to changes in configuration. Synapse waits for at least the configured amount of time before applying a bunch of new changes. This allows Synapse to process multiple changes in one go |
synapse.event-handler.balancing.consistent-hashing-function |
SYNAPSE_EVENT_HANDLER_BALANCING_CONSISTENT_HASHING_FUNCTION |
"MURMUR3_32" |
Name of the hashing function to use to decide which Synapse instance takes which handler. Valid values are |