- Spring common parameters
- Server common parameters
- Zookeeper connection parameters. Used for service discovery.
- Cache parameters
- Redis configuration parameters
- MQTT server parameters
- Queue configuration parameters
- Service common properties
- Usage statistics parameters
- Metrics parameters
- General management parameters
- Notification system parameters
Spring common parameters
Parameter | Environment Variable | Default Value | Description |
spring.main.web-environment | WEB_APPLICATION_ENABLE | false | If you enabled process metrics you should also enable 'web-environment'. |
spring.main.web-application-type | WEB_APPLICATION_TYPE | none | If you enabled process metrics you should set 'web-application-type' to 'servlet' value. |
spring.main.allow-circular-references | "true" | Spring Boot configuration property that controls whether circular dependencies between beans are allowed. |
Server common parameters
Parameter | Environment Variable | Default Value | Description |
server.address | HTTP_BIND_ADDRESS | 0.0.0.0 | Server bind address (has no effect if web-environment is disabled). |
server.port | HTTP_BIND_PORT | 8083 | Server bind port (has no effect if web-environment is disabled). |
Zookeeper connection parameters. Used for service discovery.
Parameter | Environment Variable | Default Value | Description |
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
Parameter | Environment Variable | Default Value | Description |
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
Parameter | Environment Variable | Default Value | Description |
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 |
MQTT server parameters
Parameter | Environment Variable | Default Value | Description |
transport.mqtt.bind_address | MQTT_BIND_ADDRESS | 0.0.0.0 | MQTT bind-address |
transport.mqtt.bind_port | MQTT_BIND_PORT | 1883 | MQTT bind port |
transport.mqtt.proxy_enabled | MQTT_PROXY_PROTOCOL_ENABLED | false | Enable proxy protocol support. Disabled by default. If enabled, supports both v1 and v2. Useful to get the real IP address of the client in the logs and for rate limits. |
transport.mqtt.timeout | MQTT_TIMEOUT | 10000 | MQTT processing timeout in milliseconds |
transport.mqtt.disconnect_timeout | MQTT_DISCONNECT_TIMEOUT | 1000 | MQTT disconnect timeout in milliseconds. The time to wait for the client to disconnect after the server sends a disconnect message. |
transport.mqtt.msg_queue_size_per_device_limit | MQTT_MSG_QUEUE_SIZE_PER_DEVICE_LIMIT | 100 | messages await in the queue before device connected state. This limit works on low level before TenantProfileLimits mechanism |
transport.mqtt.gateway_metrics_report_interval_sec | MQTT_GATEWAY_METRICS_REPORT_INTERVAL_SEC | 60 | Interval of periodic report of the gateway metrics |
transport.mqtt.netty.leak_detector_level | NETTY_LEAK_DETECTOR_LVL | DISABLED | Netty leak detector level |
transport.mqtt.netty.boss_group_thread_count | NETTY_BOSS_GROUP_THREADS | 1 | Netty BOSS threads count |
transport.mqtt.netty.worker_group_thread_count | NETTY_WORKER_GROUP_THREADS | 12 | Netty worker threads count |
transport.mqtt.netty.max_payload_size | NETTY_MAX_PAYLOAD_SIZE | 65536 | Max payload size in bytes |
transport.mqtt.netty.so_keep_alive | NETTY_SO_KEEPALIVE | false | Enables TCP keepalive. This means that TCP starts sending keepalive probes when a connection is idle for some time |
transport.mqtt.ssl.enabled | MQTT_SSL_ENABLED | false | Enable/disable SSL support |
transport.mqtt.ssl.bind_address | MQTT_SSL_BIND_ADDRESS | 0.0.0.0 | MQTT SSL bind-address |
transport.mqtt.ssl.bind_port | MQTT_SSL_BIND_PORT | 8883 | MQTT SSL bind port |
transport.mqtt.ssl.protocol | MQTT_SSL_PROTOCOL | TLSv1.2 | SSL protocol: See https://docs.oracle.com/en/java/javase/11/docs/specs/security/standard-names.html#sslcontext-algorithms |
transport.mqtt.ssl.credentials.type | MQTT_SSL_CREDENTIALS_TYPE | PEM | Server credentials type (PEM - pem certificate file; KEYSTORE - java keystore) |
transport.mqtt.ssl.credentials.pem.cert_file | MQTT_SSL_PEM_CERT | mqttserver.pem | Path to the server certificate file (holds server certificate or certificate chain, may include server private key) |
transport.mqtt.ssl.credentials.pem.key_file | MQTT_SSL_PEM_KEY | mqttserver_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; |
transport.mqtt.ssl.credentials.pem.key_password | MQTT_SSL_PEM_KEY_PASSWORD | server_key_password | Server certificate private key password (optional) |
transport.mqtt.ssl.credentials.keystore.type | MQTT_SSL_KEY_STORE_TYPE | JKS | Type of the key store (JKS or PKCS12) |
transport.mqtt.ssl.credentials.keystore.store_file | MQTT_SSL_KEY_STORE | mqttserver.jks | Path to the key store that holds the SSL certificate |
transport.mqtt.ssl.credentials.keystore.store_password | MQTT_SSL_KEY_STORE_PASSWORD | server_ks_password | Password used to access the key store |
transport.mqtt.ssl.credentials.keystore.key_alias | MQTT_SSL_KEY_ALIAS | Optional alias of the private key; If not set, the platform will load the first private key from the keystore; | |
transport.mqtt.ssl.credentials.keystore.key_password | MQTT_SSL_KEY_PASSWORD | server_key_password | Password used to access the key |
transport.mqtt.ssl.skip_validity_check_for_client_cert | MQTT_SSL_SKIP_VALIDITY_CHECK_FOR_CLIENT_CERT | false | Skip certificate validity check for client certificates. |
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 the collection of transport statistics |
transport.stats.print-interval-ms | TB_TRANSPORT_STATS_PRINT_INTERVAL_MS | 60000 | Interval of transport statistics logging |
transport.client_side_rpc.timeout | CLIENT_SIDE_RPC_TIMEOUT | 60000 | Processing timeout interval of the RPC command on the CLIENT SIDE. Time in milliseconds |
transport.rate_limits.ip_limits_enabled | TB_TRANSPORT_IP_RATE_LIMITS_ENABLED | false | Enable or disable generic rate limits. Device and Tenant specific rate limits are controlled in Tenant Profile. |
transport.rate_limits.max_wrong_credentials_per_ip | TB_TRANSPORT_MAX_WRONG_CREDENTIALS_PER_IP | 10 | Maximum number of connect attempts with invalid credentials |
transport.rate_limits.ip_block_timeout | TB_TRANSPORT_IP_BLOCK_TIMEOUT | 60000 | Timeout to expire block IP addresses |
Queue configuration parameters
Parameter | Environment Variable | Default Value | Description |
queue.type | TB_QUEUE_TYPE | kafka | kafka (Apache Kafka) |
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 the client and can be used for two-way authentication for the client | |
queue.kafka.ssl.keystore.password | TB_KAFKA_SSL_KEYSTORE_PASSWORD | The store password for the key store file. This is optional for the 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 hostname. 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 a 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.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 |
queue.core.notifications_topic | TB_QUEUE_CORE_NOTIFICATIONS_TOPIC | tb_core.notifications | For high-priority notifications that require minimum latency and processing time |
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 |
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.notifications_topic | TB_QUEUE_RULE_ENGINE_NOTIFICATIONS_TOPIC | tb_rule_engine.notifications | For high-priority notifications that require minimum latency and processing time |
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 |
Service common properties
Parameter | Environment Variable | Default Value | Description |
service.type | TB_SERVICE_TYPE | tb-transport | service type |
service.id | TB_SERVICE_ID | Unique id for this service (autogenerated if empty) |
Usage statistics parameters
Parameter | Environment Variable | Default Value | Description |
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 | 60 | Interval of reporting the statistics. By default, the summarized statistics are sent every 10 seconds |
usage.stats.report.pack_size | USAGE_STATS_REPORT_PACK_SIZE | 1024 | Amount of statistic messages in pack |
Metrics parameters
Parameter | Environment Variable | Default Value | Description |
metrics.enabled | METRICS_ENABLED | false | Enable/disable actuator metrics. |
General management parameters
Parameter | Environment Variable | Default Value | Description |
management.endpoints.web.exposure.include | '${METRICS_ENDPOINTS_EXPOSE:info}' | Expose metrics endpoint (use value 'prometheus' to enable prometheus metrics). |
Notification system parameters
Parameter | Environment Variable | Default Value | Description |
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' |