dushixiang
0fa920e972
refactor: 重构 WebSocket 可靠投递会话模型
2026-08-31 21:52:03 +08:00
dushixiang
787fa6918d
feat: WebSocket 消息可靠投递(纯内存事件队列)
...
- agent 数据写入增加 10s 超时,写失败立即断连重连,消除无超时写卡死期间快照被覆盖的静默丢失
- 事件类消息(SSH登录/防篡改/指令响应/监控检测)改走内存 outbox:seq + 服务端累计 ack + 断线重放,上限 1024 条溢出丢最旧,重启清空(可接受)
- 注册请求携带 BootID 会话标识:探针重启后 seq 从 1 重新分配,服务端据此重置确认位点,避免新消息被旧位点误判为重复而丢弃
- server 读循环与处理解耦(per-agent 有序队列 + 串行 worker),慢处理不再阻塞 TCP 读取,队列满断连由探针重放兜底
- 修复探针快速重连时旧连接误注销新连接的竞态(此前会闪断新连接)
- IsAgentEnabled 加 3s TTL 缓存,禁用立即失效;pong 在线状态写库去抖(首次 + 5 分钟心跳刷新)
- VM 写超时默认 30s -> 10s,快速失败配合重放兜底
新旧版本双向兼容:注册响应 Reliable 字段协商,旧 server 下探针自动降级直发
2026-08-30 22:30:41 +08:00
dushixiang
14a48f81a4
feat: support disabling agents
2026-08-26 20:24:17 +08:00
dushixiang
6c8d2f13d3
feat: 告警规则实体化与服务监控按标签选探针
...
- 告警规则:独立实体(alert_rules 表),按优先级命中第一条生效;支持三种主机目标(全部/按主机/按标签)、7 类阈值、事件通知开关、IP 打码、推送渠道选择;未命中规则的主机不产生告警;列表支持外置启停
- 服务监控:新增按标签选择探针,与指定探针取并集,均为空时全部探针执行
- 公网 IP 采集:范围支持全部探针/按探针/按标签,兼容历史 custom 取值
- 告警历史:新增规则归属列;评估链路(指标/证书/服务下线/探针离线/到期提醒/事件通知)全部按主机命中规则驱动
- 设置页:左侧菜单改为浅色卡片容器并优化对比度,通知渠道移至公网 IP 采集之后;主菜单宽度调整为 240px
2026-08-23 19:53:35 +08:00
dushixiang
a4f7c82de6
更新包路径
2026-08-12 18:59:29 +08:00
dushixiang
60678ea1bc
chore: upgrade dependencies
2026-07-08 21:56:14 +08:00
dushixiang
e115d828ab
重构数据采集打包,修改为统一打包发送
2026-05-05 17:46:32 +08:00
yumusb
35becefe1e
Support metric bundles and enable WS compression
...
Add support for bundling metrics and enable WebSocket compression. Introduces protocol.BundlePayload and MessageTypeBundle, and handles bundled messages on the server side (handleBundleMessage) by iterating items and forwarding each to metricService.HandleMetricData. On the agent side, add bundleWriter to collect outgoing MetricsPayloads, switch collectors to write into the bundle writer, and send a single bundle message when items exist. Also enable compression on the WebSocket upgrader and create a custom websocket.Dialer (with Proxy, HandshakeTimeout and EnableCompression). Minor logging/messages and import adjustments included.
2026-04-08 11:26:00 +08:00
dushixiang
1a64b27af6
移除原心跳配置和业务,改为使用 WebSocket Ping Pong 实现,并增加超时逻辑
2026-02-25 14:11:22 +08:00
dushixiang
be54ef2d31
增加公网 IP 采集和网卡 IP 展示
2026-01-17 16:24:59 +08:00
dushixiang
8904d39872
在探针注册后服务端主动下发SSH登录监控配置
2026-01-11 10:22:36 +08:00
dushixiang
5359ee89d4
在探针注册后服务端主动下发SSH登录监控配置
2026-01-11 10:20:38 +08:00
dushixiang
1ffa20045c
增加 agent 数据缓存功能,避免长时间连不上服务端导致数据丢失。
2026-01-09 22:28:56 +08:00
dushixiang
3cf4d7e5a9
优化目录保护
2026-01-09 21:53:44 +08:00
dushixiang
f43a856add
优化 SSH 登录配置
2026-01-09 21:15:09 +08:00
dushixiang
c522b86b9b
优化目录保护配置
2026-01-09 20:42:18 +08:00
dushixiang
0aab4dc25a
拆分文件,降低 agent_handler.go 复杂度
2026-01-08 18:58:24 +08:00