配置项参考
发行包默认配置、可选配置项、环境变量与 JVM 参数的完整清单,以及程序目录下 data/ 与 logs/ 的布局。
概述
发行包的 jar 内置 application.yml,多数场景不需要改动。需要覆盖某项配置时,有以下几种方式:
- 启动前设置环境变量
JVM_OPTS,加入-D系统属性,例如JVM_OPTS="-Dapp.backup-dir=/data/backups"。start.sh与start.bat都会把JVM_OPTS传给java,服务注册时也可以固化,见 安装包与启动脚本。 - 在程序目录(启动时的工作目录)放置 Spring Boot 通用的外部配置文件,如
application.yml、config/application.yml。这是 Spring Boot 的标准机制。 - 部分开关只识别系统属性或环境变量,见下文各表。
提示:集群模式下的 Redis、故障策略等参数不在配置文件里,而是保存在配置库中,在「系统 > 系统设置 > 集群配置」页维护,见 集群与高可用。
发行包默认配置
以下默认值取自两个产品 jar 内的 application.yml。
| 键 | 说明 | Sight Report 默认值 | Sight Wall 默认值 |
|---|---|---|---|
server.port |
HTTP 端口 | 9091 |
9090 |
server.compression.enabled |
响应压缩 | true |
true |
server.compression.additional-mime-types |
在 Spring Boot 默认压缩类型之外追加的类型 | image/svg+xml |
image/svg+xml |
server.compression.min-response-size |
触发压缩的最小响应体 | 1KB |
1KB |
spring.servlet.multipart.max-file-size |
单个上传文件上限 | 200MB |
50MB |
spring.servlet.multipart.max-request-size |
单次请求上限 | 220MB |
100MB |
spring.flyway.enabled |
启动时自动执行数据库迁移 | true |
true |
spring.flyway.validate-on-migrate |
迁移前校验脚本 | true |
true |
spring.flyway.out-of-order |
是否允许乱序迁移 | false |
false |
app.license.product-id |
授权产品码,授权文件中的 product 必须与之一致 |
sight-report |
sight-wall |
app.font-path |
字体目录 | data/fonts |
data/fonts |
app.driver-path |
JDBC 驱动目录 | data/drivers |
data/drivers |
app.cache-dir |
导出缓存目录 | data/cache |
data/cache |
app.disk-cache.path |
磁盘缓存目录(含会话库) | data/cache |
data/cache |
app.plugin.enabled |
启用插件系统 | true |
true |
app.plugin.plugins-dir |
插件 jar 目录 | data/plugins |
data/plugins |
app.plugin.plugins-data-dir |
插件数据目录 | data/plugins-data |
data/plugins-data |
app.plugin.frontend-extract-dir |
插件前端资源解压目录 | data/temp/plugin-frontend |
data/temp/plugin-frontend |
app.plugin.auto-load-on-startup |
启动时自动加载插件 | true |
true |
sa-token.token-name |
登录令牌名,令牌通过请求头传递,不读 Cookie | satoken |
satoken |
app.brand.default-name |
数据库中未配置品牌名时的缺省名称 | 未设置 | Sight 大屏平台 |
注意:上传大小限制同时受反向代理约束,代理的请求体上限要不小于此处的值。备份包上传走独立的流式接口,不受
multipart限制。
可选配置项
以下配置项在发行包 application.yml 中没有出现,取值缺省时使用代码内默认值。
| 键 | 说明 | 默认值 | 示例 |
|---|---|---|---|
app.backup-dir |
备份包存放目录,可指向程序目录之外的数据盘 | 空(使用 data/backups) |
/data/sight-backups |
app.license.require-signature |
是否拒绝无签名的授权 | true |
true |
app.license.bind-enforce |
机器绑定失配时是否强制停用(过宽限期后);false 为仅记录的观察模式 |
true |
false |
app.license.bind-grace-days |
机器绑定失配的宽限天数 | 14 |
14 |
app.license.cloud.enabled |
厂商云激活 | false |
false |
sight-data.trial.trusted-proxy-hops |
客户端 IP 识别时信任的反向代理层数,用于试用限流与运行配额的 IP 维度 | 1 |
2 |
sight-data.trial.<产品>.max-ips |
试用(未注册)状态下允许的并发访问 IP 数;产品取 report、bi、datawall;0 或负数为不限 |
2 |
5 |
sight-data.trial.<产品>.window-ms |
试用 IP 统计窗口(毫秒) | 3600000 |
3600000 |
sight-data.quota.store |
运行配额计数后端,可选 local 或 redis |
local |
redis |
sight-data.node.name |
节点标识,仅用于运维标注 | 空 | node-1 |
sight-data.node.products |
本节点分配运行的产品码列表,空表示运行全部已授权产品 | 空 | [datawall] |
app.flyway.auto-repair-missing-migrations |
检测到历史迁移记录在本版本中缺失时,是否先 repair 再迁移 | true |
false |
环境变量
程序读取的环境变量。名称大小写敏感。
数据库与启动
| 变量 | 说明 | 默认值 |
|---|---|---|
MR_DB_URL |
配置库 JDBC URL。设置后优先于 data/work/database.config,密码按明文处理,不加密、不落盘 |
未设置 |
MR_DB_USERNAME |
配置库用户名,仅在设置了 MR_DB_URL 时读取 |
未设置 |
MR_DB_PASSWORD |
配置库密码,同上 | 未设置 |
以上三项也可用系统属性 mr.db.url、mr.db.username、mr.db.password 提供,环境变量优先。
授权
| 变量 | 说明 | 默认值 |
|---|---|---|
MR_LICENSE_CODE |
授权内容。配置库中还没有授权时,启动会读取并自动注册 | 未设置 |
MR_LICENSE_FILE |
授权文件路径。未设置 MR_LICENSE_CODE 时读取 |
未设置,回落为工作目录下的 report-license.txt |
MR_ENV_SECRET |
显式注入环境标识,优先级最高。一般不需要设置 | 未设置 |
MR_MACHINE_FP |
注入一个稳定的机器指纹,供容器等机器特征易变的环境做机器绑定 | 未设置 |
MR_CLUSTER_UID |
注入集群标识,供机器绑定使用;在 Kubernetes Pod 内可自动获取 | 未设置 |
MR_LICENSE_VERIFY_PUBKEY |
授权验签公钥(SPKI base64),一般不需要设置 | 使用内置公钥 |
集群
| 变量 | 说明 | 默认值 |
|---|---|---|
MR_CLUSTER_TOKEN |
集群节点间互信令牌。不设置时由第一个启动的节点在配置库中自动生成,其他节点读取使用 | 未设置 |
MR_CLUSTER_TOKEN_FILE |
令牌文件路径 | data/work/cluster.token |
加密密钥
配置库中的数据源密码、AI 配置等敏感字段用下列密钥加密。四个变量都有内置默认值,也都可以用对应的系统属性提供(系统属性优先于环境变量)。
| 变量 | 系统属性 | 保护对象 |
|---|---|---|
SIGHTDATA_DATASOURCE_KEY |
sightdata.datasource.key |
数据源凭据 |
SIGHTDATA_AI_KEY |
sightdata.ai.key |
AI 配置 |
SIGHTDATA_SERVER_KEY |
sightdata.server.key |
服务端加密 |
SIGHTDATA_FRONT_KEY |
sightdata.front.key |
前端传输加密 |
注意:正式部署前应确定这些密钥。更换密钥后,已用旧密钥加密的密文无法解密(数据源会连不上、AI 配置失效),需要重新保存。集群各节点、以及备份恢复的源机与目标机,这四个密钥必须一致,否则恢复预检会给出警告。
其他开关
| 变量 | 系统属性 | 说明 | 默认值 |
|---|---|---|---|
SIGHT_DATA_API_SSRF_GUARD |
sightdata.api-dataset.ssrf-guard.enabled |
API 数据集出站请求的 SSRF 防护;设为 false 关闭,仅适用于完全可信的内网 |
开启 |
SIGHT_DATA_API_TLS_TRUST_ALL |
sightdata.api-dataset.tls.trust-all |
API 数据集请求是否信任所有 TLS 证书;设为 true 开启 |
关闭 |
SIGHTDATA_SCRIPT_CLASS_GUARD |
sightdata.script.class-guard.enabled |
脚本导入类的安全校验;设为 false 关闭 |
开启 |
SIGHTDATA_CRYPTO_AES_GCM |
sightdata.crypto.aes-gcm |
新写入的敏感数据改用 AES-GCM 加密。开启后不能回退到不认识该格式的旧版本 | false |
SIGHT_TLS_LEGACY |
sight.tls.legacy |
放开 JDK 默认禁用的 TLSv1、TLSv1.1,用于连接无法升级的老版本 SQL Server;取值 true、all 或自定义逗号列表。全 JVM 生效,属于安全降级 |
不设置 |
启动脚本相关的 JVM_XMX、JVM_XMS、JVM_RAM_PCT、JVM_OPTS、SPRING_PROFILES_ACTIVE 见 安装包与启动脚本。
目录布局
以下路径都相对于程序目录(jar 所在目录)。
| 路径 | 内容 | 随备份包备份 |
|---|---|---|
sight-report.jar / sight-wall.jar |
主程序 | 否,升级时替换 |
data/work/database.config |
配置库连接信息(密码加密) | 否,需单独保管 |
data/work/db/ |
选择「内置数据库」时的 H2 数据库文件 | 备份包含其中的数据,也可停服后整目录复制 |
data/work/screen-assets/ |
Sight Wall 的图片素材 | Sight Wall 备份包含 |
data/work/cluster.token |
集群令牌文件,仅在手工配置时使用 | 否 |
data/fonts/ |
字体 | 是 |
data/ai-docs/ |
AI 提示词覆盖文件 | 是 |
data/drivers/ |
JDBC 驱动 | 否 |
data/plugins/、data/plugins-data/ |
插件与插件数据 | 否 |
data/cache/ |
导出缓存与磁盘缓存(含会话库) | 否,运行期间不要手工清理 |
data/backups/ |
备份包(未设置 app.backup-dir 时) |
备份包本身 |
data/models/ |
Sight Report 语义检索模型 | 否,随版本走 |
logs/ |
运行日志 | 否 |
report-license.txt |
可选:放置授权内容,配置库无授权时自动读取 | 否 |
日志
日志目录默认 ./logs,可用系统属性 logs.dir 修改。文件名前缀取自应用名(Sight Report 为 sight-data,Sight Wall 为 sight-wall):
| 文件 | 内容 | 滚动与保留 |
|---|---|---|
<前缀>-info.log |
INFO 及以上 | 单文件 10MB,保留 15 天,总量上限 500MB |
<前缀>-error.log |
WARN 及以上 | 单文件 100MB,保留 15 天,总量上限 1GB,启动时清理超期文件 |