zbxtable 3.0.7
ZbxTable 是一个开源的 Zabbix 报表系统。在上一个版本(3.0.6)中,拓扑已全面兼容自定义设备类型,并完善了告警筛选与登录外观配置。随着 Zabbix 8.0 逐步落地,社区反馈了设备初始化接口失效、PostgreSQL 升级失败等问题。V3.0.7 重点完成对 Zabbix 8.0 的兼容,并修复跨数据库升级与设备绑定编辑体验体验,建议尽快更新。
重点功能更新
- 兼容 Zabbix 8.0(核心更新):设备初始化改用
host.update批量写入资产信息,主机监控项分组改为item.get+ 标签 / 键 / 名称归类,避免调用 8.0 已移除的host.massupdate/applicationAPI。 - 设备绑定模板回填:各指标所选模板 ID 可持久化;编辑 / 复制绑定配置时自动回填模板与监控项名称,旧数据无模板 ID 时也可按 itemid 批量查询显示。
- PostgreSQL 升级修复:配置字段统一为跨库
text类型,恢复启动阶段跨库迁移,修复从旧版本升级到 PostgreSQL 时longtext不存在导致的 502。 - 报表与稳定性增强:主机报表参考主机支持按名称搜索;优化 API 连接池、配置缓存与并发回源,提升多实例场景下的稳定性与响应。
兼容 Zabbix 8.0
Zabbix 7 / 8 已移除 host.massupdate,并在更早版本移除了 Application 体系。3.0.6 在 Zabbix 8.0 上执行「设备配置 → 初始化」会直接报错:
-32601 (Method not found.): Incorrect method "host.massupdate"
3.0.7 对此做了系统性适配:
- 设备 / 资产初始化:改为按批调用
host.update(每批最多 500 台),为每台主机写入hostid、inventory_mode与inventory,兼容 Zabbix 6 / 7 / 8; - 主机监控项分组:5.4 及以上改用
item.get+selectTags,按component标签、标准 item key 与中英文名称归类到 CPU / Memory / Filesystem / Interface;5.4 以下仍走application.get; - 实测验证:已在 Zabbix 8.0.0 环境验证登录、主机列表、监控项批量查询、模板列表与监控项分组均可正常返回。
至此,ZbxTable 可在 Zabbix 8.0 上完成设备绑定初始化与主机监控数据展示,而不必停留在旧版 API。
设备绑定模板与监控项回填
此前编辑设备绑定时,只能看到已保存的监控项 ID,模板下拉无法回填,换模板后还可能把旧监控项一起提交。3.0.7 打通了模板选择的完整闭环:
- 后端新增各指标
*_template_id字段,创建 / 更新时一并持久化; - 新增按 itemids 批量查询监控项接口,用于旧数据或仅有 itemid 时回填名称;
- 前端编辑 / 复制时自动恢复模板与监控项;更换模板会清空旧监控项,避免错配。
管理员再次打开绑定配置时,可直接看到「模板 + 监控项」的完整选择状态,减少重复配置成本。
PostgreSQL 升级与跨库迁移
部分用户从 3.0.5 升级到 3.0.6 后,在 PostgreSQL 环境启动失败:
Failed to auto migrate: ERROR: type "longtext" does not exist
根因是配置表字段使用了 MySQL 专用的 longtext。3.0.7 将 config_value 统一为跨库可用的 text,并恢复启动阶段的跨库迁移校验,使 MySQL / PostgreSQL 升级路径保持一致。
其他体验与稳定性优化
除上述核心更新外,本版本还包括:
- 主机报表「参考主机」下拉支持按名称搜索,批量加载匹配主机后可快速定位;
- API 连接池按实例独立建连,避免单实例慢 / 宕机拖垮全局;
- 配置项内存缓存、主机列表 / 统计 singleflight 回源,降低缓存击穿对 Zabbix 的压力;
- 安装状态检查结果进程内缓存,减少每请求读盘;
- 修复若干 gofmt / CI 格式问题,保证发布流水线稳定。
相关 Issue
- #177 Zabbix 8.0 设备初始化
host.massupdate报错 — 已修复 - #173 PostgreSQL 升级
longtext不存在 — 已修复 - #175 报表主机下拉搜索 — 参考主机搜索已修复;主机组搜索与超阈值结论仍待后续版本
在线 Demo
全新安装
全新安装可查看安装文档https://www.zbxtable.com/docs/install/install/
升级
在线升级
点击系统管理-版本信息-检查更新,发现新版本后,点击升级更新完成,重启应用并重新登录即可.
二进制升级
按照以下方法升级 下载最新版本,解压后替换zbxtable二进制文件,并重启
wget https://dl.cactifans.com/zbxtable/zbxtable-latest-linux-amd64.tar.gz
tar -xzf zbxtable-latest-linux-amd64.tar.gz
cd zbxtable-*-linux-amd64
mv zbxtable /usr/local/zbxtable/
chmod a+x /usr/local/zbxtable/zbxtable
chown zbxtable:zbxtable /usr/local/zbxtable/
systemctl restart zbxtable
前后端版本都已经升级成功。如前端未更新,请退出重新登陆并使用 Ctrl+F5 强制刷新即可.
文档
帮助文档:https://zbxtable.com/docs/
发布公告:https://zbxtable.com/blog/releases/
FAQ: https://zbxtable.com/docs/faq/faq/