安装与配置

安装前确认

项目要求
Halo2.26.0 或更新版本
Java21 或更新版本
本文对应插件版本1.2.0
控制台入口工具 → 运行洞察,路径 /console/insight

使用容器部署 Halo 时,请通过 Halo 的数据卷保留插件数据目录。Insight 不需要额外配置 MySQL、PostgreSQL 或 Redis;历史记录使用自身的 SQLite 数据库。

安装步骤

  1. 从项目发布页获取与你的 Halo 版本兼容的插件 JAR;自行构建 1.2.0 时,产物为 build/libs/plugin-insight-1.2.0.jar。
  2. 在 Halo Console 的插件管理页面使用本地上传安装该 JAR,确认插件已启用。
  3. 在「工具」中打开「运行洞察」。管理员可直接检查总览;其他用户需要分配相应角色权限。
  4. 等待采样与分钟聚合积累,再打开性能页查看历史趋势。初装或刚重启时,部分指标可能显示等待数据或采样不足。
  5. 在插件设置中配置数据采集、告警规则和通知渠道。通知渠道默认关闭,按需开启并保存。

权限分工

角色权限可以做什么
查看运行洞察查看指标、排行、事件、告警、业务任务、优化报告、自身开销、单插件详情与基线
管理运行洞察包含查看权限;确认告警、测试通知、清理或导出监控数据、管理优化记录、查看通知投递
访问日志、线程栈与 JFR 诊断依赖管理权限,额外允许读取日志和线程栈、创建或下载 JFR
Halo 原生插件管理权限停用或重新启用其他插件时额外需要

普通查看用户看不到日志、线程栈和 JFR 入口。角色变更后,可重新登录或刷新 Console 再检查菜单。

数据采集设置

入口:插件管理 → Halo Insight · 运行洞察 → 设置 → 数据采集。

设置默认值可填写范围作用
采样间隔15 秒5–300 秒系统与 JVM 指标采样间隔
系统指标保留天数7 天1–30 天保留原始系统采样;设置标签为「15 秒系统指标保留天数」
分钟聚合保留天数30 天7–180 天保留请求及资源的分钟统计
事件和告警保留天数30 天7–365 天保留事件、告警及结构化诊断历史
慢请求阈值1000 毫秒100–60000 毫秒将达到阈值的请求记入慢请求统计
数据库容量上限512 MB64–4096 MB监控数据库容量保护
插件资源归因采样开启开启 / 关闭估算插件 CPU、分配量与活动线程
插件资源采样线程上限51232–2048限制每轮读取的线程计数器数量

请求按分钟聚合,和系统采样间隔不是同一配置。较大的采样间隔可以降低持续工作量,但会减少短时波动的可见性;线程上限越小,归因覆盖可能越低。

资源有限的站点可先使用默认配置,观察自身开销,再考虑把采样间隔调到 30 秒或使用性能诊断中的低开销入口。

数据保留与升级

监控数据库位于 Halo 插件目录下的 insight/insight.sqlite,使用 WAL 模式。结构化诊断历史还按类别限制最多 2000 条记录,时间保留和数量上限中先达到的条件会触发清理。自身开销只保留进程内最近一小时数据,重启后重新累计。

Insight 1.2.0 使用 SQLite v5;早期 v4 数据库升级时自动迁移。升级前停止插件并备份整个 insight 数据目录;回退旧版时一起恢复对应的旧版备份,避免让旧版本读取新数据库。

「清理全部」会删除监控历史和诊断摘要,但保留仍待发送的通知。JFR 文件有独立的清理规则,详见JFR 录制。

下一步:总览与事件或告警与通知。