github komari-monitor/komari Snapshot-2607171139

latest release: Snapshot-2607171315
pre-release3 hours ago

主要更新内容

  • 彻底移除 Nezha 兼容性:删除 gRPC 服务、proto 文件及配置选项(nezha_compat_enablednezha_compat_listen)。不再支持 Nezha 协议连接,迁移到 Komari 原生 Agent。
  • 新增访客审计日志 RPCpublic:recordVisitorEvent 接口,管理员可通过设置 visitor_audit_enabled = true 启用,支持 IP 限流(每分钟 30 次,突发 10 次)。
  • 指标保留期重构:移除全局 metric_retention_days 配置,保留期由每个指标定义中的 retention_days 控制。值为 0 表示不持久化并清除已有数据。旧配置自动迁移清理。
  • 新增 loong64 架构支持:构建和安装脚本加入 loong64(loongarch64)交叉编译。
  • 删除客户端/任务时清理 metrics:删除客户端或 ping 任务前自动清除关联的 metric store 数据,避免孤立脏数据。
  • 禁用降采样默认metric_downsampling_enabled 默认值从 true 改为 false,需要时手动开启。
  • 报告写入改为批量事务:新增 metricstore.ReportBatcher,将原本按条写入的旧缓存(web/report/cache.go)替换为 3 秒窗口批量事务写入,提升性能。
  • Compaction Watermark 持久化:引入 metric_compaction_watermarks 表,记录每个指标最后一次成功压缩的边界,避免动态裁剪遗漏。
  • 添加 1.2.7 升级检测与迁移服务器:启动时自动检测是否需要从 1.2.7 数据库迁移,升级完成后继续正常启动。
  • 移除废弃代码与工具:删除 secureconfig(AES 加密)、SafeMapnezha/compat.goweb/report/cache.go 及大量未使用的数据库函数。

Bug修复

  • 修复:删除客户端或 Ping 任务前未清理 metric store,导致残留数据
  • 修复:零保留期(retention_days=0)的指标定义在 upsert 时被错误覆盖
  • 修复:访客审计日志缺乏防御性校验,后端增强 IP/User-Agent 记录安全性
  • 修复:Ping 记录查询改用 Series 读取以支持 rollup

其他

  • 禁用降采样默认,降低首次部署磁盘占用
  • 移除 Nezha 兼容代码及依赖(google.golang.org/grpcgoogle.golang.org/protobuf
  • 重构 metric store 报告写入为批量事务,减少数据库连接开销
  • 更新安装脚本和 CI 配置支持 loong64 架构
  • 新增 visitor-audit-rpc.md 文档说明公开审计接口用法
  • 删除大量废弃函数和测试文件,清理代码库

What's Changed

Commits

New Contributors

Full Changelog: 1.2.6...Snapshot-2607171139

Don't miss a new komari release

NewReleases is sending notifications on new releases.