如何启用 TSDB
TSDB 默认关闭。Dashboard 只有在配置了 tsdb.data_path 后才会初始化内置的 VictoriaMetrics 存储。
适用范围
启用 TSDB 后,服务器详情页的历史指标图表可以查询 1 天、7 天、30 天等历史周期;未启用时,前端会锁定这些历史周期。
服务监控历史在未启用 TSDB 时仍会从数据库读取;启用后会改为从 TSDB 查询。
配置方式
编辑 Dashboard 配置文件,通常是 /opt/nezha/dashboard/data/config.yaml,增加或修改:
yaml
tsdb:
data_path: "data/tsdb"
retention_days: 30
min_free_disk_space_gb: 1
max_memory_mb: 256
write_buffer_size: 512
write_buffer_flush_interval: 5data_path 可以填写相对路径或绝对路径。相对路径会按 Dashboard 运行目录解析。此项为空时 TSDB 不会启用。
也可以使用环境变量启用:
bash
NZ_TSDB_DATA_PATH=data/tsdb修改配置后需要重启 Dashboard。
如何确认已启用
重启后查看 Dashboard 日志:
- 出现
TSDB initialized successfully:TSDB 已启用。 - 出现
TSDB is disabled (tsdb.data_path not configured):未配置data_path,TSDB 仍关闭。
前端也会通过系统配置接口读取 tsdb_enabled。如果该值为 false,服务器详情页的历史指标周期会保持锁定。
注意事项
启用 TSDB 后,Dashboard 会删除旧的 service_histories 数据库表,已有服务监控历史不会自动迁移到 TSDB。建议在启用前先备份数据库。
TSDB 使用本地磁盘存储,请确保 data_path 所在分区有足够空间,并根据保留天数和服务器数量调整 retention_days、min_free_disk_space_gb 和 max_memory_mb。