安装与配置
安装前确认
使用容器部署 Halo 时,请通过 Halo 的数据卷保留插件数据目录。Insight 不需要额外配置 MySQL、PostgreSQL 或 Redis;历史记录使用自身的 SQLite 数据库。
安装步骤
- 从项目发布页获取与你的 Halo 版本兼容的插件 JAR;自行构建 1.2.0 时,产物为
build/libs/plugin-insight-1.2.0.jar。 - 在 Halo Console 的插件管理页面使用本地上传安装该 JAR,确认插件已启用。
- 在「工具」中打开「运行洞察」。管理员可直接检查总览;其他用户需要分配相应角色权限。
- 等待采样与分钟聚合积累,再打开性能页查看历史趋势。初装或刚重启时,部分指标可能显示等待数据或采样不足。
- 在插件设置中配置数据采集、告警规则和通知渠道。通知渠道默认关闭,按需开启并保存。
权限分工
普通查看用户看不到日志、线程栈和 JFR 入口。角色变更后,可重新登录或刷新 Console 再检查菜单。
数据采集设置
入口:插件管理 → Halo Insight · 运行洞察 → 设置 → 数据采集。
请求按分钟聚合,和系统采样间隔不是同一配置。较大的采样间隔可以降低持续工作量,但会减少短时波动的可见性;线程上限越小,归因覆盖可能越低。
资源有限的站点可先使用默认配置,观察自身开销,再考虑把采样间隔调到 30 秒或使用性能诊断中的低开销入口。
数据保留与升级
监控数据库位于 Halo 插件目录下的 insight/insight.sqlite,使用 WAL 模式。结构化诊断历史还按类别限制最多 2000 条记录,时间保留和数量上限中先达到的条件会触发清理。自身开销只保留进程内最近一小时数据,重启后重新累计。
Insight 1.2.0 使用 SQLite v5;早期 v4 数据库升级时自动迁移。升级前停止插件并备份整个 insight 数据目录;回退旧版时一起恢复对应的旧版备份,避免让旧版本读取新数据库。
「清理全部」会删除监控历史和诊断摘要,但保留仍待发送的通知。JFR 文件有独立的清理规则,详见JFR 录制。