产品定价 立即试用
边缘
安装 > 配置 > Edge核心与规则引擎部署参数
入门 文档
架构 API 常见问题
目录

Edge核心/规则引擎部署参数

Configuration parameters

The parameters are grouped by system components. The list contains the name (address in tb-edge.yml file), environment variable, default value and description.

服务器通用参数

参数环境变量默认值说明
server.address HTTP_BIND_ADDRESS 0.0.0.0 服务器绑定地址
server.port HTTP_BIND_PORT 8080 服务器绑定端口
server.forward_headers_strategy HTTP_FORWARD_HEADERS_STRATEGY framework 服务器转发头策略,反向代理场景下Swagger UI所需
server.ssl.enabled SSL_ENABLED false 启用/禁用SSL支持
server.ssl.credentials.type SSL_CREDENTIALS_TYPE PEM 服务器证书类型(PEM:pem证书文件;KEYSTORE:Java密钥库)
server.ssl.credentials.pem.cert_file SSL_PEM_CERT server.pem 服务器证书文件路径(包含服务器证书或证书链,也可包含服务器私钥)
server.ssl.credentials.pem.key_file SSL_PEM_KEY server_key.pem 服务器证书私钥文件路径(可选)。若证书文件不含私钥,则此项必填
server.ssl.credentials.pem.key_password SSL_PEM_KEY_PASSWORD server_key_password 服务器证书私钥密码(可选)
server.ssl.credentials.keystore.type SSL_KEY_STORE_TYPE PKCS12 密钥库类型(JKS或PKCS12)
server.ssl.credentials.keystore.store_file SSL_KEY_STORE classpath:keystore/keystore.p12 存放SSL证书的密钥库路径
server.ssl.credentials.keystore.store_password SSL_KEY_STORE_PASSWORD thingsboard 访问密钥库的密码
server.ssl.credentials.keystore.key_alias SSL_KEY_ALIAS tomcat 密钥别名
server.ssl.credentials.keystore.key_password SSL_KEY_PASSWORD thingsboard 访问密钥的密码
server.http.max_payload_size HTTP_MAX_PAYLOAD_SIZE_LIMIT_CONFIGURATION /api/image*/**=52428800;/api/resource/**=52428800;/api/**=16777216 以分号分隔的urlPattern=maxPayloadSize配置列表,用于定义指定URL模式的HTTP请求最大大小。命中第一条后将忽略后续规则
server.http2.enabled HTTP2_ENABLED true 启用/禁用HTTP/2支持
server.log_controller_error_stack_trace HTTP_LOG_CONTROLLER_ERROR_STACK_TRACE false 当REST API发送“Please contact sysadmin”异常时,记录包含堆栈信息的错误日志
server.ws.send_timeout TB_SERVER_WS_SEND_TIMEOUT 5000 向客户端WebSocket会话发送数据的超时时间(毫秒)
server.ws.ping_timeout TB_SERVER_WS_PING_TIMEOUT 30000 建议超时时间≥30秒。平台会在该期限尝试发送3次“ping”请求
server.ws.dynamic_page_link.refresh_interval TB_SERVER_WS_DYNAMIC_PAGE_LINK_REFRESH_INTERVAL_SEC 60 动态告警实体数据查询的刷新频率
server.ws.dynamic_page_link.refresh_pool_size TB_SERVER_WS_DYNAMIC_PAGE_LINK_REFRESH_POOL_SIZE 1 执行动态查询的线程池大小
server.ws.dynamic_page_link.max_alarm_queries_per_refresh_interval TB_SERVER_WS_MAX_ALARM_QUERIES_PER_REFRESH_INTERVAL 10 每个刷新周期允许的动态查询最大数量。例如,用户在所有浏览器中同时执行的告警查询不超过10个
server.ws.dynamic_page_link.max_per_user TB_SERVER_WS_DYNAMIC_PAGE_LINK_MAX_PER_USER 10 每个用户允许的动态查询最大数量。例如,用户在所有浏览器中同时打开的告警部件不超过10个
server.ws.max_entities_per_data_subscription TB_SERVER_WS_MAX_ENTITIES_PER_DATA_SUBSCRIPTION 10000 单次实体订阅可返回的最大实体数。例如,地图部件中实体不超过10000个
server.ws.max_entities_per_alarm_subscription TB_SERVER_WS_MAX_ENTITIES_PER_ALARM_SUBSCRIPTION 10000 单次告警订阅可返回的最大告警数。例如,告警部件中告警不超过10000条
server.ws.max_queue_messages_per_session TB_SERVER_WS_DEFAULT_QUEUE_MESSAGES_PER_SESSION 1000 每个会话WebSocket更新队列的最大大小,可防止WS无限制更新
server.ws.auth_timeout_ms TB_SERVER_WS_AUTH_TIMEOUT_MS 10000 WS会话建立到发送鉴权命令之间的最长时间
server.ws.rate_limits.subscriptions_per_tenant TB_SERVER_WS_SUBSCRIPTIONS_PER_TENANT_RATE_LIMIT 每个租户的WS订阅限流
server.ws.rate_limits.subscriptions_per_user TB_SERVER_WS_SUBSCRIPTIONS_PER_USER_RATE_LIMIT 每个用户的WS订阅限流
server.ws.alarms_per_alarm_status_subscription_cache_size TB_ALARMS_PER_ALARM_STATUS_SUBSCRIPTION_CACHE_SIZE 10 单个告警状态订阅在缓存中保存的活跃来源ID最大数量,例如不超过10个
server.rest.server_side_rpc.min_timeout MIN_SERVER_SIDE_RPC_TIMEOUT 5000 服务器端RPC超时的最小值,可覆盖REST API调用中指定的值。自2.5版本迁移到队列后,RPC延迟取决于队列中待处理消息的数量,因此默认的UI参数500ms可能不足以满足高负载环境的需求。
server.rest.server_side_rpc.default_timeout DEFAULT_SERVER_SIDE_RPC_TIMEOUT 10000 服务端RPC超时默认值
server.rest.rate_limits.reset_password_per_user RESET_PASSWORD_PER_USER_RATE_LIMIT_CONFIGURATION 5:3600 限制用户频繁重置密码的速率。默认每小时不超过5次请求

Cloud配置

参数环境变量默认值说明
cloud.routingKey CLOUD_ROUTING_KEY Edge实例的路由键,通常为UUID
cloud.secret CLOUD_ROUTING_SECRET 用于与云端安全通信的密钥
cloud.reconnect_timeout CLOUD_RECONNECT_TIMEOUT 3000 云连接丢失时的重连超时时间(毫秒)
cloud.uplink_pack_timeout_sec CLOUD_UPLINK_PACK_TIMEOUT_SEC 60 上行数据打包发送到云端的超时时间(秒)
cloud.rpc.host CLOUD_RPC_HOST localhost ThingsBoard平台主机名或IP,例如thingsboard.cloud、X.X.X.X或localhost
cloud.rpc.port CLOUD_RPC_PORT 7070 与ThingsBoard服务器进行RPC通信的端口
cloud.rpc.timeout CLOUD_RPC_TIMEOUT 5 终止RPC通道的超时时间(秒)
cloud.rpc.keep_alive_time_sec CLOUD_RPC_KEEP_ALIVE_TIME_SEC 10 客户端在空闲状态(连接上无读取操作)下等待多少秒后向服务器发送keepalive ping。此设置有助于在空闲期间保持连接存活,防止服务器因超时关闭连接,同时定期探测服务器可达性,并通过可能因空闲而断开连接的网络设备(如NAT、负载均衡器)维持连接。
cloud.rpc.keep_alive_timeout_sec CLOUD_RPC_KEEP_ALIVE_TIMEOUT_SEC 5 客户端等待keepalive ping响应的最长时间(秒)。若在此时间内未收到确认,客户端将认为连接已断开或不可达。此超时用于检测服务器故障或网络中断。若服务器在此期间未响应keepalive ping,客户端将视为连接丢失,并可能尝试重连或执行其他恢复操作。
cloud.rpc.ssl.enabled CLOUD_RPC_SSL_ENABLED false 启用TLS安全通信
cloud.rpc.ssl.cert CLOUD_RPC_SSL_CERT 用于安全通信的TLS证书路径
cloud.rpc.storage.max_read_records_count CLOUD_RPC_STORAGE_MAX_READ_RECORDS_COUNT 50 从本地数据库读取并发送的云事件记录最大数量
cloud.rpc.storage.no_read_records_sleep CLOUD_RPC_NO_READ_RECORDS_SLEEP 1000 检查本地数据库中新云事件的间隔(毫秒)
cloud.rpc.storage.sleep_between_batches CLOUD_RPC_SLEEP_BETWEEN_BATCHES 1000 重试发送失败云事件批次的间隔(毫秒)
cloud.rpc.max_inbound_message_size CLOUD_RPC_MAX_INBOUND_MESSAGE_SIZE 4194304 来自云端的入站消息最大大小(字节)
cloud.rpc.proxy.enabled CLOUD_RPC_PROXY_ENABLED false 启用或禁用代理服务器
cloud.rpc.proxy.host CLOUD_RPC_PROXY_HOST 代理服务器主机名或IP
cloud.rpc.proxy.port CLOUD_RPC_PROXY_PORT 0 代理服务器端口号
cloud.rpc.proxy.username CLOUD_RPC_PROXY_USERNAME 代理服务器认证用户名
cloud.rpc.proxy.password CLOUD_RPC_PROXY_PASSWORD 代理服务器认证密码

应用信息参数

参数环境变量默认值说明
app.version "@project.version@" 应用版本

Zookeeper连接参数

参数环境变量默认值说明
zk.enabled ZOOKEEPER_ENABLED false 启用/禁用Zookeeper发现服务
zk.url ZOOKEEPER_URL localhost:2181 Zookeeper连接字符串
zk.retry_interval_ms ZOOKEEPER_RETRY_INTERVAL_MS 3000 Zookeeper重试间隔(毫秒)
zk.connection_timeout_ms ZOOKEEPER_CONNECTION_TIMEOUT_MS 3000 Zookeeper连接超时(毫秒)
zk.session_timeout_ms ZOOKEEPER_SESSION_TIMEOUT_MS 3000 Zookeeper会话超时(毫秒)
zk.zk_dir ZOOKEEPER_NODES_DIR /thingsboard Zookeeper"文件系统"中的目录名称
zk.recalculate_delay ZOOKEEPER_RECALCULATE_DELAY_MS 0 建议在微服务架构中为规则引擎服务配置recalculate_delay属性。该属性在规则引擎服务重启时引入一段暂停,确保其他节点不会立即尝试重新计算分区。由于规则链Actor初始化耗时较大,避免重启期间的不必要重算可提升系统性能和稳定性。

集群参数

参数环境变量默认值说明
cluster.stats.enabled TB_CLUSTER_STATS_ENABLED false 启用/禁用集群统计。按类型统计集群节点间发送的消息数量
cluster.stats.print_interval_ms TB_CLUSTER_STATS_PRINT_INTERVAL_MS 10000 将集群统计打印到日志文件的间隔

插件配置参数

参数环境变量默认值说明
plugins.scan_packages PLUGINS_SCAN_PACKAGES org.thingsboard.server.extensions,org.thingsboard.rule.engine 类路径扫描插件时使用的逗号分隔包列表

安全参数

参数环境变量默认值说明
security.jwt.tokenExpirationTime JWT_TOKEN_EXPIRATION_TIME 9000 秒数(2.5小时)
security.jwt.refreshTokenExpTime JWT_REFRESH_TOKEN_EXPIRATION_TIME 604800 秒数(1周)
security.jwt.tokenIssuer JWT_TOKEN_ISSUER thingsboard.io 用户JWT令牌签发者
security.jwt.tokenSigningKey JWT_TOKEN_SIGNING_KEY thingsboardDefaultSigningKey Base64编码
security.user_token_access_enabled SECURITY_USER_TOKEN_ACCESS_ENABLED true 启用/禁用系统管理员对租户管理员JWT令牌的访问或租户管理员对客户用户JWT令牌的访问
security.user_login_case_sensitive SECURITY_USER_LOGIN_CASE_SENSITIVE true 启用/禁用用户名区分大小写登录
security.claim.allowClaimingByDefault SECURITY_CLAIM_ALLOW_CLAIMING_BY_DEFAULT true 启用/禁用设备认领。若为false,则设备的[claimingAllowed] SERVER_SCOPE属性必须设置为[true]才允许认领特定设备
security.claim.duration SECURITY_CLAIM_DURATION 86400000 86400000毫秒(即24小时),注意该值必须等于claimDevices.timeToLiveInMinutes值
security.basic.enabled SECURITY_BASIC_ENABLED false 启用/禁用基础安全选项
security.oauth2.loginProcessingUrl SECURITY_OAUTH2_LOGIN_PROCESSING_URL /login/oauth2/code/ 处理来自外部用户管理系统访问代码的重定向URL
security.oauth2.githubMapper.emailUrl SECURITY_OAUTH2_GITHUB_MAPPER_EMAIL_URL_KEY https://api.github.com/user/emails 从该URL映射的GitHub邮箱地址
security.java_cacerts.path SECURITY_JAVA_CACERTS_PATH ${java.home}/lib/security/cacerts CA证书密钥库默认路径。通常此密钥库位于JAVA_HOME/lib/security/cacerts
security.java_cacerts.password SECURITY_JAVA_CACERTS_PASSWORD changeit cacerts密钥库文件的密码

邮件设置参数

参数环境变量默认值说明
mail.oauth2.refreshTokenCheckingInterval REFRESH_TOKEN_EXPIRATION_CHECKING_INTERVAL 86400 检查刷新令牌过期的时间间隔(以秒为单位)(默认为1天)。
mail.per_tenant_rate_limits MAIL_PER_TENANT_RATE_LIMITS 每个租户发送邮件的速率限制。例如,每分钟1000次和每小时10000次为“1000:60,10000:3600”

使用统计参数

参数环境变量默认值说明
usage.stats.report.enabled USAGE_STATS_REPORT_ENABLED true 启用/禁用API使用统计信息的收集。默认情况下在系统和租户级别收集
usage.stats.report.enabled_per_customer USAGE_STATS_REPORT_PER_CUSTOMER_ENABLED false 启用/禁用客户级别的API使用统计信息的收集
usage.stats.report.interval USAGE_STATS_REPORT_INTERVAL 60 统计上报间隔,默认设置为每10秒发送一次汇总数据
usage.stats.report.pack_size USAGE_STATS_REPORT_PACK_SIZE 1024 统计包内消息数量
usage.stats.check.cycle USAGE_STATS_CHECK_CYCLE 60000 检查下一周期是否开始、并重新启用被阻止的租户/客户的时间间隔
usage.stats.gauge_report_interval USAGE_STATS_GAUGE_REPORT_INTERVAL 180000 以毫秒为单位。默认值为3分钟
usage.stats.devices.report_interval DEVICES_STATS_REPORT_INTERVAL 60 以秒为单位,默认值为1分钟。更改时,在集群模式下,请确保use.stats.gauge_report_interval设置为该值的x2-x3

UI设置参数

参数环境变量默认值说明
ui.dashboard.max_datapoints_limit DASHBOARD_MAX_DATAPOINTS_LIMIT 50000 小部件允许获取的最大数据点
ui.help.base-url UI_HELP_BASE_URL https://raw.githubusercontent.com/thingsboard/thingsboard-ui-help/release-4.1 UI帮助资源基础URL

数据库遥测参数

参数环境变量默认值说明
database.ts_max_intervals DATABASE_TS_MAX_INTERVALS 700 单个API调用生成的用于获取遥测记录的最大数据库查询数
database.ts.type DATABASE_TS_TYPE sql cassandra、sql或timescale(对于混合模式,DATABASE_TS_TYPE值应为cassandra或timescale)
database.ts_latest.type DATABASE_TS_LATEST_TYPE sql cassandra、sql或timescale(对于混合模式,DATABASE_TS_TYPE值应为cassandra或timescale)

Cassandra驱动配置参数

参数环境变量默认值说明
cassandra.cluster_name CASSANDRA_CLUSTER_NAME Thingsboard Edge Cluster ThingsBoard Edge集群名称
cassandra.keyspace_name CASSANDRA_KEYSPACE_NAME thingsboard ThingsBoard Edge Keyspace名称
cassandra.url CASSANDRA_URL 127.0.0.1:9042 指定节点列表
cassandra.local_datacenter CASSANDRA_LOCAL_DATACENTER datacenter1 指定本地数据中心名称
cassandra.ssl.enabled CASSANDRA_USE_SSL false 启用/禁用安全连接
cassandra.ssl.hostname_validation CASSANDRA_SSL_HOSTNAME_VALIDATION true 启用/禁用Cassandra服务器主机名验证。如果启用,Cassandra服务器的主机名必须与服务器证书的CN匹配
cassandra.ssl.trust_store CASSANDRA_SSL_TRUST_STORE 设置用于服务器认证的信任库(可选,若未设置则使用默认SSLContext中的信任库)
cassandra.ssl.trust_store_password CASSANDRA_SSL_TRUST_STORE_PASSWORD Cassandra信任库密码
cassandra.ssl.key_store CASSANDRA_SSL_KEY_STORE 设置用于客户端认证的密钥库(可选,若未设置则使用默认SSLContext中的密钥库)。仅在Cassandra服务器要求客户端认证时需要密钥库
cassandra.ssl.key_store_password CASSANDRA_SSL_KEY_STORE_PASSWORD Cassandra密钥库的密码
cassandra.ssl.cipher_suites CASSANDRA_SSL_CIPHER_SUITES 以逗号分隔的密码套件列表(可选,若未设置则使用Java默认密码套件)
cassandra.jmx CASSANDRA_USE_JMX false 启用/禁用JMX
cassandra.metrics CASSANDRA_USE_METRICS false 启用/禁用指标采集
cassandra.compression CASSANDRA_COMPRESSION none 无、SNAPPY、LZ4
cassandra.init_timeout_ms CASSANDRA_CLUSTER_INIT_TIMEOUT_MS 300000 指定Cassandra集群初始化超时(毫秒),适用于启动期间无可用主机的情况
cassandra.init_retry_interval_ms CASSANDRA_CLUSTER_INIT_RETRY_INTERVAL_MS 3000 指定Cassandra集群初始化重试间隔,适用于启动期间无可用主机的情况
cassandra.max_requests_per_connection_local CASSANDRA_MAX_REQUESTS_PER_CONNECTION_LOCAL 32768 Cassandra每个连接的最大本地请求数
cassandra.max_requests_per_connection_remote CASSANDRA_MAX_REQUESTS_PER_CONNECTION_REMOTE 32768 Cassandra每个连接的最大远程请求数
cassandra.credentials CASSANDRA_USE_CREDENTIALS false 凭证参数
cassandra.username CASSANDRA_USERNAME 指定用户名
cassandra.password CASSANDRA_PASSWORD 指定密码
cassandra.cloud.secure_connect_bundle_path CASSANDRA_CLOUD_SECURE_BUNDLE_PATH Cassandra云安全连接包路径
cassandra.cloud.client_id CASSANDRA_CLOUD_CLIENT_ID Cassandra云客户端ID
cassandra.cloud.client_secret CASSANDRA_CLOUD_CLIENT_SECRET Cassandra云客户端密钥
cassandra.socket.connect_timeout CASSANDRA_SOCKET_TIMEOUT 5000 设置从ThingsBoard到Cassandra的本机连接的超时(以毫秒为单位)。默认值为5000
cassandra.socket.read_timeout CASSANDRA_SOCKET_READ_TIMEOUT 20000 关闭连接之前超时。以毫秒为单位设置的值
cassandra.socket.keep_alive CASSANDRA_SOCKET_KEEP_ALIVE true 是否启用TCP keep-alive
cassandra.socket.reuse_address CASSANDRA_SOCKET_REUSE_ADDRESS true 启用/禁用地址重用,允许重用本地地址和端口
cassandra.socket.so_linger CASSANDRA_SOCKET_SO_LINGER 设置关闭时的逗留超时。默认情况下驱动程序不设置此选项,实际值取决于底层Netty传输的默认值
cassandra.socket.tcp_no_delay CASSANDRA_SOCKET_TCP_NO_DELAY false 启用/取消Nagle算法
cassandra.socket.receive_buffer_size CASSANDRA_SOCKET_RECEIVE_BUFFER_SIZE 设置接收缓冲区大小提示。默认情况下驱动程序不设置此选项,实际值取决于底层Netty传输的默认值
cassandra.socket.send_buffer_size CASSANDRA_SOCKET_SEND_BUFFER_SIZE 设置发送缓冲区大小提示。默认情况下驱动程序不设置此选项,实际值取决于底层Netty传输的默认值
cassandra.query.read_consistency_level CASSANDRA_READ_CONSISTENCY_LEVEL ONE Cassandra中的一致性级别可以配置为管理可用性与数据准确性。所有写入和读取操作的一致性级别默认为ONE
cassandra.query.write_consistency_level CASSANDRA_WRITE_CONSISTENCY_LEVEL ONE Cassandra中的一致性级别可以配置为管理可用性与数据准确性。所有写入和读取操作的一致性级别默认为ONE
cassandra.query.default_fetch_size CASSANDRA_DEFAULT_FETCH_SIZE 2000 获取大小指定Cassandra单次返回的行数(即每页大小)
cassandra.query.ts_key_value_partitioning TS_KV_PARTITIONING MONTHS 指定时间戳键值存储的分区大小。示例:分钟、小时、天、月、不定
cassandra.query.use_ts_key_value_partitioning_on_read USE_TS_KV_PARTITIONING_ON_READ true 启用/禁用读取查询时的时序键值分区
cassandra.query.ts_key_value_partitions_max_cache_size TS_KV_PARTITIONS_MAX_CACHE_SIZE 100000 每个服务在内存中缓存的分区数量,可减少重复插入相同分区的负载
cassandra.query.ts_key_value_ttl TS_KV_TTL 0 Cassandra记录的时序数据存活时间(秒)。0表示记录永不过期
cassandra.query.buffer_size CASSANDRA_QUERY_BUFFER_SIZE 200000 等待执行的Cassandra查询最大数量
cassandra.query.concurrent_limit CASSANDRA_QUERY_CONCURRENT_LIMIT 1000 Cassandra并发查询的最大数量
cassandra.query.permit_max_wait_time PERMIT_MAX_WAIT_TIME 120000 查询等待执行的最长时间(以毫秒为单位)
cassandra.query.dispatcher_threads CASSANDRA_QUERY_DISPATCHER_THREADS 2 分派Cassandra查询的线程数量
cassandra.query.callback_threads CASSANDRA_QUERY_CALLBACK_THREADS 4 用于管理I/O速率的缓冲速率执行器(读、写)。请参阅JMX中的“nosql-*-callback”线程
cassandra.query.result_processing_threads CASSANDRA_QUERY_RESULT_PROCESSING_THREADS 50 结果集转换器和处理。请参阅JMX中的“cassandra-callback”线程
cassandra.query.poll_ms CASSANDRA_QUERY_POLL_MS 50 Cassandra查询队列轮询间隔(以毫秒为单位)
cassandra.query.rate_limit_print_interval_ms CASSANDRA_QUERY_RATE_LIMIT_PRINT_MS 10000 打印Cassandra查询队列统计信息的时间间隔(以毫秒为单位)
cassandra.query.set_null_values_enabled CASSANDRA_QUERY_SET_NULL_VALUES_ENABLED true 在保存时将相同ts的除目标之外的所有数据类型值设置为null
cassandra.query.print_queries_freq CASSANDRA_QUERY_PRINT_FREQ 0 以指定频率记录cassandra查询之一(0 - 禁用日志记录)
cassandra.query.tenant_rate_limits.print_tenant_names CASSANDRA_QUERY_TENANT_RATE_LIMITS_PRINT_TENANT_NAMES false 打印Cassandra查询队列统计信息时是否打印限速租户名称

SQL配置参数

参数环境变量默认值说明
sql.attributes.batch_size SQL_ATTRIBUTES_BATCH_SIZE 1000 持久属性更新的批量大小
sql.attributes.batch_max_delay SQL_ATTRIBUTES_BATCH_MAX_DELAY_MS 50 属性条目队列轮询的最大超时。该值以毫秒为单位设置
sql.attributes.stats_print_interval_ms SQL_ATTRIBUTES_BATCH_STATS_PRINT_MS 10000 打印属性更新统计信息的时间间隔(以毫秒为单位)
sql.attributes.batch_threads SQL_ATTRIBUTES_BATCH_THREADS 3 批处理线程数必须是素数,如3或5,以获得完美的哈希分布
sql.attributes.value_no_xss_validation SQL_ATTRIBUTES_VALUE_NO_XSS_VALIDATION false 若为true将检查属性值是否存在XSS漏洞
sql.ts.batch_size SQL_TS_BATCH_SIZE 10000 持久时间序列插入的批量大小
sql.ts.batch_max_delay SQL_TS_BATCH_MAX_DELAY_MS 100 时间序列条目队列轮询的最大超时。设置的值以毫秒为单位
sql.ts.stats_print_interval_ms SQL_TS_BATCH_STATS_PRINT_MS 10000 打印时间序列插入统计信息的时间间隔(以毫秒为单位)
sql.ts.batch_threads SQL_TS_BATCH_THREADS 3 批处理线程数必须是素数,如3或5,以获得完美的哈希分布
sql.ts.value_no_xss_validation SQL_TS_VALUE_NO_XSS_VALIDATION false 若为true将检查遥测值是否存在XSS漏洞
sql.ts.callback_thread_pool_size SQL_TS_CALLBACK_THREAD_POOL_SIZE 12 遥测回调执行器的线程池大小
sql.ts_latest.batch_size SQL_TS_LATEST_BATCH_SIZE 1000 用于持久保存最新遥测更新的批量大小
sql.ts_latest.batch_max_delay SQL_TS_LATEST_BATCH_MAX_DELAY_MS 50 最新遥测条目队列轮询的最大超时。设置的值以毫秒为单位
sql.ts_latest.stats_print_interval_ms SQL_TS_LATEST_BATCH_STATS_PRINT_MS 10000 打印最新遥测更新统计数据的时间间隔(以毫秒为单位)
sql.ts_latest.batch_threads SQL_TS_LATEST_BATCH_THREADS 3 批处理线程数必须是素数,如3或5,以获得完美的哈希分布
sql.ts_latest.update_by_latest_ts SQL_TS_UPDATE_BY_LATEST_TIMESTAMP true 仅当新记录的时间戳大于或等于已保存最新值的时间戳时,才更新最新值。最新值与历史值分开存储,以便从数据库快速查找。历史值的插入在任何情况下都会执行
sql.events.batch_size SQL_EVENTS_BATCH_SIZE 10000 持久事件插入的批量大小
sql.events.batch_max_delay SQL_EVENTS_BATCH_MAX_DELAY_MS 100 事件条目队列轮询的最大超时。设置的值以毫秒为单位
sql.events.stats_print_interval_ms SQL_EVENTS_BATCH_STATS_PRINT_MS 10000 打印事件插入统计信息的时间间隔(以毫秒为单位)
sql.events.batch_threads SQL_EVENTS_BATCH_THREADS 3 批处理线程数必须是素数,如3或5,以获得完美的哈希分布
sql.events.partition_size SQL_EVENTS_REGULAR_PARTITION_SIZE_HOURS 168 划分事件的小时数。当前值对应于一周。
sql.events.debug_partition_size SQL_EVENTS_DEBUG_PARTITION_SIZE_HOURS 1 划分调试事件的小时数。当前值对应于一小时。
sql.edge_events.batch_size SQL_EDGE_EVENTS_BATCH_SIZE 1000 持久边缘事件插入的批量大小
sql.edge_events.batch_max_delay SQL_EDGE_EVENTS_BATCH_MAX_DELAY_MS 100 边缘事件条目队列轮询的最大超时。设置的值以毫秒为单位
sql.edge_events.stats_print_interval_ms SQL_EDGE_EVENTS_BATCH_STATS_PRINT_MS 10000 打印边缘事件插入统计数据的时间间隔(以毫秒为单位)
sql.edge_events.partition_size SQL_EDGE_EVENTS_PARTITION_SIZE_HOURS 168 划分边缘事件的小时数。当前值对应于一周。
sql.audit_logs.partition_size SQL_AUDIT_LOGS_PARTITION_SIZE_HOURS 168 默认值 - 1周
sql.cloud_events.batch_size SQL_CLOUD_EVENTS_BATCH_SIZE 1000 持久云事件插入的批量大小
sql.cloud_events.batch_max_delay SQL_CLOUD_EVENTS_BATCH_MAX_DELAY_MS 100 云事件条目队列轮询的最大超时。设置的值以毫秒为单位
sql.cloud_events.stats_print_interval_ms SQL_CLOUD_EVENTS_BATCH_STATS_PRINT_MS 10000 打印云事件插入统计信息的时间间隔(以毫秒为单位)
sql.cloud_events.partition_size SQL_CLOUD_EVENTS_PARTITION_SIZE_HOURS 24 划分云事件的小时数。当前值对应于一周。
sql.alarm_comments.partition_size SQL_ALARM_COMMENTS_PARTITION_SIZE_HOURS 168 默认值 - 1周
sql.notifications.partition_size SQL_NOTIFICATIONS_PARTITION_SIZE_HOURS 168 默认值 - 1周
sql.batch_sort SQL_BATCH_SORT true 指定批量更新前是否对实体进行排序。应启用集群模式以避免死锁
sql.remove_null_chars SQL_REMOVE_NULL_CHARS true 指定在插入之前是否从属性和时间序列的strValue中删除空字符
sql.log_queries SQL_LOG_QUERIES false 指定是否记录实体查询存储库生成的数据库查询及其参数
sql.log_queries_threshold SQL_LOG_QUERIES_THRESHOLD 5000 要记录的慢SQL查询的阈值。设置的值以毫秒为单位
sql.log_tenant_stats SQL_LOG_TENANT_STATS true 启用/禁用记录有关租户的统计信息
sql.log_tenant_stats_interval_ms SQL_LOG_TENANT_STATS_INTERVAL_MS 60000 打印租户最新统计信息的时间间隔(毫秒)
sql.postgres.ts_key_value_partitioning SQL_POSTGRES_TS_KV_PARTITIONING MONTHS 指定时间戳键值存储的分区大小。示例:天、月、年、不定。
sql.timescale.chunk_time_interval SQL_TIMESCALE_CHUNK_TIME_INTERVAL 604800000 指定新数据块存储的间隔大小。
sql.timescale.batch_threads SQL_TIMESCALE_BATCH_THREADS 3 批处理线程数必须是素数,如3或5,以获得完美的哈希分布
sql.ttl.ts.enabled SQL_TTL_TS_ENABLED true 启用/禁用时间序列记录的TTL(生存时间)
sql.ttl.ts.execution_interval_ms SQL_TTL_TS_EXECUTION_INTERVAL 86400000 毫秒数。当前值对应一天
sql.ttl.ts.ts_key_value_ttl SQL_TTL_TS_TS_KEY_VALUE_TTL 0 用于指定时间序列记录的系统TTL(生存时间)值的参数。以秒为单位设置的值。 0 - 记录永不过期。
sql.ttl.events.enabled SQL_TTL_EVENTS_ENABLED true 启用/禁用事件记录的TTL(生存时间)
sql.ttl.events.execution_interval_ms SQL_TTL_EVENTS_EXECUTION_INTERVAL 3600000 毫秒数(最大随机初始延迟和固定周期)。
sql.ttl.events.events_ttl SQL_TTL_EVENTS_EVENTS_TTL 0 秒数。默认情况下,TTL处于禁用状态。清理的准确性取决于sql.events.partition_size参数。
sql.ttl.events.debug_events_ttl SQL_TTL_EVENTS_DEBUG_EVENTS_TTL 604800 秒数。当前值对应于一周。清理的准确性取决于sql.events.debug_partition_size参数。
sql.ttl.edge_events.enabled SQL_TTL_EDGE_EVENTS_ENABLED true 启用/禁用边缘事件记录的TTL(生存时间)
sql.ttl.edge_events.execution_interval_ms SQL_TTL_EDGE_EVENTS_EXECUTION_INTERVAL 86400000 毫秒数。当前值对应一天
sql.ttl.edge_events.edge_events_ttl SQL_TTL_EDGE_EVENTS_TTL 2628000 秒数。当前值对应一个月
sql.ttl.alarms.checking_interval SQL_ALARMS_TTL_CHECKING_INTERVAL 7200000 毫秒数。当前值对应两小时
sql.ttl.alarms.removal_batch_size SQL_ALARMS_TTL_REMOVAL_BATCH_SIZE 3000 不以一次性方式、而是分批删除过期的告警
sql.ttl.rpc.enabled SQL_TTL_RPC_ENABLED true 启用/禁用rpc调用记录的TTL(生存时间)
sql.ttl.rpc.checking_interval SQL_RPC_TTL_CHECKING_INTERVAL 7200000 毫秒数。当前值对应两小时
sql.ttl.audit_logs.enabled SQL_TTL_AUDIT_LOGS_ENABLED true 启用/禁用审核日志记录的TTL(生存时间)
sql.ttl.audit_logs.ttl SQL_TTL_AUDIT_LOGS_SECS 0 默认禁用。清理的准确性取决于sql.audit_logs.partition_size
sql.ttl.audit_logs.checking_interval_ms SQL_TTL_AUDIT_LOGS_CHECKING_INTERVAL_MS 86400000 默认值 - 1天
sql.ttl.cloud_events.enabled SQL_TTL_CLOUD_EVENTS_ENABLED true 启用/禁用云事件记录的TTL(生存时间)
sql.ttl.cloud_events.execution_interval_ms SQL_TTL_CLOUD_EVENTS_EXECUTION_INTERVAL 86400000 毫秒数。当前值对应一天
sql.ttl.cloud_events.cloud_events_ttl SQL_TTL_CLOUD_EVENTS_TTL 2628000 秒数。当前值对应一个月
sql.ttl.notifications.enabled SQL_TTL_NOTIFICATIONS_ENABLED true 启用/禁用通知中心记录的TTL(生存时间)
sql.ttl.notifications.ttl SQL_TTL_NOTIFICATIONS_SECS 2592000 默认值 - 30天
sql.ttl.notifications.checking_interval_ms SQL_TTL_NOTIFICATIONS_CHECKING_INTERVAL_MS 86400000 默认值 - 1天
sql.relations.max_level SQL_RELATIONS_MAX_LEVEL 50 该值必须相当小,以尽早防止无限递归
sql.relations.pool_size SQL_RELATIONS_POOL_SIZE 4 该值必须相当小,以防止关系查询阻塞所有其他数据库调用
sql.relations.query_timeout SQL_RELATIONS_QUERY_TIMEOUT_SEC 20 该值必须相当小,以防止关系查询阻塞所有其他数据库调用

Actor系统参数

参数环境变量默认值说明
actors.system.throughput ACTORS_SYSTEM_THROUGHPUT 5 Actor系统在切换到下一个Actor之前,为每个Actor处理的消息数
actors.system.scheduler_pool_size ACTORS_SYSTEM_SCHEDULER_POOL_SIZE 1 Actor系统调度器的线程池大小
actors.system.max_actor_init_attempts ACTORS_SYSTEM_MAX_ACTOR_INIT_ATTEMPTS 10 禁用Actor之前尝试初始化的最大次数
actors.system.app_dispatcher_pool_size ACTORS_SYSTEM_APP_DISPATCHER_POOL_SIZE 1 主Actor系统调度器的线程池大小
actors.system.tenant_dispatcher_pool_size ACTORS_SYSTEM_TENANT_DISPATCHER_POOL_SIZE 2 处理租户Actor消息的调度器线程池大小
actors.system.device_dispatcher_pool_size ACTORS_SYSTEM_DEVICE_DISPATCHER_POOL_SIZE 4 处理设备Actor消息的调度器线程池大小
actors.system.rule_dispatcher_pool_size ACTORS_SYSTEM_RULE_DISPATCHER_POOL_SIZE 8 处理规则引擎(链/节点)Actor消息的调度器线程池大小
actors.system.edge_dispatcher_pool_size ACTORS_SYSTEM_EDGE_DISPATCHER_POOL_SIZE 4 处理Edge Actor消息的调度器线程池大小
actors.system.cfm_dispatcher_pool_size ACTORS_SYSTEM_CFM_DISPATCHER_POOL_SIZE 2 为CalculatedField管理器actor处理消息的actor系统调度器的线程池大小
actors.system.cfe_dispatcher_pool_size ACTORS_SYSTEM_CFE_DISPATCHER_POOL_SIZE 8 处理CalculatedField实体Actor消息的调度器线程池大小
actors.tenant.create_components_on_init ACTORS_TENANT_CREATE_COMPONENTS_ON_INIT true 在初始化时创建组件
actors.session.max_concurrent_sessions_per_device ACTORS_MAX_CONCURRENT_SESSION_PER_DEVICE 1 每台设备的最大并发会话数
actors.session.sync.timeout ACTORS_SESSION_SYNC_TIMEOUT 10000 使用同步会话(HTTP、CoAP)处理请求的默认超时(以毫秒为单位)
actors.rule.db_callback_thread_pool_size ACTORS_RULE_DB_CALLBACK_THREAD_POOL_SIZE 50 指定数据库请求回调执行器服务的线程池大小
actors.rule.mail_thread_pool_size ACTORS_RULE_MAIL_THREAD_POOL_SIZE 40 指定邮件发送执行器服务的线程池大小
actors.rule.mail_password_reset_thread_pool_size ACTORS_RULE_MAIL_PASSWORD_RESET_THREAD_POOL_SIZE 10 指定密码重置电子邮件的线程池大小
actors.rule.sms_thread_pool_size ACTORS_RULE_SMS_THREAD_POOL_SIZE 50 指定短信发送执行器服务的线程池大小
actors.rule.allow_system_mail_service ACTORS_RULE_ALLOW_SYSTEM_MAIL_SERVICE true 规则是否允许使用系统邮件服务
actors.rule.allow_system_sms_service ACTORS_RULE_ALLOW_SYSTEM_SMS_SERVICE true 规则是否允许使用系统短信服务
actors.rule.external_call_thread_pool_size ACTORS_RULE_EXTERNAL_CALL_THREAD_POOL_SIZE 50 指定外部调用服务的线程池大小
actors.rule.chain.error_persist_frequency ACTORS_RULE_CHAIN_ERROR_FREQUENCY 3000 特定Actor的错误按指定毫秒间隔持久化一次
actors.rule.chain.debug_mode_rate_limits_per_tenant.enabled ACTORS_RULE_CHAIN_DEBUG_MODE_RATE_LIMITS_PER_TENANT_ENABLED true 启用/禁用每个租户的所有规则节点的持久调试事件的速率限制
actors.rule.chain.debug_mode_rate_limits_per_tenant.configuration ACTORS_RULE_CHAIN_DEBUG_MODE_RATE_LIMITS_PER_TENANT_CONFIGURATION 50000:3600 DEBUG模式速率限制的值。默认情况下,每小时不超过50,000个事件
actors.rule.node.error_persist_frequency ACTORS_RULE_NODE_ERROR_FREQUENCY 3000 特定Actor的错误按指定毫秒间隔持久化一次
actors.rule.transaction.queue_size ACTORS_RULE_TRANSACTION_QUEUE_SIZE 15000 事务规则节点存储消息的队列大小
actors.rule.transaction.duration ACTORS_RULE_TRANSACTION_DURATION 60000 事务完成的超时时间(毫秒)
actors.rule.external.force_ack ACTORS_RULE_EXTERNAL_NODE_FORCE_ACK false 强制确认外部规则节点的传入消息以减少处理延迟。将外部节点处理的结果作为单独的消息排队到规则引擎。
actors.rpc.max_retries ACTORS_RPC_MAX_RETRIES 5 请求发送失败时持久RPC调用重试的最大数量
actors.rpc.submit_strategy ACTORS_RPC_SUBMIT_STRATEGY_TYPE BURST RPC提交策略。允许的值:BURST、SEQUENTIAL_ON_ACK_FROM_DEVICE、SEQUENTIAL_ON_RESPONSE_FROM_DEVICE。
actors.rpc.response_timeout_ms ACTORS_RPC_RESPONSE_TIMEOUT_MS 30000 RPC交付后收到响应的时间(以毫秒为单位)。仅用于SEQUENTIAL_ON_RESPONSE_FROM_DEVICE提交策略。
actors.rpc.close_session_on_rpc_delivery_timeout ACTORS_RPC_CLOSE_SESSION_ON_RPC_DELIVERY_TIMEOUT false RPC传输超时时关闭传输会话。启用后,RPC将恢复到排队状态。注意:MQTT传输中QoS 0不适用(无需确认),QoS 1适用(需确认),QoS 2不支持。CoAP传输中可确认请求适用,不可确认请求不适用。HTTP和SNMP传输中RPC被视为立即交付,无等待确认逻辑。
actors.statistics.enabled ACTORS_STATISTICS_ENABLED true 启用/禁用Actor统计
actors.statistics.persist_frequency ACTORS_STATISTICS_PERSIST_FREQUENCY 3600000 Actor统计持续频率(以毫秒为单位)
actors.calculated_fields.debug_mode_rate_limits_per_tenant.enabled ACTORS_CALCULATED_FIELD_DEBUG_MODE_RATE_LIMITS_PER_TENANT_ENABLED true 启用/禁用每个租户所有计算字段的持久化调试事件的速率限制
actors.calculated_fields.debug_mode_rate_limits_per_tenant.configuration ACTORS_CALCULATED_FIELD_DEBUG_MODE_RATE_LIMITS_PER_TENANT_CONFIGURATION 50000:3600 DEBUG模式速率限制的值。默认情况下,每小时不超过50,000个事件
actors.calculated_fields.calculation_timeout ACTORS_CALCULATION_TIMEOUT_SEC 5 接收计算结果的时间(以秒为单位)。
debug.settings.default_duration DEBUG_SETTINGS_DEFAULT_DURATION_MINUTES 15 调试模式的默认持续时间(以分钟为单位)。最小值为1分钟。租户配置设置会覆盖此设置。如果此设置的值无效,则将使用默认值(15分钟)。

缓存设置参数

参数环境变量默认值说明
cache.type CACHE_TYPE caffeine Caffeine或Redis(7.2为最新兼容版本)
cache.maximumPoolSize CACHE_MAXIMUM_POOL_SIZE 16 处理调用外部缓存的future的最大池大小
cache.attributes.enabled CACHE_ATTRIBUTES_ENABLED true 如果将“maxmemory-policy”Redis配置属性更改为“allkeys-lru”、“allkeys-lfu”或“allkeys-random”,请确保cache.type为“redis”且cache.attributes.enabled为“true”
cache.ts_latest.enabled CACHE_TS_LATEST_ENABLED true 将为SQL时间序列最新的DAO启用缓存旁路策略。如果将“maxmemory-policy”Redis配置属性更改为“allkeys-lru”、“allkeys-lfu”或“allkeys-random”,请确保cache.type为“redis”且cache.ts_latest.enabled为“true”
cache.specs.relations.timeToLiveInMinutes CACHE_SPECS_RELATIONS_TTL 1440 关系缓存TTL
cache.specs.relations.maxSize CACHE_SPECS_RELATIONS_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.deviceCredentials.timeToLiveInMinutes CACHE_SPECS_DEVICE_CREDENTIALS_TTL 1440 设备凭据缓存TTL
cache.specs.deviceCredentials.maxSize CACHE_SPECS_DEVICE_CREDENTIALS_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.devices.timeToLiveInMinutes CACHE_SPECS_DEVICES_TTL 1440 设备缓存TTL
cache.specs.devices.maxSize CACHE_SPECS_DEVICES_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.sessions.timeToLiveInMinutes CACHE_SPECS_SESSIONS_TTL 1440 会话缓存TTL
cache.specs.sessions.maxSize CACHE_SPECS_SESSIONS_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.assets.timeToLiveInMinutes CACHE_SPECS_ASSETS_TTL 1440 资源缓存TTL
cache.specs.assets.maxSize CACHE_SPECS_ASSETS_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.customers.timeToLiveInMinutes CACHE_SPECS_CUSTOMERS_TTL 1440 客户缓存TTL
cache.specs.customers.maxSize CACHE_SPECS_CUSTOMERS_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.users.timeToLiveInMinutes CACHE_SPECS_USERS_TTL 1440 用户缓存TTL
cache.specs.users.maxSize CACHE_SPECS_USERS_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.entityViews.timeToLiveInMinutes CACHE_SPECS_ENTITY_VIEWS_TTL 1440 实体视图缓存TTL
cache.specs.entityViews.maxSize CACHE_SPECS_ENTITY_VIEWS_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.claimDevices.timeToLiveInMinutes CACHE_SPECS_CLAIM_DEVICES_TTL 1440 设备认领缓存TTL
cache.specs.claimDevices.maxSize CACHE_SPECS_CLAIM_DEVICES_MAX_SIZE 1000 0表示缓存被禁用
cache.specs.securitySettings.timeToLiveInMinutes CACHE_SPECS_SECURITY_SETTINGS_TTL 1440 安全设置缓存TTL
cache.specs.securitySettings.maxSize CACHE_SPECS_SECURITY_SETTINGS_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.tenantProfiles.timeToLiveInMinutes CACHE_SPECS_TENANT_PROFILES_TTL 1440 租户配置缓存TTL
cache.specs.tenantProfiles.maxSize CACHE_SPECS_TENANT_PROFILES_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.tenants.timeToLiveInMinutes CACHE_SPECS_TENANTS_TTL 1440 租户缓存TTL
cache.specs.tenants.maxSize CACHE_SPECS_TENANTS_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.tenantsExist.timeToLiveInMinutes CACHE_SPECS_TENANTS_TTL 1440 环境变量有意与“租户”缓存中的相同,以使其相等。
cache.specs.tenantsExist.maxSize CACHE_SPECS_TENANTS_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.deviceProfiles.timeToLiveInMinutes CACHE_SPECS_DEVICE_PROFILES_TTL 1440 设备配置缓存TTL
cache.specs.deviceProfiles.maxSize CACHE_SPECS_DEVICE_PROFILES_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.assetProfiles.timeToLiveInMinutes CACHE_SPECS_ASSET_PROFILES_TTL 1440 资产配置缓存TTL
cache.specs.assetProfiles.maxSize CACHE_SPECS_ASSET_PROFILES_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.notificationSettings.timeToLiveInMinutes CACHE_SPECS_NOTIFICATION_SETTINGS_TTL 10 通知设置缓存TTL
cache.specs.notificationSettings.maxSize CACHE_SPECS_NOTIFICATION_SETTINGS_MAX_SIZE 1000 0表示缓存被禁用
cache.specs.sentNotifications.timeToLiveInMinutes CACHE_SPECS_SENT_NOTIFICATIONS_TTL 1440 发送通知缓存TTL
cache.specs.sentNotifications.maxSize CACHE_SPECS_SENT_NOTIFICATIONS_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.attributes.timeToLiveInMinutes CACHE_SPECS_ATTRIBUTES_TTL 1440 属性缓存TTL
cache.specs.attributes.maxSize CACHE_SPECS_ATTRIBUTES_MAX_SIZE 100000 0表示缓存被禁用
cache.specs.tsLatest.timeToLiveInMinutes CACHE_SPECS_TS_LATEST_TTL 1440 时间序列最新缓存TTL
cache.specs.tsLatest.maxSize CACHE_SPECS_TS_LATEST_MAX_SIZE 100000 0表示缓存被禁用
cache.specs.userSessionsInvalidation.timeToLiveInMinutes "0" 该TTL的值将被忽略并替换为JWT刷新令牌过期时间
cache.specs.userSessionsInvalidation.maxSize CACHE_SPECS_USERS_UPDATE_TIME_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.otaPackages.timeToLiveInMinutes CACHE_SPECS_OTA_PACKAGES_TTL 60 Ota包缓存TTL
cache.specs.otaPackages.maxSize CACHE_SPECS_OTA_PACKAGES_MAX_SIZE 10 0表示缓存被禁用
cache.specs.otaPackagesData.timeToLiveInMinutes CACHE_SPECS_OTA_PACKAGES_DATA_TTL 60 OTA包数据缓存TTL
cache.specs.otaPackagesData.maxSize CACHE_SPECS_OTA_PACKAGES_DATA_MAX_SIZE 10 0表示缓存被禁用
cache.specs.edges.timeToLiveInMinutes CACHE_SPECS_EDGES_TTL 1440 边缘缓存TTL
cache.specs.edges.maxSize CACHE_SPECS_EDGES_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.edgeSessions.timeToLiveInMinutes CACHE_SPECS_EDGE_SESSIONS_TTL 0 边缘会话缓存TTL;如果设置为“0”则没有过期时间
cache.specs.edgeSessions.maxSize CACHE_SPECS_EDGE_SESSIONS_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.relatedEdges.timeToLiveInMinutes CACHE_SPECS_RELATED_EDGES_TTL 1440 相关边缘缓存TTL
cache.specs.relatedEdges.maxSize CACHE_SPECS_RELATED_EDGES_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.repositorySettings.timeToLiveInMinutes CACHE_SPECS_REPOSITORY_SETTINGS_TTL 1440 存储库设置缓存TTL
cache.specs.repositorySettings.maxSize CACHE_SPECS_REPOSITORY_SETTINGS_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.autoCommitSettings.timeToLiveInMinutes CACHE_SPECS_AUTO_COMMIT_SETTINGS_TTL 1440 自动提交设置缓存TTL
cache.specs.autoCommitSettings.maxSize CACHE_SPECS_AUTO_COMMIT_SETTINGS_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.twoFaVerificationCodes.timeToLiveInMinutes CACHE_SPECS_TWO_FA_VERIFICATION_CODES_TTL 60 二因素验证码缓存TTL
cache.specs.twoFaVerificationCodes.maxSize CACHE_SPECS_TWO_FA_VERIFICATION_CODES_MAX_SIZE 100000 0表示缓存被禁用
cache.specs.versionControlTask.timeToLiveInMinutes CACHE_SPECS_VERSION_CONTROL_TASK_TTL 20 版本控制任务缓存TTL
cache.specs.versionControlTask.maxSize CACHE_SPECS_VERSION_CONTROL_TASK_MAX_SIZE 100000 0表示缓存被禁用
cache.specs.userSettings.timeToLiveInMinutes CACHE_SPECS_USER_SETTINGS_TTL 1440 用户设置缓存TTL
cache.specs.userSettings.maxSize CACHE_SPECS_USER_SETTINGS_MAX_SIZE 100000 0表示缓存被禁用
cache.specs.dashboardTitles.timeToLiveInMinutes CACHE_SPECS_DASHBOARD_TITLES_TTL 1440 仪表板标题缓存TTL
cache.specs.dashboardTitles.maxSize CACHE_SPECS_DASHBOARD_TITLES_MAX_SIZE 100000 0表示缓存被禁用
cache.specs.entityCount.timeToLiveInMinutes CACHE_SPECS_ENTITY_COUNT_TTL 1440 实体计数缓存TTL
cache.specs.entityCount.maxSize CACHE_SPECS_ENTITY_COUNT_MAX_SIZE 100000 0表示缓存被禁用
cache.specs.resourceInfo.timeToLiveInMinutes CACHE_SPECS_RESOURCE_INFO_TTL 1440 资源信息缓存TTL
cache.specs.resourceInfo.maxSize CACHE_SPECS_RESOURCE_INFO_MAX_SIZE 100000 0表示缓存被禁用
cache.specs.alarmTypes.timeToLiveInMinutes CACHE_SPECS_ALARM_TYPES_TTL 60 警报类型缓存TTL
cache.specs.alarmTypes.maxSize CACHE_SPECS_ALARM_TYPES_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.qrCodeSettings.timeToLiveInMinutes CACHE_SPECS_MOBILE_APP_SETTINGS_TTL 1440 二维码设置缓存TTL
cache.specs.qrCodeSettings.maxSize CACHE_SPECS_MOBILE_APP_SETTINGS_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.mobileSecretKey.timeToLiveInMinutes CACHE_MOBILE_SECRET_KEY_TTL 2 QR密钥缓存TTL
cache.specs.mobileSecretKey.maxSize CACHE_MOBILE_SECRET_KEY_MAX_SIZE 10000 0表示缓存被禁用
cache.specs.trendzSettings.timeToLiveInMinutes CACHE_SPECS_TRENDZ_SETTINGS_TTL 1440 Trendz设置缓存TTL
cache.specs.trendzSettings.maxSize CACHE_SPECS_TRENDZ_SETTINGS_MAX_SIZE 10000 0表示缓存被禁用
cache.notificationRules.timeToLiveInMinutes CACHE_SPECS_NOTIFICATION_RULES_TTL 30 通知规则缓存TTL
cache.notificationRules.maxSize CACHE_SPECS_NOTIFICATION_RULES_MAX_SIZE 1000 0表示缓存被禁用
cache.rateLimits.timeToLiveInMinutes CACHE_SPECS_RATE_LIMITS_TTL 120 速率限制缓存TTL
cache.rateLimits.maxSize CACHE_SPECS_RATE_LIMITS_MAX_SIZE 200000 0表示缓存被禁用
cache.entityLimits.timeToLiveInMinutes CACHE_SPECS_ENTITY_LIMITS_TTL 5 实体限制缓存TTL
cache.entityLimits.maxSize CACHE_SPECS_ENTITY_LIMITS_MAX_SIZE 100000 0表示缓存被禁用
cache.image.etag.timeToLiveInMinutes CACHE_SPECS_IMAGE_ETAGS_TTL 44640 图像ETag缓存TTL
cache.image.etag.maxSize CACHE_SPECS_IMAGE_ETAGS_MAX_SIZE 10000 0表示缓存被禁用
cache.image.systemImagesBrowserTtlInMinutes CACHE_SPECS_IMAGE_SYSTEM_BROWSER_TTL 0 浏览器缓存系统图片的TTL(分钟)。0表示缓存被禁用
cache.image.tenantImagesBrowserTtlInMinutes CACHE_SPECS_IMAGE_TENANT_BROWSER_TTL 0 浏览器缓存租户图片的TTL(分钟)。0表示缓存被禁用

Spring Data参数

参数环境变量默认值说明
spring.data.redis.repositories.enabled false 禁用它,因为它不是必需的。

Redis/Valkey配置参数

参数环境变量默认值说明
redis.connection.type REDIS_CONNECTION_TYPE standalone Redis部署类型:独立(单Redis节点部署)或集群
redis.standalone.host REDIS_HOST localhost Redis连接主机
redis.standalone.port REDIS_PORT 6379 Redis连接端口
redis.standalone.useDefaultClientConfig REDIS_USE_DEFAULT_CLIENT_CONFIG true 使用默认的Redis配置文件
redis.standalone.clientName REDIS_CLIENT_NAME standalone 仅当您使用非默认ClientConfig时才可以使用此值
redis.standalone.connectTimeout REDIS_CLIENT_CONNECT_TIMEOUT 30000 仅当您使用非默认ClientConfig时才可以使用此值
redis.standalone.readTimeout REDIS_CLIENT_READ_TIMEOUT 60000 仅当您使用非默认ClientConfig时才可以使用此值
redis.standalone.usePoolConfig REDIS_CLIENT_USE_POOL_CONFIG false 仅当您使用非默认ClientConfig时才可以使用此值
redis.cluster.nodes REDIS_NODES 要引导的“主机:端口”对的逗号分隔列表。
redis.cluster.max-redirects REDIS_MAX_REDIRECTS 12 跨集群执行命令时允许的最大重定向次数
redis.cluster.useDefaultPoolConfig REDIS_USE_DEFAULT_POOL_CONFIG true 若设置为false,将使用池配置部分的值来构建连接池配置
redis.sentinel.master REDIS_MASTER 主节点名称
redis.sentinel.sentinels REDIS_SENTINELS 以逗号分隔的“主机:端口”哨兵对列表
redis.sentinel.password REDIS_SENTINEL_PASSWORD 与哨兵进行身份验证的密码
redis.sentinel.useDefaultPoolConfig REDIS_USE_DEFAULT_POOL_CONFIG true 若设置为false,将使用池配置部分的值来构建连接池配置
redis.db REDIS_DB 0 数据库索引
redis.password REDIS_PASSWORD 数据库密码
redis.ssl.enabled TB_REDIS_SSL_ENABLED false 启用/禁用安全连接
redis.ssl.credentials.cert_file TB_REDIS_SSL_PEM_CERT Redis服务器(CA)证书的路径
redis.ssl.credentials.user_cert_file TB_REDIS_SSL_PEM_KEY 用户证书文件的路径。此项对客户端为可选配置,可用于双向身份验证
redis.ssl.credentials.user_key_file TB_REDIS_SSL_PEM_KEY_PASSWORD 用户私钥文件的路径。这对于客户端来说是可选的,并且仅在配置了“user_cert_file”时才需要。
redis.pool_config.maxTotal REDIS_POOL_CONFIG_MAX_TOTAL 128 连接池可分配的最大连接数
redis.pool_config.maxIdle REDIS_POOL_CONFIG_MAX_IDLE 128 池中可维持且不被关闭的最大空闲连接数
redis.pool_config.minIdle REDIS_POOL_CONFIG_MIN_IDLE 16 池中可以维持且不被关闭的最小空闲连接数
redis.pool_config.testOnBorrow REDIS_POOL_CONFIG_TEST_ON_BORROW true 启用/禁用借用连接时发送的PING命令
redis.pool_config.testOnReturn REDIS_POOL_CONFIG_TEST_ON_RETURN true 该属性用于指定在将连接返回到连接池之前是否对其进行测试。
redis.pool_config.testWhileIdle REDIS_POOL_CONFIG_TEST_WHILE_IDLE true 该属性用于Redis中的连接池上下文
redis.pool_config.minEvictableMs REDIS_POOL_CONFIG_MIN_EVICTABLE_MS 60000 空闲连接在被连接池逐出之前所需的最短空闲时间,单位为毫秒
redis.pool_config.evictionRunsMs REDIS_POOL_CONFIG_EVICTION_RUNS_MS 30000 指定两次连续驱逐运行之间的时间间隔(以毫秒为单位)
redis.pool_config.maxWaitMills REDIS_POOL_CONFIG_MAX_WAIT_MS 60000 当所有连接都耗尽时,客户端愿意等待池中连接的最长时间(以毫秒为单位)
redis.pool_config.numberTestsPerEvictionRun REDIS_POOL_CONFIG_NUMBER_TESTS_PER_EVICTION_RUN 3 指定每次逐出运行期间要测试逐出的连接数
redis.pool_config.blockWhenExhausted REDIS_POOL_CONFIG_BLOCK_WHEN_EXHAUSTED true 确定当线程从池中请求连接但没有可用连接并且由于maxTotal配置而池无法创建更多连接时的行为
redis.evictTtlInMs REDIS_EVICT_TTL_MS 60000 TTL用于替代DEL以启用事务支持的短期SET命令

更新版本参数

参数环境变量默认值说明
updates.enabled UPDATES_ENABLED true 启用/禁用新版本检查

Spring CORS配置参数

参数环境变量默认值说明
spring.mvc.cors.mappings."[/api/**]".allowed-origin-patterns "*" 允许的以逗号分隔的来源列表。 '*' 允许所有来源。如果未设置,则禁用CORS支持。
spring.mvc.cors.mappings."[/api/**]".allowed-methods "*" 允许的以逗号分隔的方法列表。 '*' 允许所有方法。
spring.mvc.cors.mappings."[/api/**]".allowed-headers "*" 请求中允许的以逗号分隔的标头列表。 '*' 允许所有标头。
spring.mvc.cors.mappings."[/api/**]".max-age "1800" 客户端可以缓存飞行前请求的响应多长时间(以秒为单位)。
spring.mvc.cors.mappings."[/api/**]".allow-credentials "true" 设置是否支持凭据。如果未设置,则不支持凭据。

通用Spring参数

参数环境变量默认值说明
spring.main.allow-circular-references "true" Spring Boot配置属性控制是否允许bean之间的循环依赖。
spring.freemarker.checkTemplateLocation "false" spring freemarker配置
spring.mvc.async.request-timeout SPRING_MVC_ASYNC_REQUEST_TIMEOUT 30000 异步请求的默认超时时间(以毫秒为单位)
spring.mvc.pathmatch.matching-strategy "ANT_PATH_MATCHER" 对于Swagger中的端点匹配
spring.resources.chain.compressed "true" 此属性启用或禁用对提供预压缩资源(例如 .gzip或 .br文件)的支持
spring.resources.chain.strategy.content.enabled "true" 此属性启用或禁用内容版本策略。这种策略允许Spring为静态资源生成一个唯一的版本,该版本基于资源的内容
spring.servlet.multipart.max-file-size SPRING_SERVLET_MULTIPART_MAX_FILE_SIZE 50MB 配置文件上传时总文件大小不能超过50MB
spring.servlet.multipart.max-request-size SPRING_SERVLET_MULTIPART_MAX_REQUEST_SIZE 50MB multipart/form-data的总请求大小不能超过50MB
spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation "true" 修复Postgres JPA错误(方法org.postgresql.jdbc.PgConnection.createClob() 尚未实现)
spring.jpa.properties.hibernate.order_by.default_null_ordering SPRING_JPA_PROPERTIES_HIBERNATE_ORDER_BY_DEFAULT_NULL_ORDERING last 注意:对于当前的Spring JPA版本,忽略Sort.Order的自定义NullHandling并使用此参数
spring.jpa.properties.hibernate.dialect SPRING_JPA_DIALECT org.thingsboard.server.dao.ThingsboardPostgreSQLDialect 我们使用包含ilike(arg1, arg2) 函数的自定义方言(解释为postgres ILIKE运算符)

SQL DAO配置参数

参数环境变量默认值说明
spring.data.jpa.repositories.enabled "true" 启用/禁用Spring Data JPA存储库支持
spring.jpa.properties.jakarta.persistence.query.timeout JAVAX_PERSISTENCE_QUERY_TIMEOUT 30000 JDBC查询的一般超时
spring.jpa.open-in-view "false" 默认启用。因此,可以在视图渲染期间执行数据库查询。显式配置spring.jpa.open-in-view以禁用此警告
spring.jpa.hibernate.ddl-auto "none" 您可以设置Hibernate功能,以更细粒度的方式控制DDL行为。标准的Hibernate属性值为none、validate、update、create-drop。 Spring Boot根据它认为您的数据库是否嵌入(默认创建-删除)或不(默认无)为您选择默认值
spring.datasource.driverClassName SPRING_DRIVER_CLASS_NAME org.postgresql.Driver Spring JPA的数据库驱动程序 - org.postgresql.Driver
spring.datasource.url SPRING_DATASOURCE_URL jdbc:postgresql://localhost:5432/tb_edge 数据库连接地址
spring.datasource.username SPRING_DATASOURCE_USERNAME postgres 数据库用户名
spring.datasource.password SPRING_DATASOURCE_PASSWORD postgres 数据库用户密码
spring.datasource.hikari.leakDetectionThreshold SPRING_DATASOURCE_HIKARI_LEAK_DETECTION_THRESHOLD 0 此属性控制在记录指示可能的连接泄漏的消息之前连接可以脱离池的时间量。值为0表示禁用泄漏检测
spring.datasource.hikari.maximumPoolSize SPRING_DATASOURCE_MAXIMUM_POOL_SIZE 16 随着需求的增加,此属性会增加池中的连接数量。同时,该属性确保池不会增长到耗尽系统资源的程度,从而最终影响应用程序的性能和可用性
spring.datasource.hikari.registerMbeans SPRING_DATASOURCE_HIKARI_REGISTER_MBEANS false 启用MBean通过JMX诊断池状态
spring.datasource.events.enabled SPRING_DEDICATED_EVENTS_DATASOURCE_ENABLED false 为事件和审核日志启用专用数据源(单独的数据库)。在启用此功能之前,请确保已在新数据库中设置以下表:error_event、lc_event、rule_chain_debug_event、rule_node_debug_event、stats_event、audit_log、cf_debug_event
spring.datasource.events.driverClassName SPRING_EVENTS_DATASOURCE_DRIVER_CLASS_NAME org.postgresql.Driver 用于事件数据源的Spring JPA数据库驱动程序
spring.datasource.events.url SPRING_EVENTS_DATASOURCE_URL jdbc:postgresql://localhost:5432/thingsboard_events 事件数据源的数据库连接URL
spring.datasource.events.username SPRING_EVENTS_DATASOURCE_USERNAME postgres 事件数据源的数据库用户名
spring.datasource.events.password SPRING_EVENTS_DATASOURCE_PASSWORD postgres 事件数据源的数据库用户密码
spring.datasource.events.hikari.leakDetectionThreshold SPRING_EVENTS_DATASOURCE_HIKARI_LEAK_DETECTION_THRESHOLD 0 此属性控制在记录一条消息(指示事件数据源可能存在连接泄漏)之前连接可以脱离池的时间量。值为0表示禁用泄漏检测
spring.datasource.events.hikari.maximumPoolSize SPRING_EVENTS_DATASOURCE_MAXIMUM_POOL_SIZE 4 随着事件数据源需求的增加,此属性会增加池中的连接数。同时,该属性确保池不会增长到耗尽系统资源的程度,从而最终影响应用程序的性能和可用性
spring.datasource.events.hikari.registerMbeans SPRING_EVENTS_DATASOURCE_HIKARI_REGISTER_MBEANS false 启用MBean通过JMX诊断事件数据源的池状态

审计日志参数

参数环境变量默认值说明
audit-log.enabled AUDIT_LOG_ENABLED true 启用/禁用审核日志功能
audit-log.logging-level.mask."device" AUDIT_LOG_MASK_DEVICE W 设备日志记录级别。允许值:OFF(禁用)、W(日志写入操作)、RW(日志读写操作)
audit-log.logging-level.mask."asset" AUDIT_LOG_MASK_ASSET W 资产记录级别。允许值:OFF(禁用)、W(日志写入操作)、RW(日志读写操作)
audit-log.logging-level.mask."dashboard" AUDIT_LOG_MASK_DASHBOARD W 仪表板日志记录级别。允许值:OFF(禁用)、W(日志写入操作)、RW(日志读写操作)
audit-log.logging-level.mask."widget_type" AUDIT_LOG_MASK_WIDGET_TYPE W 小部件类型日志记录级别。允许值:OFF(禁用)、W(日志写入操作)、RW(日志读写操作)
audit-log.logging-level.mask."widgets_bundle" AUDIT_LOG_MASK_WIDGETS_BUNDLE W 小部件捆绑记录级别。允许值:OFF(禁用)、W(日志写入操作)、RW(日志读写操作)
audit-log.logging-level.mask."customer" AUDIT_LOG_MASK_CUSTOMER W 客户记录级别。允许值:OFF(禁用)、W(日志写入操作)、RW(日志读写操作)
audit-log.logging-level.mask."user" AUDIT_LOG_MASK_USER W 用户日志记录级别。允许值:OFF(禁用)、W(日志写入操作)、RW(日志读写操作)
audit-log.logging-level.mask."rule_chain" AUDIT_LOG_MASK_RULE_CHAIN W 规则链日志记录级别。允许值:OFF(禁用)、W(日志写入操作)、RW(日志读写操作)
audit-log.logging-level.mask."alarm" AUDIT_LOG_MASK_ALARM W 报警记录级别。允许值:OFF(禁用)、W(日志写入操作)、RW(日志读写操作)
audit-log.logging-level.mask."entity_view" AUDIT_LOG_MASK_ENTITY_VIEW W 实体视图日志记录级别。允许值:OFF(禁用)、W(日志写入操作)、RW(日志读写操作)
audit-log.logging-level.mask."device_profile" AUDIT_LOG_MASK_DEVICE_PROFILE W 设备配置日志记录级别。允许值:OFF(禁用)、W(日志写入操作)、RW(日志读写操作)
audit-log.logging-level.mask."asset_profile" AUDIT_LOG_MASK_ASSET_PROFILE W 资产配置日志记录级别。允许值:OFF(禁用)、W(日志写入操作)、RW(日志读写操作)
audit-log.logging-level.mask."edge" AUDIT_LOG_MASK_EDGE W 边缘日志记录级别。允许值:OFF(禁用)、W(日志写入操作)、RW(日志读写操作)
audit-log.logging-level.mask."tb_resource" AUDIT_LOG_MASK_RESOURCE W TB资源日志记录级别。允许值:OFF(禁用)、W(日志写入操作)、RW(日志读写操作)
audit-log.logging-level.mask."ota_package" AUDIT_LOG_MASK_OTA_PACKAGE W Ota包日志记录级别。允许值:OFF(禁用)、W(日志写入操作)、RW(日志读写操作)
audit-log.logging-level.mask."calculated_field" AUDIT_LOG_MASK_CALCULATED_FIELD W 计算字段日志记录级别。允许值:OFF(禁用)、W(日志写入操作)、RW(日志读写操作)
audit-log.sink.type AUDIT_LOG_SINK_TYPE none 外部接收器(Sink)的类型。可选项:none、elasticsearch
audit-log.sink.index_pattern AUDIT_LOG_SINK_INDEX_PATTERN @{TENANT}_AUDIT_LOG_@{DATE} 存储审计日志的索引名称 索引名称可以包含下一个占位符(非强制): @{TENANT} - 由租户ID替换 @{DATE} - 由audit_log.sink.date_format中提供的格式的当前日期替换
audit-log.sink.date_format AUDIT_LOG_SINK_DATE_FORMAT YYYY.MM.dd 日期格式。该模式的详细信息可以在这里找到:https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html
audit-log.sink.scheme_name AUDIT_LOG_SINK_SCHEME_NAME http http或https
audit-log.sink.host AUDIT_LOG_SINK_HOST localhost 外部接收器系统主机
audit-log.sink.port AUDIT_LOG_SINK_PORT 9200 外部接收器系统端口
audit-log.sink.user_name AUDIT_LOG_SINK_USER_NAME 用于访问外部接收器系统的用户名
audit-log.sink.password AUDIT_LOG_SINK_PASSWORD 用于访问外部接收器系统的密码

设备状态参数

参数环境变量默认值说明
state.defaultInactivityTimeoutInSec DEFAULT_INACTIVITY_TIMEOUT 600 设备不活动超时是一个全局配置参数,定义服务器何时将设备标记为“不活动”。参数值以秒为单位。用户可以通过设置“inactivityTimeout”服务器端属性来覆盖单个设备的此参数(注意:期望值以毫秒为单位)。我们建议此参数与会话不活动超时(“transport.sessions.inactivity_timeout”或TB_TRANSPORT_SESSIONS_INACTIVITY_TIMEOUT)参数同步,该参数负责检测过时的设备连接会话。会话不活动超时参数的值应大于或等于设备不活动超时。请注意,会话不活动超时以毫秒为单位设置,而设备不活动超时以秒为单位。
state.defaultStateCheckIntervalInSec DEFAULT_STATE_CHECK_INTERVAL 60 在指定时间后检查设备状态的时间间隔。时间以秒为单位
state.persistToTelemetry PERSIST_STATE_TO_TELEMETRY false 控制我们是否将设备“活动”标志存储在属性(默认)或遥测中。如果您决定更改此参数,则应按照以下方式之一重新创建设备信息视图: 如果“persistToTelemetry”从“false”更改为“true”:“CREATE OR REPLACE VIEW device_info_view AS SELECT * FROM device_info_active_ts_view;”如果“persistToTelemetry”从“true”更改为“false”:“CREATE OR REPLACE VIEW device_info_view AS SELECT * FROM device_info_active_attribute_view;”
state.telemetryTtl STATE_TELEMETRY_TTL 0 定义设备状态遥测数据的生存时间的毫秒值(例如“active”、“lastActivityTime”)。仅当state.persistToTelemetry设置为“true”且Cassandra用于时间序列数据时使用。 0表示生存时间机制已禁用。
state.initFetchPackSize TB_DEVICE_STATE_INIT_FETCH_PACK_SIZE 50000 初始化设备活动状态时每批获取的设备记录数
state.rule.node.deviceState.rateLimit DEVICE_STATE_NODE_RATE_LIMIT_CONFIGURATION 1:1,30:60,60:3600 定义设备连接事件的触发速率。以逗号分隔的"容量:持续时间"对列表,用于定义令牌桶限流算法的带宽容量和填充周期。填充策略为贪心模式。详情请参阅Bucket4j库文档。

Tbel参数

参数环境变量默认值说明
tbel.enabled TBEL_ENABLED true 启用/禁用TBEL功能。
tbel.max_total_args_size TBEL_MAX_TOTAL_ARGS_SIZE 100000 限制传递给函数以执行脚本的参数数量
tbel.max_result_size TBEL_MAX_RESULT_SIZE 300000 处理脚本后结果中允许的最大符号数
tbel.max_script_body_size TBEL_MAX_SCRIPT_BODY_SIZE 50000 脚本主体中允许的最大符号数
tbel.max_memory_limit_mb TBEL_MAX_MEMORY_LIMIT_MB 8 允许的最大TBEL脚本执行内存
tbel.max_errors TBEL_MAX_ERRORS 3 TBEL脚本被列入黑名单之前允许的最大执行错误数
tbel.max_requests_timeout TBEL_MAX_REQUEST_TIMEOUT 500 TBEL Eval最大请求超时(以毫秒为单位)。 0 - 无超时
tbel.max_black_list_duration_sec TBEL_MAX_BLACKLIST_DURATION_SEC 60 黑名单功能在列表中停留的最长时间(以秒为单位)。
tbel.thread_pool_size TBEL_THREAD_POOL_SIZE 50 指定javascript执行器服务的线程池大小
tbel.compiled_scripts_cache_size TBEL_COMPILED_SCRIPTS_CACHE_SIZE 1000 TBEL编译脚本的最大缓存大小
tbel.stats.enabled TB_TBEL_STATS_ENABLED false 启用/禁用TBEL引擎的统计信息收集
tbel.stats.print_interval_ms TB_TBEL_STATS_PRINT_INTERVAL_MS 10000 TBEL统计数据的记录间隔

JS参数

参数环境变量默认值说明
js.evaluator JS_EVALUATOR local 本地(Nashorn引擎,已弃用)或远程JS执行器 (NodeJS)
js.max_total_args_size JS_MAX_TOTAL_ARGS_SIZE 100000 限制传递给函数以执行脚本的参数数量
js.max_result_size JS_MAX_RESULT_SIZE 300000 处理脚本后结果中允许的最大符号数
js.max_script_body_size JS_MAX_SCRIPT_BODY_SIZE 50000 脚本正文中允许的最大符号数
js.local.js_thread_pool_size LOCAL_JS_THREAD_POOL_SIZE 50 指定javascript执行器服务的线程池大小
js.local.use_js_sandbox USE_LOCAL_JS_SANDBOX true 使用沙盒(安全)JVM JavaScript环境
js.local.monitor_thread_pool_size LOCAL_JS_SANDBOX_MONITOR_THREAD_POOL_SIZE 4 指定JavaScript沙箱资源监视器的线程池大小
js.local.max_cpu_time LOCAL_JS_SANDBOX_MAX_CPU_TIME 8000 脚本执行允许的最大CPU时间(以毫秒为单位)
js.local.max_memory LOCAL_JS_SANDBOX_MAX_MEMORY 104857600 JS执行器线程可以分配的最大内存(以字节为单位)(近似计算)。由于Nashorn 0.4.2的实现,不建议将零内存限制与非零CPU限制结合使用。对于大多数情况,100MiB实际上是无限的
js.local.max_errors LOCAL_JS_SANDBOX_MAX_ERRORS 3 JavaScript将被列入黑名单之前允许的最大JavaScript执行错误数
js.local.max_requests_timeout LOCAL_JS_MAX_REQUEST_TIMEOUT 0 JS Eval最大请求超时。 0 - 无超时
js.local.max_black_list_duration_sec LOCAL_JS_SANDBOX_MAX_BLACKLIST_DURATION_SEC 60 黑名单功能在列表中停留的最长时间(以秒为单位)。
js.local.stats.enabled TB_JS_LOCAL_STATS_ENABLED false 启用/禁用本地JS执行器的统计信息收集
js.local.stats.print_interval_ms TB_JS_LOCAL_STATS_PRINT_INTERVAL_MS 10000 本地JS执行器统计信息的日志记录间隔
js.remote.js_thread_pool_size REMOTE_JS_THREAD_POOL_SIZE 50 指定javascript执行器服务的线程池大小
js.remote.max_errors REMOTE_JS_SANDBOX_MAX_ERRORS 3 JavaScript将被列入黑名单之前允许的最大JavaScript执行错误数
js.remote.max_black_list_duration_sec REMOTE_JS_SANDBOX_MAX_BLACKLIST_DURATION_SEC 60 黑名单功能在列表中停留的最长时间(以秒为单位)。
js.remote.stats.enabled TB_JS_REMOTE_STATS_ENABLED false 启用/禁用远程JS执行器的统计信息收集
js.remote.stats.print_interval_ms TB_JS_REMOTE_STATS_PRINT_INTERVAL_MS 10000 远程JS执行器统计记录的时间间隔

传输配置参数

参数环境变量默认值说明
transport.sessions.inactivity_timeout TB_TRANSPORT_SESSIONS_INACTIVITY_TIMEOUT 600000 会话不活动超时是一个全局配置参数,定义最后一条消息从设备到达后设备传输会话将打开的时间。参数值以毫秒为单位。如果设备发送任何消息(包括keepalive消息),设备会话的最后活动时间就会更新。如果没有活动,会话将关闭,所有订阅都将被删除。我们建议此参数与设备不活动超时(“state.defaultInactivityTimeoutInSec”或DEFAULT_INACTIVITY_TIMEOUT)参数同步,该参数负责检测平台核心服务中的设备连接状态。会话不活动超时参数的值应大于或等于设备不活动超时。请注意,会话不活动超时以毫秒为单位设置,而设备不活动超时以秒为单位。
transport.sessions.report_timeout TB_TRANSPORT_SESSIONS_REPORT_TIMEOUT 3000 定期检查过期会话并报告会话上次活动时间更改的时间间隔
transport.activity.reporting_strategy TB_TRANSPORT_ACTIVITY_REPORTING_STRATEGY LAST 指定每个报告周期内上报活动事件的策略。可选值为FIRST、LAST、FIRST_AND_LAST和ALL。FIRST:仅上报周期内的第一个活动事件;LAST:仅上报周期内的最后一个活动事件;FIRST_AND_LAST:同时上报周期内的第一个和最后一个活动事件;ALL:上报周期内的所有活动事件。
transport.json.type_cast_enabled JSON_TYPE_CAST_ENABLED true 处理遥测/属性JSON时,如果可能,将字符串数据类型转换为数字
transport.json.max_string_value_length JSON_MAX_STRING_VALUE_LENGTH 0 处理遥测/属性JSON时允许的最大字符串值长度(0值禁用字符串值长度检查)
transport.client_side_rpc.timeout CLIENT_SIDE_RPC_TIMEOUT 60000 客户端RPC命令处理超时时间。时间(以毫秒为单位)
transport.api_enabled TB_TRANSPORT_API_ENABLED true 启用/禁用http/mqtt/coap/lwm2m传输协议(比某些协议的“启用”属性具有更高的优先级)
transport.log.enabled TB_TRANSPORT_LOG_ENABLED true 启用/禁用遥测传输消息的日志。例如,记录LwM2M注册更新
transport.log.max_length TB_TRANSPORT_LOG_MAX_LENGTH 1024 日志消息的最大长度。如果需要,内容将被截断为指定值
transport.rate_limits.ip_limits_enabled TB_TRANSPORT_IP_RATE_LIMITS_ENABLED false 启用或禁用通用速率限制。设备和租户特定的速率限制在租户配置中进行控制。
transport.rate_limits.max_wrong_credentials_per_ip TB_TRANSPORT_MAX_WRONG_CREDENTIALS_PER_IP 10 使用无效凭据的最大连接尝试次数
transport.rate_limits.ip_block_timeout TB_TRANSPORT_IP_BLOCK_TIMEOUT 60000 阻止IP地址过期的超时(以毫秒为单位)
transport.http.enabled HTTP_ENABLED true 启用/禁用本地HTTP传输协议
transport.http.request_timeout HTTP_REQUEST_TIMEOUT 60000 HTTP请求处理超时(以毫秒为单位)
transport.http.max_request_timeout HTTP_MAX_REQUEST_TIMEOUT 300000 HTTP最大请求处理超时(以毫秒为单位)
transport.http.max_payload_size HTTP_TRANSPORT_MAX_PAYLOAD_SIZE_LIMIT_CONFIGURATION /api/v1/*/rpc/**=65536;/api/v1/**=52428800 以分号分隔的urlPattern=maxPayloadSize配置列表,用于定义指定URL模式的HTTP请求最大大小。命中第一条后将忽略后续规则
transport.mqtt.enabled MQTT_ENABLED true 启用/禁用mqtt传输协议
transport.mqtt.bind_address MQTT_BIND_ADDRESS 0.0.0.0 MQTT绑定地址
transport.mqtt.bind_port MQTT_BIND_PORT 1883 MQTT绑定端口
transport.mqtt.proxy_enabled MQTT_PROXY_PROTOCOL_ENABLED false 启用代理协议支持。默认禁用。如果启用,则支持v1和v2。对于在日志中获取客户端的真实IP地址和速率限制很有用。
transport.mqtt.timeout MQTT_TIMEOUT 10000 MQTT处理超时(以毫秒为单位)
transport.mqtt.disconnect_timeout MQTT_DISCONNECT_TIMEOUT 1000 MQTT断开连接超时(以毫秒为单位)。服务器发送断开连接消息后等待客户端断开连接的时间。
transport.mqtt.msg_queue_size_per_device_limit MQTT_MSG_QUEUE_SIZE_PER_DEVICE_LIMIT 100 设备连接前在队列中排队等待发送的消息数限制。此限制在TenantProfileLimits机制之前的底层生效
transport.mqtt.gateway_metrics_report_interval_sec MQTT_GATEWAY_METRICS_REPORT_INTERVAL_SEC 60 网关指标定期上报时间间隔
transport.mqtt.netty.leak_detector_level NETTY_LEAK_DETECTOR_LVL DISABLED Netty检漏仪级别
transport.mqtt.netty.boss_group_thread_count NETTY_BOSS_GROUP_THREADS 1 Netty BOSS线程数
transport.mqtt.netty.worker_group_thread_count NETTY_WORKER_GROUP_THREADS 12 Netty工作线程数
transport.mqtt.netty.max_payload_size NETTY_MAX_PAYLOAD_SIZE 65536 最大有效负载大小(以字节为单位)
transport.mqtt.netty.so_keep_alive NETTY_SO_KEEPALIVE false 启用TCP保活。这意味着当连接空闲一段时间后,TCP开始发送keepalive探测
transport.mqtt.ssl.enabled MQTT_SSL_ENABLED false 启用/禁用SSL支持
transport.mqtt.ssl.bind_address MQTT_SSL_BIND_ADDRESS 0.0.0.0 MQTT SSL绑定地址
transport.mqtt.ssl.bind_port MQTT_SSL_BIND_PORT 8883 MQTT SSL绑定端口
transport.mqtt.ssl.protocol MQTT_SSL_PROTOCOL TLSv1.2 SSL协议:请参阅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 服务器凭证类型(PEM - pem证书文件;KEYSTORE - java密钥库)
transport.mqtt.ssl.credentials.pem.cert_file MQTT_SSL_PEM_CERT mqttserver.pem 服务器证书文件的路径(保存服务器证书或证书链,可能包括服务器私钥)
transport.mqtt.ssl.credentials.pem.key_file MQTT_SSL_PEM_KEY mqttserver_key.pem 服务器证书私钥文件的路径。默认可选。如果服务器证书文件中不存在私钥,则需要;
transport.mqtt.ssl.credentials.pem.key_password MQTT_SSL_PEM_KEY_PASSWORD server_key_password 服务器证书私钥密码(可选)
transport.mqtt.ssl.credentials.keystore.type MQTT_SSL_KEY_STORE_TYPE JKS 密钥库的类型(JKS或PKCS12)
transport.mqtt.ssl.credentials.keystore.store_file MQTT_SSL_KEY_STORE mqttserver.jks 保存SSL证书的密钥库的路径
transport.mqtt.ssl.credentials.keystore.store_password MQTT_SSL_KEY_STORE_PASSWORD server_ks_password 用于访问密钥库的密码
transport.mqtt.ssl.credentials.keystore.key_alias MQTT_SSL_KEY_ALIAS 私钥的可选别名。如果未设置,平台将从密钥库加载第一个私钥
transport.mqtt.ssl.credentials.keystore.key_password MQTT_SSL_KEY_PASSWORD server_key_password 用于访问私钥的可选密码。如果不设置,平台会尝试加载不受密码保护的私钥;
transport.mqtt.ssl.skip_validity_check_for_client_cert MQTT_SSL_SKIP_VALIDITY_CHECK_FOR_CLIENT_CERT false 跳过客户端证书的证书有效性检查。
transport.coap.enabled COAP_ENABLED true 启用/禁用CoAP传输协议
transport.coap.timeout COAP_TIMEOUT 10000 CoaP处理超时(以毫秒为单位)
transport.coap.piggyback_timeout COAP_PIGGYBACK_TIMEOUT 500 CoaP搭载响应超时(以毫秒为单位)
transport.coap.psm_activity_timer COAP_PSM_ACTIVITY_TIMER 10000 如果设备配置中未指定,则默认PSM活动计时器
transport.coap.paging_transmission_window COAP_PAGING_TRANSMISSION_WINDOW 10000 如果设备配置中未指定,则默认PSM活动计时器
transport.lwm2m.enabled LWM2M_ENABLED true 启用/禁用LwM2M传输协议
transport.lwm2m.dtls.retransmission_timeout LWM2M_DTLS_RETRANSMISSION_TIMEOUT_MS 9000 RFC7925重传超时(毫秒)=9000
transport.lwm2m.dtls.connection_id_length LWM2M_DTLS_CONNECTION_ID_LENGTH LWM2M的CoAP DTLS连接ID长度。 RFC 9146,DTLS 1.2的连接标识符 默认值:8控制DTLS连接ID长度 (CID) 的使用。 - “关闭”以停用它。 - “on”激活连接ID支持(与CID 0或更多0相同)。 - 正值定义生成的CID大小(以字节为单位)。 - 值0表示我们接受使用CID,但不会为外部对等方生成CID(启用支持,但不启用传入流量)。 - 0到 <= 4之间的值:使用SingleNodeConnectionIdGenerator - > 4的值:使用MultiNodeConnectionIdGenerator
transport.lwm2m.server.id LWM2M_SERVER_ID 123 LwM2M服务器ID
transport.lwm2m.server.bind_address LWM2M_BIND_ADDRESS 0.0.0.0 LwM2M服务器绑定地址。默认绑定到所有接口
transport.lwm2m.server.bind_port LWM2M_BIND_PORT 5685 LwM2M服务器绑定端口
transport.lwm2m.server.security.bind_address LWM2M_SECURITY_BIND_ADDRESS 0.0.0.0 DTLS的LwM2M服务器绑定地址。默认绑定到所有接口
transport.lwm2m.server.security.bind_port LWM2M_SECURITY_BIND_PORT 5686 用于DTLS的LwM2M服务器绑定端口
transport.lwm2m.server.security.credentials.enabled LWM2M_SERVER_CREDENTIALS_ENABLED false 是否启用LwM2M服务器X509证书/RPK支持
transport.lwm2m.server.security.credentials.type LWM2M_SERVER_CREDENTIALS_TYPE PEM 服务器凭证类型(PEM - pem证书文件;KEYSTORE - java密钥库)
transport.lwm2m.server.security.credentials.pem.cert_file LWM2M_SERVER_PEM_CERT lwm2mserver.pem 服务器证书文件的路径(保存服务器证书或证书链,可能包括服务器私钥)
transport.lwm2m.server.security.credentials.pem.key_file LWM2M_SERVER_PEM_KEY lwm2mserver_key.pem 服务器证书私钥文件的路径。默认可选。如果服务器证书文件中不存在私钥,则为必需;
transport.lwm2m.server.security.credentials.pem.key_password LWM2M_SERVER_PEM_KEY_PASSWORD server_key_password 服务器证书私钥密码(可选)
transport.lwm2m.server.security.credentials.keystore.type LWM2M_SERVER_KEY_STORE_TYPE JKS 密钥库的类型(JKS或PKCS12)
transport.lwm2m.server.security.credentials.keystore.store_file LWM2M_SERVER_KEY_STORE lwm2mserver.jks 保存SSL证书的密钥库的路径
transport.lwm2m.server.security.credentials.keystore.store_password LWM2M_SERVER_KEY_STORE_PASSWORD server_ks_password 用于访问密钥库的密码
transport.lwm2m.server.security.credentials.keystore.key_alias LWM2M_SERVER_KEY_ALIAS server 密钥别名
transport.lwm2m.server.security.credentials.keystore.key_password LWM2M_SERVER_KEY_PASSWORD server_ks_password 用于访问密钥的密码
transport.lwm2m.server.security.skip_validity_check_for_client_cert TB_LWM2M_SERVER_SECURITY_SKIP_VALIDITY_CHECK_FOR_CLIENT_CERT false 仅X509证书模式:跳过客户端证书有效性检查
transport.lwm2m.bootstrap.enabled LWM2M_ENABLED_BS true 启用/禁用引导服务器
transport.lwm2m.bootstrap.id LWM2M_SERVER_ID_BS null 在对象的Bootstrap模式下启动后LwM2M客户端中的默认值:名称“LwM2M Security”字段:“Short Server ID”(deviceProfile:Bootstrap.BOOTSTRAP SERVER.Short ID)
transport.lwm2m.bootstrap.bind_address LWM2M_BS_BIND_ADDRESS 0.0.0.0 LwM2M引导服务器绑定地址。默认绑定到所有接口
transport.lwm2m.bootstrap.bind_port LWM2M_BS_BIND_PORT 5687 LwM2M引导服务器绑定端口
transport.lwm2m.bootstrap.security.bind_address LWM2M_BS_SECURITY_BIND_ADDRESS 0.0.0.0 DTLS的LwM2M引导服务器绑定地址。默认绑定到所有接口
transport.lwm2m.bootstrap.security.bind_port LWM2M_BS_SECURITY_BIND_PORT 5688 DTLS的LwM2M引导服务器绑定地址。默认绑定到所有接口
transport.lwm2m.bootstrap.security.credentials.enabled LWM2M_BS_CREDENTIALS_ENABLED false 是否启用LWM2M引导服务器X509证书/RPK支持
transport.lwm2m.bootstrap.security.credentials.type LWM2M_BS_CREDENTIALS_TYPE PEM 服务器凭证类型(PEM - pem证书文件;KEYSTORE - java密钥库)
transport.lwm2m.bootstrap.security.credentials.pem.cert_file LWM2M_BS_PEM_CERT lwm2mserver.pem 服务器证书文件的路径(保存服务器证书或证书链,可能包括服务器私钥)
transport.lwm2m.bootstrap.security.credentials.pem.key_file LWM2M_BS_PEM_KEY lwm2mserver_key.pem 服务器证书私钥文件的路径。默认可选。如果服务器证书文件中不存在私钥,则需要
transport.lwm2m.bootstrap.security.credentials.pem.key_password LWM2M_BS_PEM_KEY_PASSWORD server_key_password 服务器证书私钥密码(可选)
transport.lwm2m.bootstrap.security.credentials.keystore.type LWM2M_BS_KEY_STORE_TYPE JKS 密钥库的类型(JKS或PKCS12)
transport.lwm2m.bootstrap.security.credentials.keystore.store_file LWM2M_BS_KEY_STORE lwm2mserver.jks 保存SSL证书的密钥库的路径
transport.lwm2m.bootstrap.security.credentials.keystore.store_password LWM2M_BS_KEY_STORE_PASSWORD server_ks_password 用于访问密钥库的密码
transport.lwm2m.bootstrap.security.credentials.keystore.key_alias LWM2M_BS_KEY_ALIAS bootstrap 密钥别名
transport.lwm2m.bootstrap.security.credentials.keystore.key_password LWM2M_BS_KEY_PASSWORD server_ks_password 用于访问密钥的密码
transport.lwm2m.security.trust-credentials.enabled LWM2M_TRUST_CREDENTIALS_ENABLED false 是否加载X509信任证书
transport.lwm2m.security.trust-credentials.type LWM2M_TRUST_CREDENTIALS_TYPE PEM 信任证书存储类型(PEM - pem证书文件;KEYSTORE - java密钥库)
transport.lwm2m.security.trust-credentials.pem.cert_file LWM2M_TRUST_PEM_CERT lwm2mtruststorechain.pem 证书文件的路径(保存信任证书)
transport.lwm2m.security.trust-credentials.keystore.type LWM2M_TRUST_KEY_STORE_TYPE JKS 密钥库的类型(JKS或PKCS12)
transport.lwm2m.security.trust-credentials.keystore.store_file LWM2M_TRUST_KEY_STORE lwm2mtruststorechain.jks 保存X509证书的密钥库的路径
transport.lwm2m.security.trust-credentials.keystore.store_password LWM2M_TRUST_KEY_STORE_PASSWORD server_ks_password 用于访问密钥库的密码
transport.lwm2m.security.recommended_ciphers LWM2M_RECOMMENDED_CIPHERS false 设置推荐密码套件的使用; true - 仅允许推荐的密码套件; false - 允许不推荐的密码套件
transport.lwm2m.security.recommended_supported_groups LWM2M_RECOMMENDED_SUPPORTED_GROUPS true 设置推荐支持组的使用(曲线); true - 仅允许推荐的支持组, false - 允许不推荐的支持组
transport.lwm2m.timeout LWM2M_TIMEOUT 120000 LwM2M操作超时
transport.lwm2m.uplink_pool_size LWM2M_UPLINK_POOL_SIZE 10 用于处理LwM2M上行链路的线程池大小
transport.lwm2m.downlink_pool_size LWM2M_DOWNLINK_POOL_SIZE 10 用于处理LwM2M下行链路的线程池大小
transport.lwm2m.ota_pool_size LWM2M_OTA_POOL_SIZE 10 用于处理OTA更新的线程池大小
transport.lwm2m.clean_period_in_sec LWM2M_CLEAN_PERIOD_IN_SEC 2 注册信息存储清理周期
transport.lwm2m.log_max_length LWM2M_LOG_MAX_LENGTH 1024 最大日志大小
transport.lwm2m.psm_activity_timer LWM2M_PSM_ACTIVITY_TIMER 10000 PSM活动计时器(如果设备配置中未指定)
transport.lwm2m.paging_transmission_window LWM2M_PAGING_TRANSMISSION_WINDOW 10000 如果设备配置中未指定,则用于eDRX支持的寻呼传输窗口
transport.snmp.enabled SNMP_ENABLED true 启用/禁用SNMP传输协议
transport.snmp.bind_address SNMP_BIND_ADDRESS 0.0.0.0 SNMP绑定地址
transport.snmp.bind_port SNMP_BIND_PORT 0 SNMP绑定端口。默认为零(随机)。使用SNMP TRAP时 - 确保指定一些静态值,例如1620
transport.snmp.response_processing.parallelism_level SNMP_RESPONSE_PROCESSING_PARALLELISM_LEVEL 4 负责处理来自SNMP设备响应的执行器 (workStealingPool) 的并行级别
transport.snmp.underlying_protocol SNMP_UNDERLYING_PROTOCOL udp 将SNMP配置为通过UDP或TCP工作
transport.snmp.max_request_oids SNMP_MAX_REQUEST_OIDS 100 PDU的最大大小(单个SNMP请求中的OID映射数量)。如果映射数量超过此数量,请求将被拆分为多个PDU
transport.snmp.request_chunk_delay_ms SNMP_REQUEST_CHUNK_DELAY_MS 100 发送每个请求块后的延迟(如果由于max_request_oids请求被分成多个PDU)
transport.snmp.response.ignore_type_cast_errors SNMP_RESPONSE_IGNORE_TYPE_CAST_ERRORS false 忽略与配置的OID映射的数据类型不匹配的SNMP响应值(默认为false - 如果响应的任何值与配置的数据类型不匹配,将引发错误)
transport.snmp.scheduler_thread_pool_size SNMP_SCHEDULER_THREAD_POOL_SIZE 4 执行设备查询任务的调度器的线程池大小
transport.stats.enabled TB_TRANSPORT_STATS_ENABLED true 启用/禁用传输统计数据的收集
transport.stats.print-interval-ms TB_TRANSPORT_STATS_PRINT_INTERVAL_MS 60000 传输统计记录的间隔
transport.gateway.dashboard.sync.enabled TB_GATEWAY_DASHBOARD_SYNC_ENABLED false 启用/禁用网关仪表板与git存储库同步
transport.gateway.dashboard.sync.repository_url TB_GATEWAY_DASHBOARD_SYNC_REPOSITORY_URL https://github.com/thingsboard/gateway-management-extensions-dist.git 网关仪表板存储库的URL
transport.gateway.dashboard.sync.branch TB_GATEWAY_DASHBOARD_SYNC_BRANCH release/4.0.0 要使用的网关仪表板存储库的分支
transport.gateway.dashboard.sync.fetch_frequency TB_GATEWAY_DASHBOARD_SYNC_FETCH_FREQUENCY 24 获取网关仪表板存储库的频率(以小时为单位)

CoAP服务器参数

参数环境变量默认值说明
coap.server.enabled COAP_SERVER_ENABLED true 启用/禁用coap服务器
coap.bind_address COAP_BIND_ADDRESS 0.0.0.0 CoAP绑定地址
coap.bind_port COAP_BIND_PORT 5683 CoAP绑定端口
coap.dtls.enabled COAP_DTLS_ENABLED false 启用/禁用DTLS 1.2支持
coap.dtls.retransmission_timeout COAP_DTLS_RETRANSMISSION_TIMEOUT_MS 9000 RFC7925重传超时(毫秒)=9000
coap.dtls.bind_address COAP_DTLS_BIND_ADDRESS 0.0.0.0 CoAP DTLS绑定地址
coap.dtls.bind_port COAP_DTLS_BIND_PORT 5684 CoAP DTLS绑定端口
coap.dtls.connection_id_length COAP_DTLS_CONNECTION_ID_LENGTH CoAP DTLS连接ID长度。 RFC 9146,DTLS 1.2的连接标识符 默认值:8控制DTLS连接ID长度 (CID) 的使用。 - “关闭”以停用它。 - “on”激活连接ID支持(与CID 0或更多0相同)。 - 正值定义生成的CID大小(以字节为单位)。 - 值0表示我们接受使用CID,但不会为外部对等方生成CID(启用支持,但不启用传入流量)。 - 0到 <= 4之间的值:使用SingleNodeConnectionIdGenerator - > 4的值:使用MultiNodeConnectionIdGenerator
coap.dtls.max_transmission_unit COAP_DTLS_MAX_TRANSMISSION_UNIT 1024 指定MTU(最大传输单元)。如果未使用LAN MTU,则应使用,例如如果使用IP隧道或者客户端使用小于LAN MTU的值。默认 = 1024最小值 = 64如果设置为0 - 使用LAN MTU。
coap.dtls.max_fragment_length COAP_DTLS_MAX_FRAGMENT_LENGTH 1024 DTLS最大片段长度(RFC 6066,第4节)。默认值 = 1024可能的值:512、1024、2048、4096。如果设置为0,则使用默认最大片段大小2^14字节(16,384字节)。如果没有此扩展,TLS指定固定的最大明文片段长度为2^14字节。由于内存限制或带宽限制,受限客户端可能需要协商较小的最大片段长度。为了协商较小的最大片段长度,客户端可以在(扩展的)客户端问候中包含“max_fragment_length”类型的扩展。该扩展的“extension_data”字段应包含: enum { 2^9(1) == 512, 2^10(2) == 1024, 2^11(3) == 2048, 2^12(4) == 4096, (255) } MaxFragmentLength; TLS已经要求客户端和服务器支持握手消息的分段。
coap.dtls.credentials.type COAP_DTLS_CREDENTIALS_TYPE PEM 服务器凭证类型(PEM - pem证书文件;KEYSTORE - java密钥库)
coap.dtls.credentials.pem.cert_file COAP_DTLS_PEM_CERT coapserver.pem 服务器证书文件的路径(保存服务器证书或证书链,可能包括服务器私钥)
coap.dtls.credentials.pem.key_file COAP_DTLS_PEM_KEY coapserver_key.pem 服务器证书私钥文件的路径。默认可选。如果服务器证书文件中不存在私钥,则为必需;
coap.dtls.credentials.pem.key_password COAP_DTLS_PEM_KEY_PASSWORD server_key_password 服务器证书私钥密码(可选)
coap.dtls.credentials.keystore.type COAP_DTLS_KEY_STORE_TYPE JKS 密钥库的类型(JKS或PKCS12)
coap.dtls.credentials.keystore.store_file COAP_DTLS_KEY_STORE coapserver.jks 保存SSL证书的密钥库的路径
coap.dtls.credentials.keystore.store_password COAP_DTLS_KEY_STORE_PASSWORD server_ks_password 用于访问密钥库的密码
coap.dtls.credentials.keystore.key_alias COAP_DTLS_KEY_ALIAS serveralias 密钥别名
coap.dtls.credentials.keystore.key_password COAP_DTLS_KEY_PASSWORD server_key_password 用于访问密钥的密码
coap.dtls.x509.skip_validity_check_for_client_cert TB_COAP_X509_DTLS_SKIP_VALIDITY_CHECK_FOR_CLIENT_CERT false 跳过客户端证书的证书有效性检查。
coap.dtls.x509.dtls_session_inactivity_timeout TB_COAP_X509_DTLS_SESSION_INACTIVITY_TIMEOUT 86400000 DTLS会话不活动超时。用于清理缓存
coap.dtls.x509.dtls_session_report_timeout TB_COAP_X509_DTLS_SESSION_REPORT_TIMEOUT 1800000 定期驱逐超时DTLS会话的时间间隔

设备连接参数

参数环境变量默认值说明
device.connectivity.http.enabled DEVICE_CONNECTIVITY_HTTP_ENABLED true 如果为true,检查连接服务将使用DEVICE_CONNECTIVITY_HTTP_HOST和DEVICE_CONNECTIVITY_HTTP_PORT变量将curl命令包含到所有测试命令的列表中
device.connectivity.http.host DEVICE_CONNECTIVITY_HTTP_HOST http传输服务的主机。如果为空,则将使用基本URL。
device.connectivity.http.port DEVICE_CONNECTIVITY_HTTP_PORT 8080 http传输服务的端口。如果为空,将使用默认的http端口。
device.connectivity.https.enabled DEVICE_CONNECTIVITY_HTTPS_ENABLED false 如果为true,检查连接服务将使用DEVICE_CONNECTIVITY_HTTPS_HOST和DEVICE_CONNECTIVITY_HTTPS_PORT变量将curl命令包含到所有测试命令的列表中
device.connectivity.https.host DEVICE_CONNECTIVITY_HTTPS_HOST http传输服务的主机。如果为空,则将使用基本URL。
device.connectivity.https.port DEVICE_CONNECTIVITY_HTTPS_PORT 443 http传输服务的端口。如果为空,则将使用默认的https端口。
device.connectivity.mqtt.enabled DEVICE_CONNECTIVITY_MQTT_ENABLED true 若为true,mosquitto命令将包含在使用DEVICE_CONNECTIVITY_MQTT_HOST和DEVICE_CONNECTIVITY_MQTT_PORT的所有测试命令列表中
device.connectivity.mqtt.host DEVICE_CONNECTIVITY_MQTT_HOST mqtt传输服务的主机。如果为空,则将使用基本url主机。
device.connectivity.mqtt.port DEVICE_CONNECTIVITY_MQTT_PORT 1883 mqtt传输服务端口
device.connectivity.mqtts.enabled DEVICE_CONNECTIVITY_MQTTS_ENABLED false 若为true,mosquitto命令将包含在使用DEVICE_CONNECTIVITY_MQTTS_HOST和DEVICE_CONNECTIVITY_MQTTS_PORT的所有测试命令列表中
device.connectivity.mqtts.host DEVICE_CONNECTIVITY_MQTTS_HOST mqtt传输服务的主机。如果为空,则将使用基本URL主机。
device.connectivity.mqtts.port DEVICE_CONNECTIVITY_MQTTS_PORT 8883 mqtt传输服务的端口。如果为空,则将使用mqtts的默认端口。
device.connectivity.mqtts.pem_cert_file DEVICE_CONNECTIVITY_MQTTS_CA_ROOT_CERT cafile.pem MQTT CA根证书文件的路径
device.connectivity.coap.enabled DEVICE_CONNECTIVITY_COAP_ENABLED true 如果为true,coap命令将包含在使用DEVICE_CONNECTIVITY_COAP_HOST和DEVICE_CONNECTIVITY_COAP_PORT的所有测试命令的列表中。
device.connectivity.coap.host DEVICE_CONNECTIVITY_COAP_HOST CoAP传输服务的主机。如果为空,则使用基本URL主机。
device.connectivity.coap.port DEVICE_CONNECTIVITY_COAP_PORT 5683 CoAP传输服务的端口。如果为空,则使用CoAP默认端口。
device.connectivity.coaps.enabled DEVICE_CONNECTIVITY_COAPS_ENABLED false 如果为true,coap命令将包含在使用DEVICE_CONNECTIVITY_COAPS_HOST和DEVICE_CONNECTIVITY_COAPS_PORT的所有测试命令的列表中。
device.connectivity.coaps.host DEVICE_CONNECTIVITY_COAPS_HOST CoAP传输服务的主机。如果为空,则使用基本URL主机。
device.connectivity.coaps.port DEVICE_CONNECTIVITY_COAPS_PORT 5684 CoAPs传输服务的端口。如果为空,则使用CoAPs默认端口。
device.connectivity.coaps.pem_cert_file DEVICE_CONNECTIVITY_COAPS_CA_ROOT_CERT cafile.pem COAP CA根证书文件的路径
device.connectivity.gateway.image_version DEVICE_CONNECTIVITY_GATEWAY_IMAGE_VERSION 3.7-stable docker-compose文件中使用的thingsboard/tb-gateway镜像的docker标签用于网关启动

Edges参数

参数环境变量默认值说明
edges.enabled "false" 必须在边缘禁用
edges.rpc.port EDGES_RPC_PORT 7070 RPC端口绑定
edges.rpc.client_max_keep_alive_time_sec EDGES_RPC_CLIENT_MAX_KEEP_ALIVE_TIME_SEC 1 指定客户端发送的keepalive ping之间应经过的最短时间。这可以防止客户端过于频繁地发送ping,这可能会给服务器带来麻烦(如果滥用,甚至可能成为拒绝服务攻击媒介)。如果客户端发送ping的频率超过此间隔,服务器可能会终止连接。
edges.rpc.keep_alive_time_sec EDGES_RPC_KEEP_ALIVE_TIME_SEC 10 设置不活动时间(连接上没有读取操作),之后服务器将向客户端发送keepalive ping。这用于确保连接仍然有效,并防止网络中介由于不活动而丢弃连接。这是服务器主动检查客户端是否仍然响应的一种方法。
edges.rpc.keep_alive_timeout_sec EDGES_RPC_KEEP_ALIVE_TIMEOUT_SEC 5 指定服务器等待其keepalive ping响应的最长时间。如果在此时间范围内未确认ping,服务器将认为连接已失效并可能将其关闭。此超时有助于检测无响应的客户端。
edges.rpc.ssl.enabled EDGES_RPC_SSL_ENABLED false 启用/禁用SSL支持
edges.rpc.ssl.cert EDGES_RPC_SSL_CERT certChainFile.pem 在TLS连接到云期间使用的证书文件
edges.rpc.ssl.private_key EDGES_RPC_SSL_PRIVATE_KEY privateKeyFile.pem 与Cert证书关联的私钥文件。该密钥用于安全连接期间的加密过程
edges.rpc.max_inbound_message_size EDGES_RPC_MAX_INBOUND_MESSAGE_SIZE 4194304 云可以从边缘处理的入站消息的最大大小(以字节为单位)。默认情况下,它可以处理高达4 MB的消息
edges.rpc.max_telemetry_message_size EDGES_RPC_MAX_TELEMETRY_MESSAGE_SIZE 0 云发送到边缘的遥测(时间序列和属性)消息的最大长度。默认情况下,没有限制。
edges.storage.max_read_records_count EDGES_STORAGE_MAX_READ_RECORDS_COUNT 50 从数据库读取并发送到边缘的边缘事件的最大记录数
edges.storage.no_read_records_sleep EDGES_NO_READ_RECORDS_SLEEP 1000 下次检查数据库中的边缘事件之前等待的毫秒数
edges.storage.sleep_between_batches EDGES_SLEEP_BETWEEN_BATCHES 60000 将失败的一批边缘事件重新发送到边缘之前等待的毫秒数
edges.max_high_priority_queue_size_per_session EDGES_MAX_HIGH_PRIORITY_QUEUE_SIZE_PER_SESSION 10000 每个边缘会话的高优先级边缘事件的最大数量。没有持久性——存储在内存中
edges.scheduler_pool_size EDGES_SCHEDULER_POOL_SIZE 4 用于检查数据库边缘事件的线程数
edges.send_scheduler_pool_size EDGES_SEND_SCHEDULER_POOL_SIZE 4 用于通过gRPC发送下行消息的线程数
edges.grpc_callback_thread_pool_size EDGES_GRPC_CALLBACK_POOL_SIZE 4 用于将DB中的边缘事件转换为下行消息并发送出去的线程数
edges.state.persistToTelemetry EDGES_PERSIST_STATE_TO_TELEMETRY false 将边缘状态(活动、上次连接、上次断开连接)保留到时间序列或属性表中。 'false' 表示将边缘状态存储到属性表中

Spring Doc通用参数

参数环境变量默认值说明
springdoc.api-docs.enabled SWAGGER_ENABLED true 如果false swagger API文档将不可用
springdoc.default-produces-media-type SWAGGER_DEFAULT_PRODUCES_MEDIA_TYPE application/json Swagger默认生成媒体类型

Swagger通用参数

参数环境变量默认值说明
swagger.api_path SWAGGER_API_PATH /api/** swagger UI链接的一般swagger匹配模式
swagger.security_path_regex SWAGGER_SECURITY_PATH_REGEX /api/.* swagger UI链接的通用swagger匹配模式路径
swagger.non_security_path_regex SWAGGER_NON_SECURITY_PATH_REGEX /api/(?:noauth|v1)/.* swagger UI链接的非安全API路径匹配模式
swagger.title SWAGGER_TITLE ThingsBoard REST API API文档UI页面上的标题
swagger.description SWAGGER_DESCRIPTION ThingsBoard open-source IoT platform REST API documentation. API文档UI页面上的描述
swagger.contact.name SWAGGER_CONTACT_NAME ThingsBoard team API文档UI页面上的联系人姓名
swagger.contact.url SWAGGER_CONTACT_URL https://thingsboard.io API文档UI页面上的联系URL
swagger.contact.email SWAGGER_CONTACT_EMAIL info@thingsboard.io API文档UI页面上的联系电子邮件
swagger.license.title SWAGGER_LICENSE_TITLE Apache License Version 2.0 API文档UI页面上的许可证标题
swagger.license.url SWAGGER_LICENSE_URL https://github.com/thingsboard/thingsboard/blob/master/LICENSE 链接到API文档UI页面上的许可证正文
swagger.version SWAGGER_VERSION 要显示的API文档的版本。默认为包版本。
swagger.group_name SWAGGER_GROUP_NAME thingsboard API文档UI页面上的组名称(定义)。

队列配置参数

参数环境变量默认值说明
queue.type TB_QUEUE_TYPE in-memory 内存中或kafka (Apache Kafka)
queue.prefix TB_QUEUE_PREFIX 全局队列前缀。如果指定,则在默认主题名称之前添加前缀:“prefix.default_topic_name”。前缀应用于所有主题(以及kafka的消费者组)。
queue.in_memory.stats.print-interval-ms TB_QUEUE_IN_MEMORY_STATS_PRINT_INTERVAL_MS 60000 对于调试级别
queue.kafka.bootstrap.servers TB_KAFKA_SERVERS localhost:9092 “主机:端口”格式的Kafka Bootstrap节点
queue.kafka.ssl.enabled TB_KAFKA_SSL_ENABLED false 启用/禁用SSL Kafka通信
queue.kafka.ssl.truststore.location TB_KAFKA_SSL_TRUSTSTORE_LOCATION 信任库文件的位置
queue.kafka.ssl.truststore.password TB_KAFKA_SSL_TRUSTSTORE_PASSWORD 信任库文件的密码(如果指定)
queue.kafka.ssl.keystore.location TB_KAFKA_SSL_KEYSTORE_LOCATION 密钥库文件的位置。这对于客户端来说是可选的,可以用于客户端的双向身份验证
queue.kafka.ssl.keystore.password TB_KAFKA_SSL_KEYSTORE_PASSWORD 密钥库文件的存储密码。这对于客户端来说是可选的,并且仅在配置了“ssl.keystore.location”时才需要。 PEM格式不支持密钥库密码
queue.kafka.ssl.key.password TB_KAFKA_SSL_KEY_PASSWORD 密钥库文件中私钥的密码或“keystore.key”中指定的PEM密钥的密码
queue.kafka.acks TB_KAFKA_ACKS all 生产者要求领导者在考虑请求完成之前收到的确认数量。这控制发送的记录的持久性。允许以下设置:0、1和全部
queue.kafka.retries TB_KAFKA_RETRIES 1 重试次数。重新发送发送失败并可能出现暂时性错误的任何记录
queue.kafka.compression.type TB_KAFKA_COMPRESSION_TYPE none 无或gzip
queue.kafka.batch.size TB_KAFKA_BATCH_SIZE 16384 默认批量大小。该设置给出了要发送的批量大小的上限
queue.kafka.linger.ms TB_KAFKA_LINGER_MS 1 该变量会产生少量的人为延迟,即不会立即发送记录
queue.kafka.max.request.size TB_KAFKA_MAX_REQUEST_SIZE 1048576 请求的最大大小(以字节为单位)。此设置将限制生产者在单个请求中发送的记录批次数量,以避免发送巨大的请求
queue.kafka.max.in.flight.requests.per.connection TB_KAFKA_MAX_IN_FLIGHT_REQUESTS_PER_CONNECTION 5 阻塞之前客户端在单个连接上发送的未确认请求的最大数量
queue.kafka.buffer.memory TB_BUFFER_MEMORY 33554432 生产者可用于缓冲等待发送到服务器的记录的内存总字节数
queue.kafka.replication_factor TB_QUEUE_KAFKA_REPLICATION_FACTOR 1 Kafka多个broker上的多份数据
queue.kafka.max_poll_interval_ms TB_QUEUE_KAFKA_MAX_POLL_INTERVAL_MS 300000 使用消费者组管理时,调用poll() 方法之间的最大延迟。这对消费者在获取更多记录之前可以空闲的时间设置了上限
queue.kafka.max_poll_records TB_QUEUE_KAFKA_MAX_POLL_RECORDS 8192 单次调用poll() 方法返回的最大记录数
queue.kafka.max_partition_fetch_bytes TB_QUEUE_KAFKA_MAX_PARTITION_FETCH_BYTES 16777216 服务器将返回的每个分区的最大数据量。记录由消费者批量获取
queue.kafka.fetch_max_bytes TB_QUEUE_KAFKA_FETCH_MAX_BYTES 134217728 服务器将返回的最大数据量。记录由消费者批量获取
queue.kafka.request.timeout.ms TB_QUEUE_KAFKA_REQUEST_TIMEOUT_MS 30000 (30秒)
queue.kafka.session.timeout.ms TB_QUEUE_KAFKA_SESSION_TIMEOUT_MS 10000 (10秒)
queue.kafka.auto_offset_reset TB_QUEUE_KAFKA_AUTO_OFFSET_RESET earliest earliest、latest或none
queue.kafka.use_confluent_cloud TB_QUEUE_KAFKA_USE_CONFLUENT_CLOUD false 启用/禁用Confluence Cloud的使用
queue.kafka.confluent.ssl.algorithm TB_QUEUE_KAFKA_CONFLUENT_SSL_ALGORITHM https 客户端用于验证服务器主机名的端点识别算法。默认值为https
queue.kafka.confluent.sasl.mechanism TB_QUEUE_KAFKA_CONFLUENT_SASL_MECHANISM PLAIN 用于验证架构注册表请求的机制。 SASL/PLAIN只能与TLS/SSL一起使用作为传输层,以确保明文密码不会在未经加密的情况下在线路上传输
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\"; 使用JAAS配置在代理上指定多个SASL机制
queue.kafka.confluent.security.protocol TB_QUEUE_KAFKA_CONFLUENT_SECURITY_PROTOCOL SASL_SSL 用于与Broker通信的协议。有效值为:PLAINTEXT、SSL、SASL_PLAINTEXT、SASL_SSL
queue.kafka.consumer-properties-per-topic.tb_ota_package.key max.poll.records 每个特定主题的Kafka消费者的键值属性,例如tb_ota_package是ota的主题名称,tb_rule_engine.sq是默认SequentialByOriginator队列的主题名称。检查TB_QUEUE_CORE_OTA_TOPIC和TB_QUEUE_RE_SQ_TOPIC参数
queue.kafka.consumer-properties-per-topic.tb_ota_package.key.value TB_QUEUE_KAFKA_OTA_MAX_POLL_RECORDS 10 每个主题的特定消费者属性值示例
queue.kafka.consumer-properties-per-topic.tb_version_control.key max.poll.interval.ms VC每个主题的特定消费者属性值示例
queue.kafka.consumer-properties-per-topic.tb_version_control.key.value TB_QUEUE_KAFKA_VC_MAX_POLL_INTERVAL_MS 600000 VC每个主题的特定消费者属性值示例
queue.kafka.consumer-properties-per-topic.tb_edge.key max.poll.records 针对边缘服务更新主题的消费者的属性。
queue.kafka.consumer-properties-per-topic.tb_edge.key.value TB_QUEUE_KAFKA_EDGE_EVENTS_MAX_POLL_RECORDS 10 定义每个请求可以从tb_edge主题轮询的最大记录数。
queue.kafka.consumer-properties-per-topic.tb_edge.notifications.key max.poll.records 针对高优先级边缘通知的消费者的属性。这些通知包括RPC调用、生命周期事件和新队列消息,需要最小的延迟和快速的处理。
queue.kafka.consumer-properties-per-topic.tb_edge.notifications.key.value TB_QUEUE_KAFKA_EDGE_HP_EVENTS_MAX_POLL_RECORDS 10 定义可以从tb_edge.notifications.SERVICE_ID主题轮询的最大记录数。
queue.kafka.consumer-properties-per-topic.tb_edge_event.notifications.key max.poll.records 针对特定边缘主题的下行链路消费者的属性。主题名称是使用租户和边缘标识符动态构建的。
queue.kafka.consumer-properties-per-topic.tb_edge_event.notifications.key.value TB_QUEUE_KAFKA_EDGE_NOTIFICATIONS_MAX_POLL_RECORDS 10 定义可以从tb_edge_event.notifications.TENANT_ID.EDGE_ID主题轮询的最大记录数。
queue.kafka.consumer-properties-per-topic.tb_housekeeper.key max.poll.records Housekeeper任务主题的使用者属性
queue.kafka.consumer-properties-per-topic.tb_housekeeper.key.value TB_QUEUE_KAFKA_HOUSEKEEPER_MAX_POLL_RECORDS 1 单次轮询中返回的记录数量。对于管家任务主题,我们应该一条一条地消费消息(任务)
queue.kafka.consumer-properties-per-topic.tb_housekeeper.reprocessing.key max.poll.records Housekeeper重新处理主题的消费者属性
queue.kafka.consumer-properties-per-topic.tb_housekeeper.reprocessing.key.value TB_QUEUE_KAFKA_HOUSEKEEPER_REPROCESSING_MAX_POLL_RECORDS 1 单次轮询中返回的记录数量。对于Housekeeper再处理topic,我们应该一条一条地消费消息(任务)
queue.kafka.consumer-properties-per-topic.tb_cloud_event.key max.poll.records Kafka tb_cloud_event主题的使用者属性
queue.kafka.consumer-properties-per-topic.tb_cloud_event.key.value TB_QUEUE_KAFKA_CLOUD_EVENT_MAX_POLL_RECORDS 50 云事件主题的单次轮询中返回的记录数
queue.kafka.consumer-properties-per-topic.tb_cloud_event_ts.key max.poll.records Kafka tb_cloud_event_ts主题的使用者属性
queue.kafka.consumer-properties-per-topic.tb_cloud_event_ts.key.value TB_QUEUE_KAFKA_CLOUD_EVENT_TS_MAX_POLL_RECORDS 50 云事件时间序列主题的单次轮询中返回的记录数量
queue.kafka.consumer-properties-per-topic.edqs.events.key max.poll.records edqs.events主题的Kafka消费者的键值属性
queue.kafka.consumer-properties-per-topic.edqs.events.key.value TB_QUEUE_KAFKA_EDQS_EVENTS_MAX_POLL_RECORDS 512 edqs.events主题的最大轮询记录
queue.kafka.consumer-properties-per-topic.edqs.state.key max.poll.records edqs.state主题的Kafka消费者的键值属性
queue.kafka.consumer-properties-per-topic.edqs.state.key.value TB_QUEUE_KAFKA_EDQS_STATE_MAX_POLL_RECORDS 512 edqs.state主题的最大轮询记录
queue.kafka.consumer-properties-per-topic.tasks.key max.poll.records 任务主题的Kafka使用者的键值属性
queue.kafka.consumer-properties-per-topic.tasks.key.value TB_QUEUE_KAFKA_TASKS_MAX_POLL_RECORDS 1 任务主题的最大轮询记录
queue.kafka.consumer-properties-per-topic-inline TB_QUEUE_KAFKA_CONSUMER_PROPERTIES_PER_TOPIC_INLINE 如果您使用环境变量覆盖任何默认的Kafka主题名称,则还必须在“consumer-properties-per-topic-inline”中指定新主题的相关使用者属性。否则,主题将不会继承其预期配置(例如max.poll.records、超时等)。每个条目为特定主题设置一个属性。要为主题定义多个属性,请重复主题键。格式:“topic1:key=value;topic1:key=value;topic2:key=value” 示例:tb_core_updated:max.poll.records=10;tb_core_updated:bootstrap.servers=kafka1:9092,kafka2:9092;tb_edge_updated:auto.offset.reset=latest
queue.kafka.other-inline TB_QUEUE_KAFKA_OTHER_PROPERTIES 在本节中,您可以为Kafka消费者/生产者/管理员指定自定义参数(分号分隔)
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属性
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属性
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 Transport Api主题的Kafka属性
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属性
queue.kafka.topic-properties.js-executor TB_QUEUE_KAFKA_JE_TOPIC_PROPERTIES retention.ms:604800000;segment.bytes:52428800;retention.bytes:104857600;partitions:100;min.insync.replicas:1 JS执行器主题的Kafka属性
queue.kafka.topic-properties.ota-updates TB_QUEUE_KAFKA_OTA_TOPIC_PROPERTIES retention.ms:604800000;segment.bytes:52428800;retention.bytes:1048576000;partitions:10;min.insync.replicas:1 OTA更新主题的Kafka属性
queue.kafka.topic-properties.version-control TB_QUEUE_KAFKA_VC_TOPIC_PROPERTIES retention.ms:604800000;segment.bytes:52428800;retention.bytes:1048576000;partitions:1;min.insync.replicas:1 版本控制主题的Kafka属性
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 Housekeeper任务主题的Kafka属性
queue.kafka.topic-properties.housekeeper-reprocessing TB_QUEUE_KAFKA_HOUSEKEEPER_REPROCESSING_TOPIC_PROPERTIES retention.ms:7776000000;segment.bytes:52428800;retention.bytes:1048576000;partitions:1;min.insync.replicas:1 Housekeeper重新处理主题的Kafka属性; Retention.ms设置为90天;分区设置为1,因为一次仅运行一个重新处理服务
queue.kafka.topic-properties.edge TB_QUEUE_KAFKA_EDGE_TOPIC_PROPERTIES retention.ms:604800000;segment.bytes:52428800;retention.bytes:1048576000;partitions:1;min.insync.replicas:1 Edge主题的Kafka属性
queue.kafka.topic-properties.edge-event TB_QUEUE_KAFKA_EDGE_EVENT_TOPIC_PROPERTIES retention.ms:2592000000;segment.bytes:52428800;retention.bytes:1048576000;partitions:1;min.insync.replicas:1 Edge事件主题的Kafka属性
queue.kafka.topic-properties.cloud_event TB_QUEUE_KAFKA_CLOUD_EVENT_TOPIC_PROPERTIES retention.ms:2678400000;segment.bytes:52428800;retention.bytes:1048576000;partitions:1;min.insync.replicas:1 CloudEvent主题的Kafka属性
queue.kafka.topic-properties.cloud_event_ts TB_QUEUE_KAFKA_CLOUD_EVENT_TS_TOPIC_PROPERTIES retention.ms:2678400000;segment.bytes:52428800;retention.bytes:10485760000;partitions:1;min.insync.replicas:1 TsCloudEvent主题的Kafka属性
queue.kafka.topic-properties.calculated-field TB_QUEUE_KAFKA_CF_TOPIC_PROPERTIES retention.ms:604800000;segment.bytes:52428800;retention.bytes:1048576000;partitions:1;min.insync.replicas:1 计算字段主题的Kafka属性
queue.kafka.topic-properties.calculated-field-state TB_QUEUE_KAFKA_CF_STATE_TOPIC_PROPERTIES retention.ms:-1;segment.bytes:52428800;retention.bytes:104857600000;partitions:1;min.insync.replicas:1;cleanup.policy:compact 计算字段状态主题的Kafka属性
queue.kafka.topic-properties.edqs-events TB_QUEUE_KAFKA_EDQS_EVENTS_TOPIC_PROPERTIES retention.ms:86400000;segment.bytes:52428800;retention.bytes:-1;partitions:1;min.insync.replicas:1 EDQS事件主题的Kafka属性
queue.kafka.topic-properties.edqs-requests TB_QUEUE_KAFKA_EDQS_REQUESTS_TOPIC_PROPERTIES retention.ms:180000;segment.bytes:52428800;retention.bytes:1048576000;partitions:1;min.insync.replicas:1 EDQS请求主题的Kafka属性(默认值:保留3分钟)
queue.kafka.topic-properties.edqs-state TB_QUEUE_KAFKA_EDQS_STATE_TOPIC_PROPERTIES retention.ms:-1;segment.bytes:52428800;retention.bytes:-1;partitions:1;min.insync.replicas:1;cleanup.policy:compact EDQS状态主题的Kafka属性(无限保留、压缩)
queue.kafka.topic-properties.tasks TB_QUEUE_KAFKA_TASKS_TOPIC_PROPERTIES retention.ms:604800000;segment.bytes:52428800;retention.bytes:104857600;partitions:1;min.insync.replicas:1 任务主题的Kafka属性
queue.kafka.consumer-stats.enabled TB_QUEUE_KAFKA_CONSUMER_STATS_ENABLED true 打印Kafka主题中消费者组偏移量和最后消息偏移量之间的滞后
queue.kafka.consumer-stats.print-interval-ms TB_QUEUE_KAFKA_CONSUMER_STATS_MIN_PRINT_INTERVAL_MS 60000 Kafka消费者组统计数据的统计打印间隔
queue.kafka.consumer-stats.kafka-response-timeout-ms TB_QUEUE_KAFKA_CONSUMER_STATS_RESPONSE_TIMEOUT_MS 1000 等待Kafka的统计数据加载请求完成的时间
queue.partitions.hash_function_name TB_QUEUE_PARTITIONS_HASH_FUNCTION_NAME murmur3_128 murmur3_32、murmur3_128或sha256
queue.transport_api.requests_topic TB_QUEUE_TRANSPORT_API_REQUEST_TOPIC tb_transport.api.requests 用于使用来自传输微服务的api请求的主题
queue.transport_api.responses_topic TB_QUEUE_TRANSPORT_API_RESPONSE_TOPIC tb_transport.api.responses 用于生成传输微服务的api响应的主题
queue.transport_api.max_pending_requests TB_QUEUE_TRANSPORT_MAX_PENDING_REQUESTS 10000 服务器要处理的来自传输微服务的最大待处理API请求数
queue.transport_api.max_requests_timeout TB_QUEUE_TRANSPORT_MAX_REQUEST_TIMEOUT 10000 服务器处理来自传输微服务的api请求的最大超时(以毫秒为单位)
queue.transport_api.max_callback_threads TB_QUEUE_TRANSPORT_MAX_CALLBACK_THREADS 100 用于调用回调的线程数量
queue.transport_api.max_core_handler_threads TB_QUEUE_TRANSPORT_MAX_CORE_HANDLER_THREADS 16 用于传输API请求的线程数量
queue.transport_api.request_poll_interval TB_QUEUE_TRANSPORT_REQUEST_POLL_INTERVAL_MS 25 从传输微服务轮询api请求的时间间隔(以毫秒为单位)
queue.transport_api.response_poll_interval TB_QUEUE_TRANSPORT_RESPONSE_POLL_INTERVAL_MS 25 从传输微服务轮询api响应的时间间隔(以毫秒为单位)
queue.core.topic TB_QUEUE_CORE_TOPIC tb_core 默认主题名称
queue.core.notifications_topic TB_QUEUE_CORE_NOTIFICATIONS_TOPIC tb_core.notifications 对于需要最短延迟和处理时间的高优先级通知
queue.core.poll-interval TB_QUEUE_CORE_POLL_INTERVAL_MS 25 核心微服务轮询消息的时间间隔(以毫秒为单位)
queue.core.partitions TB_QUEUE_CORE_PARTITIONS 10 核心微服务使用的分区数量
queue.core.pack-processing-timeout TB_QUEUE_CORE_PACK_PROCESSING_TIMEOUT_MS 2000 核心微服务处理消息包超时
queue.core.consumer-per-partition TB_QUEUE_CORE_CONSUMER_PER_PARTITION true 为核心队列启用/禁用每个分区的单独使用者
queue.core.ota.topic TB_QUEUE_CORE_OTA_TOPIC tb_ota_package OTA更新的默认主题名称
queue.core.ota.pack-interval-ms TB_QUEUE_CORE_OTA_PACK_INTERVAL_MS 60000 处理设备OTA更新的时间间隔。用于避免由于许多并行OTA更新而对网络造成任何损害
queue.core.ota.pack-size TB_QUEUE_CORE_OTA_PACK_SIZE 100 从队列中获取的OTA更新通知的大小。队列存储成对的固件和设备ID
queue.core.usage-stats-topic TB_QUEUE_US_TOPIC tb_usage_stats 统计主题名称
queue.core.stats.enabled TB_QUEUE_CORE_STATS_ENABLED true 启用/禁用核心微服务的统计信息
queue.core.stats.print-interval-ms TB_QUEUE_CORE_STATS_PRINT_INTERVAL_MS 60000 核心微服务的统计打印间隔
queue.core.housekeeper.topic TB_HOUSEKEEPER_TOPIC tb_housekeeper Housekeeper任务的主题名称
queue.core.housekeeper.reprocessing-topic TB_HOUSEKEEPER_REPROCESSING_TOPIC tb_housekeeper.reprocessing 要重新处理的Housekeeper任务的主题名称
queue.core.housekeeper.poll-interval-ms TB_HOUSEKEEPER_POLL_INTERVAL_MS 500 Housekeeper相关主题的轮询间隔
queue.core.housekeeper.task-processing-timeout-ms TB_HOUSEKEEPER_TASK_PROCESSING_TIMEOUT_MS 120000 任务处理超时(以毫秒为单位)。未能按时完成的任务将提交重新处理
queue.core.housekeeper.disabled-task-types TB_HOUSEKEEPER_DISABLED_TASK_TYPES 不应处理的任务类型的逗号分隔列表。可用的任务类型:DELETE_ATTRIBUTES、DELETE_TELEMETRY(DELETE_LATEST_TS和DELETE_TS_HISTORY将被禁用)、DELETE_LATEST_TS、DELETE_TS_HISTORY、DELETE_EVENTS、DELETE_ALARMS、UNASSIGN_ALARMS
queue.core.housekeeper.task-reprocessing-delay-ms TB_HOUSEKEEPER_TASK_REPROCESSING_DELAY_MS 3000 任务重新处理之间的延迟(以毫秒为单位)
queue.core.housekeeper.max-reprocessing-attempts TB_HOUSEKEEPER_MAX_REPROCESSING_ATTEMPTS 10 任务重新处理尝试的最大数量。超过后任务将被丢弃
queue.core.housekeeper.stats.enabled TB_HOUSEKEEPER_STATS_ENABLED true 启用/禁用管家统计
queue.core.housekeeper.stats.print-interval-ms TB_HOUSEKEEPER_STATS_PRINT_INTERVAL_MS 60000 Housekeeper统计打印间隔
queue.edqs.sync.enabled TB_EDQS_SYNC_ENABLED false 启用/禁用EDQS同步
queue.edqs.sync.entity_batch_size TB_EDQS_SYNC_ENTITY_BATCH_SIZE 10000 与EDQS同步的实体的批量大小
queue.edqs.sync.ts_batch_size TB_EDQS_SYNC_TS_BATCH_SIZE 10000 与EDQS同步的时间序列数据的批量大小
queue.edqs.api.supported TB_EDQS_API_SUPPORTED false 是否将实体数据查询请求转发到EDQS(否则使用PostgreSQL实现)
queue.edqs.api.auto_enable TB_EDQS_API_AUTO_ENABLE true 当数据同步到Kafka完成时是否自动启用EDQS API(如果queue.edqs.api.supported为true)
queue.edqs.readiness_check_interval TB_EDQS_READINESS_CHECK_INTERVAL_MS 60000 检查就绪EDQS服务器的时间间隔(以毫秒为单位)
queue.edqs.mode TB_EDQS_MODE local EDQS模式:本地(对于整体)或远程(具有单独的EDQS微服务)
queue.edqs.local.rocksdb_path TB_EDQS_ROCKSDB_PATH ${user.home}/.rocksdb/edqs 在本地模式下运行时用于EDQS备份的RocksDB路径
queue.edqs.partitions TB_EDQS_PARTITIONS 12 EDQS主题的分区数量
queue.edqs.partitioning_strategy TB_EDQS_PARTITIONING_STRATEGY tenant EDQS分区策略:tenant(分区通过tenant id解析)或none(无具体策略,通过message key解析)
queue.edqs.events_topic TB_EDQS_EVENTS_TOPIC edqs.events EDQS活动主题
queue.edqs.state_topic TB_EDQS_STATE_TOPIC edqs.state EDQS状态主题
queue.edqs.requests_topic TB_EDQS_REQUESTS_TOPIC edqs.requests EDQS请求主题
queue.edqs.responses_topic TB_EDQS_RESPONSES_TOPIC edqs.responses EDQS回复主题
queue.edqs.poll_interval TB_EDQS_POLL_INTERVAL_MS 25 EDQS主题的轮询间隔
queue.edqs.max_pending_requests TB_EDQS_MAX_PENDING_REQUESTS 10000 EDQS待处理请求的最大数量
queue.edqs.max_request_timeout TB_EDQS_MAX_REQUEST_TIMEOUT 20000 向EDQS请求的最大超时
queue.edqs.request_executor_size TB_EDQS_REQUEST_EXECUTOR_SIZE 50 EDQS请求执行器的线程池大小
queue.edqs.versions_cache_ttl TB_EDQS_VERSIONS_CACHE_TTL_MINUTES 60 EDQS版本缓存的生存时间(分钟)。必须大于同步过程所需的时间。
queue.edqs.string_compression_length_threshold TB_EDQS_STRING_COMPRESSION_LENGTH_THRESHOLD 512 长度超过此阈值的字符串将被压缩
queue.edqs.stats.enabled TB_EDQS_STATS_ENABLED true 启用/禁用EDQS统计
queue.edqs.stats.slow_query_threshold TB_EDQS_SLOW_QUERY_THRESHOLD_MS 3000 记录慢速查询的阈值(以毫秒为单位)
queue.vc.topic TB_QUEUE_VC_TOPIC tb_version_control 默认主题名称
queue.vc.partitions TB_QUEUE_VC_PARTITIONS 10 与此队列关联的分区数。用于缩放可以并行处理的消息数量
queue.vc.poll-interval TB_QUEUE_VC_INTERVAL_MS 25 如果没有新消息到达,轮询消息之间的时间间隔(以毫秒为单位)
queue.vc.pack-processing-timeout TB_QUEUE_VC_PACK_PROCESSING_TIMEOUT_MS 180000 重试处理包中所有失败和超时消息之前的超时
queue.vc.request-timeout TB_QUEUE_VC_REQUEST_TIMEOUT 180000 向VC执行器请求的超时(请求实体版本、提交费用等)
queue.vc.msg-chunk-size TB_QUEUE_VC_MSG_CHUNK_SIZE 250000 单个队列消息大小限制
queue.js.request_topic REMOTE_JS_EVAL_REQUEST_TOPIC js_eval.requests JS Eval请求主题
queue.js.response_topic_prefix REMOTE_JS_EVAL_RESPONSE_TOPIC js_eval.responses JS Eval响应与节点id结合的主题前缀
queue.js.max_pending_requests REMOTE_JS_MAX_PENDING_REQUESTS 10000 JS Eval最大待处理请求数
queue.js.max_eval_requests_timeout REMOTE_JS_MAX_EVAL_REQUEST_TIMEOUT 60000 JS Eval最大请求超时
queue.js.max_requests_timeout REMOTE_JS_MAX_REQUEST_TIMEOUT 10000 JS最大请求超时时间
queue.js.max_exec_requests_timeout REMOTE_JS_MAX_EXEC_REQUEST_TIMEOUT 2000 JS执行最大请求超时
queue.js.response_poll_interval REMOTE_JS_RESPONSE_POLL_INTERVAL_MS 25 JS响应轮询间隔
queue.rule-engine.topic TB_QUEUE_RULE_ENGINE_TOPIC tb_rule_engine 已弃用。它将在最近的版本中删除
queue.rule-engine.notifications_topic TB_QUEUE_RULE_ENGINE_NOTIFICATIONS_TOPIC tb_rule_engine.notifications 对于需要最短延迟和处理时间的高优先级通知
queue.rule-engine.poll-interval TB_QUEUE_RULE_ENGINE_POLL_INTERVAL_MS 25 规则引擎轮询消息的时间间隔(以毫秒为单位)
queue.rule-engine.pack-processing-timeout TB_QUEUE_RULE_ENGINE_PACK_PROCESSING_TIMEOUT_MS 2000 规则引擎处理消息包超时时间
queue.rule-engine.stats.enabled TB_QUEUE_RULE_ENGINE_STATS_ENABLED true 启用/禁用规则引擎的统计信息
queue.rule-engine.stats.print-interval-ms TB_QUEUE_RULE_ENGINE_STATS_PRINT_INTERVAL_MS 60000 规则引擎统计打印间隔
queue.rule-engine.stats.max-error-message-length TB_QUEUE_RULE_ENGINE_MAX_ERROR_MESSAGE_LENGTH 4096 统计打印错误信息的最大长度
queue.rule-engine.topic-deletion-delay TB_QUEUE_RULE_ENGINE_TOPIC_DELETION_DELAY_SEC 15 队列被删除(或配置文件的隔离选项被禁用)后,规则引擎将在此期间继续读取相关主题,然后再删除实际主题
queue.rule-engine.management-thread-pool-size TB_QUEUE_RULE_ENGINE_MGMT_THREAD_POOL_SIZE 12 处理分区更改、配置更新、队列删除等操作的线程池的大小
queue.calculated_fields.event_topic TB_QUEUE_CF_EVENT_TOPIC tb_cf_event 规则引擎中计算字段(CF)事件的主题名称
queue.calculated_fields.state_topic TB_QUEUE_CF_STATE_TOPIC tb_cf_state 计算字段(CF)压缩状态的主题名称
queue.calculated_fields.notifications_topic TB_QUEUE_CF_NOTIFICATIONS_TOPIC calculated_field.notifications 对于需要最短延迟和处理时间的高优先级通知
queue.calculated_fields.poll_interval TB_QUEUE_CF_POLL_INTERVAL_MS 1000 CF(规则引擎)微服务轮询消息的时间间隔(以毫秒为单位)
queue.calculated_fields.pack_processing_timeout TB_QUEUE_CF_PACK_PROCESSING_TIMEOUT_MS 60000 CF微服务处理消息包超时
queue.calculated_fields.pool_size TB_QUEUE_CF_POOL_SIZE 8 用于处理传入消息的线程池大小
queue.calculated_fields.rocks_db_path TB_QUEUE_CF_ROCKS_DB_PATH ${user.home}/.rocksdb/edge_cf_states RocksDB存储CF状态的路径
queue.calculated_fields.init_fetch_pack_size TB_QUEUE_CF_FETCH_PACK_SIZE 50000 获取大小指定每个初始获取请求将从数据库中获取多少行
queue.calculated_fields.init_tenant_fetch_pack_size TB_QUEUE_CF_TENANT_FETCH_PACK_SIZE 1000 提取大小指定每个租户提取的每个请求将从数据库中提取多少行
queue.transport.notifications_topic TB_QUEUE_TRANSPORT_NOTIFICATIONS_TOPIC tb_transport.notifications 对于需要最短延迟和处理时间的高优先级通知
queue.transport.poll_interval TB_QUEUE_TRANSPORT_NOTIFICATIONS_POLL_INTERVAL_MS 25 轮询消息的时间间隔(以毫秒为单位)
queue.edge.topic TB_QUEUE_EDGE_TOPIC tb_edge 用于通知边缘服务有关实体更新、分配等的主题名称。
queue.edge.notifications_topic TB_QUEUE_EDGE_NOTIFICATIONS_TOPIC tb_edge.notifications 需要最短延迟和处理时间的高优先级边缘通知(rpc、生命周期、队列中的新消息)的主题前缀。每个tb-core都有自己的主题:PREFIX.SERVICE_ID
queue.edge.event_notifications_topic TB_QUEUE_EDGE_EVENT_NOTIFICATIONS_TOPIC tb_edge_event.notifications 要推送到特定边缘的下行链路的主题前缀。每个Edge都有自己独立的主题:PREFIX.TENANT_ID.EDGE_ID
queue.edge.partitions TB_QUEUE_EDGE_PARTITIONS 10 Edge服务使用的分区数量
queue.edge.poll-interval TB_QUEUE_EDGE_POLL_INTERVAL_MS 25 与边缘服务相关的主题的轮询间隔
queue.edge.pack-processing-timeout TB_QUEUE_EDGE_PACK_PROCESSING_TIMEOUT_MS 10000 Edge服务处理消息包的超时
queue.edge.pack-processing-retries TB_QUEUE_EDGE_MESSAGE_PROCESSING_RETRIES 3 边缘服务重试处理失败消息包
queue.edge.consumer-per-partition TB_QUEUE_EDGE_CONSUMER_PER_PARTITION false 为边缘队列启用/禁用每个分区的单独使用者
queue.edge.stats.enabled TB_QUEUE_EDGE_STATS_ENABLED true 启用/禁用边缘服务的统计信息
queue.edge.stats.print-interval-ms TB_QUEUE_EDGE_STATS_PRINT_INTERVAL_MS 60000 Edge服务统计打印间隔
queue.cloud-event.topic TB_QUEUE_CLOUD_EVENT_TOPIC tb_cloud_event Kafka、RabbitMQ等的默认主题名称。
queue.cloud-event.poll-interval TB_QUEUE_CLOUD_EVENT_POLL_INTERVAL_MS 25 与Cloud Event服务相关的主题的轮询间隔
queue.cloud-event-ts.topic TB_QUEUE_CLOUD_EVENT_TS_TOPIC tb_cloud_event_ts Kafka、RabbitMQ等的默认主题名称。
queue.cloud-event-ts.poll-interval TB_QUEUE_CLOUD_EVENT_TS_POLL_INTERVAL_MS 25 与Cloud Event服务相关的主题的轮询间隔
queue.tasks.poll_interval TB_QUEUE_TASKS_POLL_INTERVAL_MS 500 任务主题的轮询间隔(以毫秒为单位)
queue.tasks.partitions TB_QUEUE_TASKS_PARTITIONS 12 任务队列的分区计数
queue.tasks.partitions_per_type TB_QUEUE_TASKS_PARTITIONS_PER_TYPE 每种类型的任务队列的自定义分区计数。格式:'TYPE1:24;TYPE2:36',例如'CF_REPROCESSING:24;TENANT_EXPORT:6'
queue.tasks.partitioning_strategy TB_QUEUE_TASKS_PARTITIONING_STRATEGY tenant 任务分区策略:“租户”或“实体”。默认情况下,使用“租户” - 特定租户的任务在同一分区中处理。在单租户环境中,使用“实体”策略在多个分区之间分配任务。
queue.tasks.stats.topic TB_QUEUE_TASKS_STATS_TOPIC jobs.stats 任务统计主题的名称
queue.tasks.stats.poll_interval TB_QUEUE_TASKS_STATS_POLL_INTERVAL_MS 500 任务统计主题的轮询间隔(以毫秒为单位)
queue.tasks.stats.processing_interval TB_QUEUE_TASKS_STATS_PROCESSING_INTERVAL_MS 1000 处理作业统计信息的时间间隔(以毫秒为单位)

事件配置参数

参数环境变量默认值说明
event.debug.max-symbols TB_MAX_DEBUG_EVENT_SYMBOLS 4096 每个调试事件的最大符号数。如果需要,事件内容将被截断

通用服务参数

参数环境变量默认值说明
service.type TB_SERVICE_TYPE monolith monolith、tb-core或tb-rule-engine
service.id TB_SERVICE_ID 该服务的唯一ID(如果为空则自动生成)
service.rule_engine.assigned_tenant_profiles TB_RULE_ENGINE_ASSIGNED_TENANT_PROFILES 分配给此规则引擎的租户配置ID的逗号分隔列表。该规则引擎将仅对具有这些配置文件的租户负责(如果配置文件中启用了“隔离”选项)。
service.rule_engine.pubsub.executor_thread_pool_size TB_RULE_ENGINE_PUBSUB_EXECUTOR_THREAD_POOL_SIZE 0 pubsub规则节点执行器提供程序的线程池大小。如果未设置 - 将使用默认的pubsub执行程序提供程序值(5 * 可用处理器的数量)

指标参数

参数环境变量默认值说明
metrics.enabled METRICS_ENABLED false 启用/禁用执行器指标
metrics.timer.percentiles METRICS_TIMER_PERCENTILES 0.5 计时器指标的执行器返回的指标百分位数。双精度值列表(除以,)。
metrics.system_info.persist_frequency METRICS_SYSTEM_INFO_PERSIST_FREQUENCY_SECONDS 60 以秒为单位保留系统信息(CPU、内存使用情况等)的频率
metrics.system_info.ttl METRICS_SYSTEM_INFO_TTL_DAYS 7 系统信息时间序列的TTL(以天为单位)

版本控制参数

参数环境变量默认值说明
vc.thread_pool_size TB_VC_POOL_SIZE 6 用于处理导出任务的池大小
vc.git.io_pool_size TB_VC_GIT_POOL_SIZE 3 用于处理git IO操作的池大小
vc.git.repositories-folder TB_VC_GIT_REPOSITORIES_FOLDER ${java.io.tmpdir}/repositories 默认存储库路径

通知系统参数

参数环境变量默认值说明
notification_system.thread_pool_size TB_NOTIFICATION_SYSTEM_THREAD_POOL_SIZE 10 指定通知系统处理通知规则和通知发送的线程池大小。推荐值 <= 10
notification_system.rules.deduplication_durations TB_NOTIFICATION_RULES_DEDUPLICATION_DURATIONS NEW_PLATFORM_VERSION:0;RATE_LIMITS:14400000; 触发器类型的以分号分隔的去重持续时间(以毫秒为单位)。格式:'NotificationRuleTriggerType1:123;NotificationRuleTriggerType2:456'

通用管理参数

参数环境变量默认值说明
management.endpoints.web.exposure.include '${METRICS_ENDPOINTS_EXPOSE:info}' 公开指标端点(使用值“prometheus”来启用Prometheus指标)。
management.health.elasticsearch.enabled "false" 启用org.springframework.boot.actuate.elasticsearch.ElasticsearchRestClientHealthIndicator.doHealthCheck

ThingsBoard移动应用设置

参数环境变量默认值说明
mobileApp.domain TB_MOBILE_APP_DOMAIN demo.thingsboard.io Thingsboard Live移动应用程序的服务器域名
mobileApp.googlePlayLink TB_MOBILE_APP_GOOGLE_PLAY_LINK https://play.google.com/store/apps/details?id=org.thingsboard.demo.app Thingsboard Live移动应用程序的Google Play商店链接
mobileApp.appStoreLink TB_MOBILE_APP_APP_STORE_LINK https://apps.apple.com/us/app/thingsboard-live/id1594355695 Thingsboard Live移动应用程序的App Store链接
mqtt.client.retransmission.max_attempts TB_MQTT_CLIENT_RETRANSMISSION_MAX_ATTEMPTS 3 允许的最大重传尝试次数。超过此值后重传将停止,待处理消息将被丢弃
mqtt.client.retransmission.initial_delay_millis TB_MQTT_CLIENT_RETRANSMISSION_INITIAL_DELAY_MILLIS 5000 第一次重传尝试之前的基本延迟(以毫秒为单位),从发送消息的那一刻开始测量。随后的延迟是使用指数退避计算的。该基本延迟也用作应用抖动的参考值。
mqtt.client.retransmission.jitter_factor TB_MQTT_CLIENT_RETRANSMISSION_JITTER_FACTOR 0.15 应用于计算的重传延迟的抖动因子。实际延迟在通过将基本延迟乘以 (1 - jitter_factor) 和 (1 + jitter_factor) 之间的因子定义的范围内随机化。 For example, a jitter_factor of 0.15 means the actual delay may vary by up to ±15% of the base delay.