Stand with Ukraine flag
Try it now Pricing
Community Edition
Installation > Configuration > HTTP Transport parameters
Getting Started Documentation Devices Library Guides
Architecture API FAQ
On this page

HTTP transport parameters

Server common properties

ParameterEnvironment VariableDefault ValueDescription
server.address HTTP_BIND_ADDRESS 0.0.0.0 Server bind address
server.port HTTP_BIND_PORT 8081 Server bind port
server.ssl.enabled SSL_ENABLED false Enable/disable SSL support
server.ssl.credentials.type SSL_CREDENTIALS_TYPE PEM Server credentials type (PEM - pem certificate file; KEYSTORE - java keystore)
server.ssl.credentials.pem.cert_file SSL_PEM_CERT server.pem Path to the server certificate file (holds server certificate or certificate chain, may include server private key)
server.ssl.credentials.pem.key_file SSL_PEM_KEY server_key.pem Path to the server certificate private key file. Optional by default. Required if the private key is not present in server certificate file;
server.ssl.credentials.pem.key_password SSL_PEM_KEY_PASSWORD server_key_password Server certificate private key password (optional)
server.ssl.credentials.keystore.type SSL_KEY_STORE_TYPE PKCS12 Type of the key store (JKS or PKCS12)
server.ssl.credentials.keystore.store_file SSL_KEY_STORE classpath:keystore/keystore.p12 Path to the key store that holds the SSL certificate
server.ssl.credentials.keystore.store_password SSL_KEY_STORE_PASSWORD thingsboard Password used to access the key store
server.ssl.credentials.keystore.key_alias SSL_KEY_ALIAS tomcat Key alias
server.ssl.credentials.keystore.key_password SSL_KEY_PASSWORD thingsboard Password used to access the key
server.http2.enabled HTTP2_ENABLED true Enable/disable HTTP/2 support

Spring common parameters

ParameterEnvironment VariableDefault ValueDescription
spring.main.allow-circular-references "true" Spring Boot configuration property that controls whether circular dependencies between beans are allowed.
spring.servlet.multipart.max-file-size SPRING_SERVLET_MULTIPART_MAX_FILE_SIZE 50MB Total file size cannot exceed 50MB when configuring file uploads
spring.servlet.multipart.max-request-size SPRING_SERVLET_MULTIPART_MAX_REQUEST_SIZE 50MB Total request size for a multipart/form-data cannot exceed 50MB

Zookeeper connection parameters. Used for service discovery.

ParameterEnvironment VariableDefault ValueDescription
zk.enabled ZOOKEEPER_ENABLED false Enable/disable zookeeper discovery service.
zk.url ZOOKEEPER_URL localhost:2181 Zookeeper connect string
zk.retry_interval_ms ZOOKEEPER_RETRY_INTERVAL_MS 3000 Zookeeper retry interval in milliseconds
zk.connection_timeout_ms ZOOKEEPER_CONNECTION_TIMEOUT_MS 3000 Zookeeper connection timeout in milliseconds
zk.session_timeout_ms ZOOKEEPER_SESSION_TIMEOUT_MS 3000 Zookeeper session timeout in milliseconds
zk.zk_dir ZOOKEEPER_NODES_DIR /thingsboard Name of the directory in zookeeper 'filesystem'
zk.recalculate_delay ZOOKEEPER_RECALCULATE_DELAY_MS 0 The recalculate_delay property is recommended in a microservices architecture setup for rule-engine services. This property provides a pause to ensure that when a rule-engine service is restarted, other nodes don't immediately attempt to recalculate their partitions. The delay is recommended because the initialization of rule chain actors is time-consuming. Avoiding unnecessary recalculations during a restart can enhance system performance and stability.

Cache parameters

ParameterEnvironment VariableDefault ValueDescription
cache.type CACHE_TYPE redis caffeine or redis
cache.entityLimits.timeToLiveInMinutes CACHE_SPECS_ENTITY_LIMITS_TTL 5 Entity limits cache TTL
cache.entityLimits.maxSize CACHE_SPECS_ENTITY_LIMITS_MAX_SIZE 100000 0 means the cache is disabled

Redis configuration parameters

ParameterEnvironment VariableDefault ValueDescription
redis.connection.type REDIS_CONNECTION_TYPE standalone Redis deployment type: Standalone (single Redis node deployment) OR Cluster
redis.standalone.host REDIS_HOST localhost Redis connection host
redis.standalone.port REDIS_PORT 6379 Redis connection port
redis.standalone.useDefaultClientConfig REDIS_USE_DEFAULT_CLIENT_CONFIG true Use default Redis configuration file
redis.standalone.clientName REDIS_CLIENT_NAME standalone this value may be used only if you used not default ClientConfig
redis.standalone.connectTimeout REDIS_CLIENT_CONNECT_TIMEOUT 30000 this value may be used only if you used not default ClientConfig
redis.standalone.readTimeout REDIS_CLIENT_READ_TIMEOUT 60000 this value may be used only if you used not default ClientConfig
redis.standalone.usePoolConfig REDIS_CLIENT_USE_POOL_CONFIG false this value may be used only if you used not default ClientConfig
redis.cluster.nodes REDIS_NODES Comma-separated list of "host:port" pairs to bootstrap from.
redis.cluster.max-redirects REDIS_MAX_REDIRECTS 12 Maximum number of redirects to follow when executing commands across the cluster.
redis.cluster.useDefaultPoolConfig REDIS_USE_DEFAULT_POOL_CONFIG true if set false will be used pool config build from values of the pool config section
redis.sentinel.master REDIS_MASTER name of master node
redis.sentinel.sentinels REDIS_SENTINELS comma-separated list of "host:port" pairs of sentinels
redis.sentinel.password REDIS_SENTINEL_PASSWORD password to authenticate with sentinel
redis.sentinel.useDefaultPoolConfig REDIS_USE_DEFAULT_POOL_CONFIG true if set false will be used pool config build from values of the pool config section
redis.db REDIS_DB 0 db index
redis.password REDIS_PASSWORD db password
redis.ssl.enabled TB_REDIS_SSL_ENABLED false Enable/disable secure connection
redis.ssl.credentials.cert_file TB_REDIS_SSL_PEM_CERT Path redis server (CA) certificate
redis.ssl.credentials.user_cert_file TB_REDIS_SSL_PEM_KEY Path to user certificate file. This is optional for the client and can be used for two-way authentication for the client
redis.ssl.credentials.user_key_file TB_REDIS_SSL_PEM_KEY_PASSWORD Path to user private key file. This is optional for the client and only needed if ‘user_cert_file’ is configured.
redis.pool_config.maxTotal REDIS_POOL_CONFIG_MAX_TOTAL 128 Maximum number of connections that can be allocated by the connection pool
redis.pool_config.maxIdle REDIS_POOL_CONFIG_MAX_IDLE 128 Maximum number of idle connections that can be maintained in the pool without being closed
redis.pool_config.minIdle REDIS_POOL_CONFIG_MIN_IDLE 16 Minumum number of idle connections that can be maintained in the pool without being closed
redis.pool_config.testOnBorrow REDIS_POOL_CONFIG_TEST_ON_BORROW true Enable/Disable PING command send when a connection is borrowed
redis.pool_config.testOnReturn REDIS_POOL_CONFIG_TEST_ON_RETURN true The property is used to specify whether to test the connection before returning it to the connection pool.
redis.pool_config.testWhileIdle REDIS_POOL_CONFIG_TEST_WHILE_IDLE true The property is used in the context of connection pooling in Redis
redis.pool_config.minEvictableMs REDIS_POOL_CONFIG_MIN_EVICTABLE_MS 60000 Minimum amount of time that an idle connection should be idle before it can be evicted from the connection pool. Value set in milliseconds
redis.pool_config.evictionRunsMs REDIS_POOL_CONFIG_EVICTION_RUNS_MS 30000 Specifies the time interval in milliseconds between two consecutive eviction runs
redis.pool_config.maxWaitMills REDIS_POOL_CONFIG_MAX_WAIT_MS 60000 Maximum time in milliseconds where a client is willing to wait for a connection from the pool when all connections are exhausted
redis.pool_config.numberTestsPerEvictionRun REDIS_POOL_CONFIG_NUMBER_TESTS_PER_EVICTION_RUN 3 Specifies the number of connections to test for eviction during each eviction run
redis.pool_config.blockWhenExhausted REDIS_POOL_CONFIG_BLOCK_WHEN_EXHAUSTED true Determines the behavior when a thread requests a connection from the pool but there are no available connections and the pool cannot create more due to the maxTotal configuration

HTTP server parameters

ParameterEnvironment VariableDefault ValueDescription
transport.http.request_timeout HTTP_REQUEST_TIMEOUT 60000 HTTP request processing timeout in milliseconds
transport.http.max_request_timeout HTTP_MAX_REQUEST_TIMEOUT 300000 HTTP maximum request processing timeout in milliseconds
transport.http.max_payload_size HTTP_TRANSPORT_MAX_PAYLOAD_SIZE_LIMIT_CONFIGURATION /api/v1/*/rpc/**=65536;/api/v1/**=52428800 Semi-colon-separated list of urlPattern=maxPayloadSize pairs that define max http request size for specified url pattern. After first match all other will be skipped
transport.sessions.inactivity_timeout TB_TRANSPORT_SESSIONS_INACTIVITY_TIMEOUT 600000 Session inactivity timeout is a global configuration parameter that defines how long the device transport session will be opened after the last message arrives from the device. The parameter value is in milliseconds. The last activity time of the device session is updated if the device sends any message, including keepalive messages If there is no activity, the session will be closed, and all subscriptions will be deleted. We recommend this parameter to be in sync with device inactivity timeout ("state.defaultInactivityTimeoutInSec" or DEFAULT_INACTIVITY_TIMEOUT) parameter which is responsible for detection of the device connectivity status in the core service of the platform. The value of the session inactivity timeout parameter should be greater or equal to the device inactivity timeout. Note that the session inactivity timeout is set in milliseconds while device inactivity timeout is in seconds.
transport.sessions.report_timeout TB_TRANSPORT_SESSIONS_REPORT_TIMEOUT 3000 Interval of periodic check for expired sessions and report of the changes to session last activity time
transport.json.type_cast_enabled JSON_TYPE_CAST_ENABLED true Cast String data types to Numeric if possible when processing Telemetry/Attributes JSON
transport.json.max_string_value_length JSON_MAX_STRING_VALUE_LENGTH 0 Maximum allowed string value length when processing Telemetry/Attributes JSON (0 value disables string value length check)
transport.log.enabled TB_TRANSPORT_LOG_ENABLED true Enable/Disable log of transport messages to telemetry. For example, logging of LwM2M registration update
transport.log.max_length TB_TRANSPORT_LOG_MAX_LENGTH 1024 Maximum length of the log message. The content will be truncated to the specified value if needed
transport.stats.enabled TB_TRANSPORT_STATS_ENABLED true Enable/Disable collection of transport statistics
transport.stats.print-interval-ms TB_TRANSPORT_STATS_PRINT_INTERVAL_MS 60000 Interval of transport statistics logging

Queue configuration parameters

ParameterEnvironment VariableDefault ValueDescription
queue.type TB_QUEUE_TYPE kafka kafka (Apache Kafka) or aws-sqs (AWS SQS) or pubsub (PubSub) or service-bus (Azure Service Bus) or rabbitmq (RabbitMQ)
queue.prefix TB_QUEUE_PREFIX Global queue prefix. If specified, prefix is added before default topic name: 'prefix.default_topic_name'. Prefix is applied to all topics (and consumer groups for kafka) .
queue.kafka.bootstrap.servers TB_KAFKA_SERVERS localhost:9092 Kafka Bootstrap Servers
queue.kafka.ssl.enabled TB_KAFKA_SSL_ENABLED false Enable/Disable SSL Kafka communication
queue.kafka.ssl.truststore.location TB_KAFKA_SSL_TRUSTSTORE_LOCATION The location of the trust store file
queue.kafka.ssl.truststore.password TB_KAFKA_SSL_TRUSTSTORE_PASSWORD The password of trust store file if specified
queue.kafka.ssl.keystore.location TB_KAFKA_SSL_KEYSTORE_LOCATION The location of the key store file. This is optional for client and can be used for two-way authentication for client
queue.kafka.ssl.keystore.password TB_KAFKA_SSL_KEYSTORE_PASSWORD The store password for the key store file. This is optional for client and only needed if ‘ssl.keystore.location’ is configured. Key store password is not supported for PEM format
queue.kafka.ssl.key.password TB_KAFKA_SSL_KEY_PASSWORD The password of the private key in the key store file or the PEM key specified in ‘keystore.key’
queue.kafka.acks TB_KAFKA_ACKS all The number of acknowledgments the producer requires the leader to have received before considering a request complete. This controls the durability of records that are sent. The following settings are allowed:0,1 and all
queue.kafka.retries TB_KAFKA_RETRIES 1 Number of retries. Resend any record whose send fails with a potentially transient error
queue.kafka.compression.type TB_KAFKA_COMPRESSION_TYPE none none or gzip
queue.kafka.batch.size TB_KAFKA_BATCH_SIZE 16384 Default batch size. This setting gives the upper bound of the batch size to be sent
queue.kafka.linger.ms TB_KAFKA_LINGER_MS 1 This variable creates a small amount of artificial delay—that is, rather than immediately sending out a record
queue.kafka.max.request.size TB_KAFKA_MAX_REQUEST_SIZE 1048576 The maximum size of a request in bytes. This setting will limit the number of record batches the producer will send in a single request to avoid sending huge requests
queue.kafka.max.in.flight.requests.per.connection TB_KAFKA_MAX_IN_FLIGHT_REQUESTS_PER_CONNECTION 5 The maximum number of unacknowledged requests the client will send on a single connection before blocking
queue.kafka.buffer.memory TB_BUFFER_MEMORY 33554432 The total bytes of memory the producer can use to buffer records waiting to be sent to the server
queue.kafka.replication_factor TB_QUEUE_KAFKA_REPLICATION_FACTOR 1 The multiple copies of data over the multiple brokers of Kafka
queue.kafka.max_poll_interval_ms TB_QUEUE_KAFKA_MAX_POLL_INTERVAL_MS 300000 The maximum delay between invocations of poll() when using consumer group management. This places an upper bound on the amount of time that the consumer can be idle before fetching more records
queue.kafka.max_poll_records TB_QUEUE_KAFKA_MAX_POLL_RECORDS 8192 The maximum number of records returned in a single call to poll()
queue.kafka.max_partition_fetch_bytes TB_QUEUE_KAFKA_MAX_PARTITION_FETCH_BYTES 16777216 The maximum amount of data per-partition the server will return. Records are fetched in batches by the consumer
queue.kafka.fetch_max_bytes TB_QUEUE_KAFKA_FETCH_MAX_BYTES 134217728 The maximum amount of data the server will return. Records are fetched in batches by the consumer
queue.kafka.request.timeout.ms TB_QUEUE_KAFKA_REQUEST_TIMEOUT_MS 30000 (30 seconds)
queue.kafka.session.timeout.ms TB_QUEUE_KAFKA_SESSION_TIMEOUT_MS 10000 (10 seconds)
queue.kafka.auto_offset_reset TB_QUEUE_KAFKA_AUTO_OFFSET_RESET earliest earliest, latest or none
queue.kafka.use_confluent_cloud TB_QUEUE_KAFKA_USE_CONFLUENT_CLOUD false Enable/Disable using of Confluent Cloud
queue.kafka.confluent.ssl.algorithm TB_QUEUE_KAFKA_CONFLUENT_SSL_ALGORITHM https The endpoint identification algorithm used by clients to validate server host name. The default value is https
queue.kafka.confluent.sasl.mechanism TB_QUEUE_KAFKA_CONFLUENT_SASL_MECHANISM PLAIN The mechanism used to authenticate Schema Registry requests. SASL/PLAIN should only be used with TLS/SSL as transport layer to ensure that clear passwords are not transmitted on the wire without encryption
queue.kafka.confluent.sasl.config TB_QUEUE_KAFKA_CONFLUENT_SASL_JAAS_CONFIG org.apache.kafka.common.security.plain.PlainLoginModule required username=\"CLUSTER_API_KEY\" password=\"CLUSTER_API_SECRET\"; Using JAAS Configuration for specifying multiple SASL mechanisms on a broker
queue.kafka.confluent.security.protocol TB_QUEUE_KAFKA_CONFLUENT_SECURITY_PROTOCOL SASL_SSL Protocol used to communicate with brokers. Valid values are: PLAINTEXT, SSL, SASL_PLAINTEXT, SASL_SSL
queue.kafka.other-inline TB_QUEUE_KAFKA_OTHER_PROPERTIES In this section you can specify custom parameters (semicolon separated) for Kafka consumer/producer/admin
queue.kafka.topic-properties.rule-engine TB_QUEUE_KAFKA_RE_TOPIC_PROPERTIES retention.ms:604800000;segment.bytes:52428800;retention.bytes:1048576000;partitions:1;min.insync.replicas:1 Kafka properties for Rule Engine
queue.kafka.topic-properties.core TB_QUEUE_KAFKA_CORE_TOPIC_PROPERTIES retention.ms:604800000;segment.bytes:52428800;retention.bytes:1048576000;partitions:1;min.insync.replicas:1 Kafka properties for Core topics
queue.kafka.topic-properties.transport-api TB_QUEUE_KAFKA_TA_TOPIC_PROPERTIES retention.ms:604800000;segment.bytes:52428800;retention.bytes:1048576000;partitions:10;min.insync.replicas:1 Kafka properties for Transport Api topics
queue.kafka.topic-properties.notifications TB_QUEUE_KAFKA_NOTIFICATIONS_TOPIC_PROPERTIES retention.ms:604800000;segment.bytes:52428800;retention.bytes:1048576000;partitions:1;min.insync.replicas:1 Kafka properties for Notifications topics
queue.kafka.topic-properties.housekeeper TB_QUEUE_KAFKA_HOUSEKEEPER_TOPIC_PROPERTIES retention.ms:604800000;segment.bytes:52428800;retention.bytes:1048576000;partitions:10;min.insync.replicas:1 Kafka properties for Housekeeper tasks topic
queue.aws_sqs.use_default_credential_provider_chain TB_QUEUE_AWS_SQS_USE_DEFAULT_CREDENTIAL_PROVIDER_CHAIN false Use default credentials provider for AWS SQS
queue.aws_sqs.access_key_id TB_QUEUE_AWS_SQS_ACCESS_KEY_ID YOUR_KEY Access key ID from AWS IAM user
queue.aws_sqs.secret_access_key TB_QUEUE_AWS_SQS_SECRET_ACCESS_KEY YOUR_SECRET Secret access key from AWS IAM user
queue.aws_sqs.region TB_QUEUE_AWS_SQS_REGION YOUR_REGION Region from AWS account
queue.aws_sqs.threads_per_topic TB_QUEUE_AWS_SQS_THREADS_PER_TOPIC 1 Number of threads per each AWS SQS queue in consumer
queue.aws_sqs.producer_thread_pool_size TB_QUEUE_AWS_SQS_EXECUTOR_THREAD_POOL_SIZE 50 Thread pool size for aws_sqs queue producer executor provider. Default value equals to AmazonSQSAsyncClient.DEFAULT_THREAD_POOL_SIZE
queue.aws_sqs.queue-properties.rule-engine TB_QUEUE_AWS_SQS_RE_QUEUE_PROPERTIES VisibilityTimeout:30;MaximumMessageSize:262144;MessageRetentionPeriod:604800 AWS SQS queue properties. VisibilityTimeout in seconds;MaximumMessageSize in bytes;MessageRetentionPeriod in seconds
queue.aws_sqs.queue-properties.core TB_QUEUE_AWS_SQS_CORE_QUEUE_PROPERTIES VisibilityTimeout:30;MaximumMessageSize:262144;MessageRetentionPeriod:604800 AWS SQS queue properties. VisibilityTimeout in seconds;MaximumMessageSize in bytes;MessageRetentionPeriod in seconds
queue.aws_sqs.queue-properties.transport-api TB_QUEUE_AWS_SQS_TA_QUEUE_PROPERTIES VisibilityTimeout:30;MaximumMessageSize:262144;MessageRetentionPeriod:604800 AWS SQS queue properties. VisibilityTimeout in seconds;MaximumMessageSize in bytes;MessageRetentionPeriod in seconds
queue.aws_sqs.queue-properties.notifications TB_QUEUE_AWS_SQS_NOTIFICATIONS_QUEUE_PROPERTIES VisibilityTimeout:30;MaximumMessageSize:262144;MessageRetentionPeriod:604800 AWS SQS queue properties. VisibilityTimeout in seconds;MaximumMessageSize in bytes;MessageRetentionPeriod in seconds
queue.pubsub.project_id TB_QUEUE_PUBSUB_PROJECT_ID YOUR_PROJECT_ID Project ID from Google Cloud
queue.pubsub.service_account TB_QUEUE_PUBSUB_SERVICE_ACCOUNT YOUR_SERVICE_ACCOUNT API Credentials in JSON format
queue.pubsub.max_msg_size TB_QUEUE_PUBSUB_MAX_MSG_SIZE 1048576 Message size for PubSub queue.Value in bytes
queue.pubsub.max_messages TB_QUEUE_PUBSUB_MAX_MESSAGES 1000 Number of messages per a consumer
queue.pubsub.executor_thread_pool_size TB_QUEUE_PUBSUB_EXECUTOR_THREAD_POOL_SIZE 0 Thread pool size for pubsub queue executor provider. If not set - default pubsub executor provider value will be used (5 * number of available processors)
queue.pubsub.queue-properties.rule-engine TB_QUEUE_PUBSUB_RE_QUEUE_PROPERTIES ackDeadlineInSec:30;messageRetentionInSec:604800 Pub/Sub properties for Rule Engine subscribers, messages which will commit after ackDeadlineInSec period can be consume again
queue.pubsub.queue-properties.core TB_QUEUE_PUBSUB_CORE_QUEUE_PROPERTIES ackDeadlineInSec:30;messageRetentionInSec:604800 Pub/Sub properties for Core subscribers, messages which will commit after ackDeadlineInSec period can be consume again
queue.pubsub.queue-properties.transport-api TB_QUEUE_PUBSUB_TA_QUEUE_PROPERTIES ackDeadlineInSec:30;messageRetentionInSec:604800 Pub/Sub properties for Transport API subscribers, messages which will commit after ackDeadlineInSec period can be consume again
queue.pubsub.queue-properties.notifications TB_QUEUE_PUBSUB_NOTIFICATIONS_QUEUE_PROPERTIES ackDeadlineInSec:30;messageRetentionInSec:604800 Pub/Sub properties for Version Control subscribers, messages which will commit after ackDeadlineInSec period can be consume again
queue.service_bus.namespace_name TB_QUEUE_SERVICE_BUS_NAMESPACE_NAME YOUR_NAMESPACE_NAME Azure namespace
queue.service_bus.sas_key_name TB_QUEUE_SERVICE_BUS_SAS_KEY_NAME YOUR_SAS_KEY_NAME Azure Service Bus Shared Access Signatures key name
queue.service_bus.sas_key TB_QUEUE_SERVICE_BUS_SAS_KEY YOUR_SAS_KEY Azure Service Bus Shared Access Signatures key
queue.service_bus.max_messages TB_QUEUE_SERVICE_BUS_MAX_MESSAGES 1000 Number of messages per a consumer
queue.service_bus.queue-properties.rule-engine TB_QUEUE_SERVICE_BUS_RE_QUEUE_PROPERTIES lockDurationInSec:30;maxSizeInMb:1024;messageTimeToLiveInSec:604800 Azure Service Bus properties for Rule Engine queues
queue.service_bus.queue-properties.core TB_QUEUE_SERVICE_BUS_CORE_QUEUE_PROPERTIES lockDurationInSec:30;maxSizeInMb:1024;messageTimeToLiveInSec:604800 Azure Service Bus properties for Core queues
queue.service_bus.queue-properties.transport-api TB_QUEUE_SERVICE_BUS_TA_QUEUE_PROPERTIES lockDurationInSec:30;maxSizeInMb:1024;messageTimeToLiveInSec:604800 Azure Service Bus properties for Transport Api queues
queue.service_bus.queue-properties.notifications TB_QUEUE_SERVICE_BUS_NOTIFICATIONS_QUEUE_PROPERTIES lockDurationInSec:30;maxSizeInMb:1024;messageTimeToLiveInSec:604800 Azure Service Bus properties for Notification queues
queue.rabbitmq.exchange_name TB_QUEUE_RABBIT_MQ_EXCHANGE_NAME By default empty
queue.rabbitmq.host TB_QUEUE_RABBIT_MQ_HOST localhost RabbitMQ host used to establish connection
queue.rabbitmq.port TB_QUEUE_RABBIT_MQ_PORT 5672 RabbitMQ host used to establish a connection
queue.rabbitmq.virtual_host TB_QUEUE_RABBIT_MQ_VIRTUAL_HOST / Virtual hosts provide logical grouping and separation of resources
queue.rabbitmq.username TB_QUEUE_RABBIT_MQ_USERNAME YOUR_USERNAME Username for RabbitMQ user account
queue.rabbitmq.password TB_QUEUE_RABBIT_MQ_PASSWORD YOUR_PASSWORD User password for RabbitMQ user account
queue.rabbitmq.automatic_recovery_enabled TB_QUEUE_RABBIT_MQ_AUTOMATIC_RECOVERY_ENABLED false Network connection between clients and RabbitMQ nodes can fail. RabbitMQ Java client supports automatic recovery of connections and topology (queues, exchanges, bindings, and consumers)
queue.rabbitmq.connection_timeout TB_QUEUE_RABBIT_MQ_CONNECTION_TIMEOUT 60000 The connection timeout for the RabbitMQ connection factory
queue.rabbitmq.handshake_timeout TB_QUEUE_RABBIT_MQ_HANDSHAKE_TIMEOUT 10000 RabbitMQ has a timeout for connection handshake. When clients run in heavily constrained environments, it may be necessary to increase the timeout
queue.rabbitmq.queue-properties.rule-engine TB_QUEUE_RABBIT_MQ_RE_QUEUE_PROPERTIES x-max-length-bytes:1048576000;x-message-ttl:604800000 RabbitMQ properties for Rule Engine queues
queue.rabbitmq.queue-properties.core TB_QUEUE_RABBIT_MQ_CORE_QUEUE_PROPERTIES x-max-length-bytes:1048576000;x-message-ttl:604800000 RabbitMQ properties for Core queues
queue.rabbitmq.queue-properties.transport-api TB_QUEUE_RABBIT_MQ_TA_QUEUE_PROPERTIES x-max-length-bytes:1048576000;x-message-ttl:604800000 RabbitMQ properties for Transport API queues
queue.rabbitmq.queue-properties.notifications TB_QUEUE_RABBIT_MQ_NOTIFICATIONS_QUEUE_PROPERTIES x-max-length-bytes:1048576000;x-message-ttl:604800000 RabbitMQ properties for Notification queues
queue.partitions.hash_function_name TB_QUEUE_PARTITIONS_HASH_FUNCTION_NAME murmur3_128 murmur3_32, murmur3_128 or sha256
queue.transport_api.requests_topic TB_QUEUE_TRANSPORT_API_REQUEST_TOPIC tb_transport.api.requests Topic used to consume api requests from transport microservices
queue.transport_api.responses_topic TB_QUEUE_TRANSPORT_API_RESPONSE_TOPIC tb_transport.api.responses Topic used to produce api responses to transport microservices
queue.transport_api.max_pending_requests TB_QUEUE_TRANSPORT_MAX_PENDING_REQUESTS 10000 Maximum pending api requests from transport microservices to be handled by server
queue.transport_api.max_requests_timeout TB_QUEUE_TRANSPORT_MAX_REQUEST_TIMEOUT 10000 Maximum timeout in milliseconds to handle api request from transport microservice by server
queue.transport_api.max_callback_threads TB_QUEUE_TRANSPORT_MAX_CALLBACK_THREADS 100 Amount of threads used to invoke callbacks
queue.transport_api.request_poll_interval TB_QUEUE_TRANSPORT_REQUEST_POLL_INTERVAL_MS 25 Interval in milliseconds to poll api requests from transport microservices
queue.transport_api.response_poll_interval TB_QUEUE_TRANSPORT_RESPONSE_POLL_INTERVAL_MS 25 Interval in milliseconds to poll api response from transport microservices
queue.core.topic TB_QUEUE_CORE_TOPIC tb_core Default topic name of Kafka, RabbitMQ, etc. queue
queue.core.poll-interval TB_QUEUE_CORE_POLL_INTERVAL_MS 25 Interval in milliseconds to poll messages by Core microservices
queue.core.partitions TB_QUEUE_CORE_PARTITIONS 10 Amount of partitions used by Core microservices
queue.core.pack-processing-timeout TB_QUEUE_CORE_PACK_PROCESSING_TIMEOUT_MS 60000 Timeout for processing a message pack by Core microservices
queue.core.usage-stats-topic TB_QUEUE_US_TOPIC tb_usage_stats Default topic name for queue Kafka, RabbitMQ, etc.
queue.core.stats.enabled TB_QUEUE_CORE_STATS_ENABLED false Enable/disable statistics for Core microservices
queue.core.stats.print-interval-ms TB_QUEUE_CORE_STATS_PRINT_INTERVAL_MS 10000 Statistics printing interval for Core microservices
queue.core.housekeeper.topic TB_HOUSEKEEPER_TOPIC tb_housekeeper Topic name for Housekeeper tasks
queue.js.request_topic REMOTE_JS_EVAL_REQUEST_TOPIC js_eval.requests JS Eval request topic
queue.js.response_topic_prefix REMOTE_JS_EVAL_RESPONSE_TOPIC js_eval.responses JS Eval responses topic prefix that is combined with node id
queue.js.max_pending_requests REMOTE_JS_MAX_PENDING_REQUESTS 10000 JS Eval max pending requests
queue.js.max_requests_timeout REMOTE_JS_MAX_REQUEST_TIMEOUT 10000 JS Eval max request timeout
queue.js.response_poll_interval REMOTE_JS_RESPONSE_POLL_INTERVAL_MS 25 JS response poll interval
queue.rule-engine.topic TB_QUEUE_RULE_ENGINE_TOPIC tb_rule_engine Deprecated. It will be removed in the nearest releases
queue.rule-engine.poll-interval TB_QUEUE_RULE_ENGINE_POLL_INTERVAL_MS 25 Interval in milliseconds to poll messages by Rule Engine
queue.rule-engine.pack-processing-timeout TB_QUEUE_RULE_ENGINE_PACK_PROCESSING_TIMEOUT_MS 60000 Timeout for processing a message pack of Rule Engine
queue.rule-engine.stats.enabled TB_QUEUE_RULE_ENGINE_STATS_ENABLED true Enable/disable statistics for Rule Engine
queue.rule-engine.stats.print-interval-ms TB_QUEUE_RULE_ENGINE_STATS_PRINT_INTERVAL_MS 60000 Statistics printing interval for Rule Engine
queue.transport.notifications_topic TB_QUEUE_TRANSPORT_NOTIFICATIONS_TOPIC tb_transport.notifications For high priority notifications that require minimum latency and processing time
queue.transport.poll_interval TB_QUEUE_TRANSPORT_NOTIFICATIONS_POLL_INTERVAL_MS 25 Interval in milliseconds to poll messages

General service parameters

ParameterEnvironment VariableDefault ValueDescription
service.type TB_SERVICE_TYPE tb-transport type of service
service.id TB_SERVICE_ID Unique id for this service (autogenerated if empty)

Usage statistics parameters

ParameterEnvironment VariableDefault ValueDescription
usage.stats.report.enabled USAGE_STATS_REPORT_ENABLED true Enable/Disable the collection of statistics about API usage. Collected on a system and tenant level by default
usage.stats.report.enabled_per_customer USAGE_STATS_REPORT_PER_CUSTOMER_ENABLED false Enable/Disable collection of statistics about API usage on a customer level
usage.stats.report.interval USAGE_STATS_REPORT_INTERVAL 10 Interval of reporting the statistics. By default, the summarized statistics are sent every 10 seconds

Metrics parameters

ParameterEnvironment VariableDefault ValueDescription
metrics.enabled METRICS_ENABLED false Enable/disable actuator metrics.

General management parameters

ParameterEnvironment VariableDefault ValueDescription
management.endpoints.web.exposure.include '${METRICS_ENDPOINTS_EXPOSE:info}' Expose metrics endpoint (use value 'prometheus' to enable prometheus metrics).

Notification system parameters

ParameterEnvironment VariableDefault ValueDescription
notification_system.rules.deduplication_durations TB_NOTIFICATION_RULES_DEDUPLICATION_DURATIONS RATE_LIMITS:14400000; Semicolon-separated deduplication durations (in millis) for trigger types. Format: 'NotificationRuleTriggerType1:123;NotificationRuleTriggerType2:456'