dushixiang and Claude Opus 4.7
c431f300bc
新增实时监控模式,agent 1s 并行采集 + 前端滑动窗口
...
agent
- 移除 collector.interval 配置项;按指标类型内置节奏:cpu/memory/network/
disk_io/gpu/network_connection 1s,temperature 5s,disk 30s,host 60s
- doCollectAndSend 改为并行执行本 tick 到期的采集器,避免串行累计耗时
超过 1s 节奏;每个 goroutine 加 recover 兜底,单点 panic 不拖垮整 tick
server
- LatestMetrics 加 sync.RWMutex + Update/Snapshot 方法,HandleMetricData
所有写入走 Update;GetLatestMetrics 返回 Snapshot,handler 在副本上
sanitize,修复 marshal 时与 ws 写入的 data race(go test -race 验证)
- HandleMetricData defer Set 缓存项,每次上报刷新 TTL;host case 也走
Update,不再 1 小时后失效
- LatestMetrics.Timestamp 用服务端 time.Now(),agent 时钟倒拨不会冻结
前端实时图;Timestamp/DiskIOSummary 字段补到 LatestMetrics
- AutoStep 新增 r ≤ 5m → 1s 档;timeRangeMilliseconds 加 2m
frontend
- 详情页加"实时"档位(默认),1s 拉 latestMetrics + 1m 历史播种 + 滑动
2 分钟窗口;快图表(CPU/Memory/Network/DiskIO/NetworkConnection)走
useLiveBuffer 追加,慢图表(GPU/Temperature/Monitor)保留 refetch
- useLiveBuffer:seed 不再覆盖已追加的 livePoint;resetKey 处理切网卡 /
切 agent 时的语义复位
- formatChartTime live 档位精确到秒;修复 1d/24h 仅显示 HH:mm 跨夜歧义
- 慢图表用 React.memo,阻断 1Hz 节奏的级联重渲染
- GpuChart 修复 utilization/temperature 时间戳错位时温度点丢失
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-06 23:18:50 +08:00
dushixiang
e115d828ab
重构数据采集打包,修改为统一打包发送
2026-05-05 17:46:32 +08:00
dushixiang
29d8b3e9cf
调整指标数据使用 max 聚合,避免消峰
2026-05-05 17:09:26 +08:00
yumusb
47c9a515a2
feat: 支持短UUID访问服务器详情,前端默认使用短链接
...
- 后端支持通过UUID前缀(第一段)匹配探针,保留完整UUID兼容
- 注册时自动检测短ID前缀冲突,冲突时分配新UUID
- 前端列表和卡片默认链接到短UUID(前8位)
2026-04-30 14:10:39 +08:00
yumusb
52a30aae74
feat: 支持 API Key 类型与管理接口认证
2026-04-24 18:45:01 +08:00
yumusb and Claude Opus 4.6
ab22f9bd57
fix: 修复指标采集空数据时误报0%的问题
...
当磁盘或网卡采集不到有效数据时,空列表会被写入缓存导致
磁盘占用率和网络流量显示为0%,与真实值混淆。
修复方案:
- Agent端:空列表不发送,与GPU/温度采集器保持一致
- Server端:空数据时跳过缓存更新,保留上一次有效值
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-14 20:30:54 +08:00
yumusb and Claude Opus 4.6
9c1752bb4d
fix: 删除探针时清理内存缓存中的监控数据
...
删除探针时只清理了 VictoriaMetrics 时序数据,但没有清理内存中的监控缓存,
导致监控页面显示已删除探针的 agent_id (hash) 作为名称。
- 新增 CleanAgentFromMonitorCache 方法遍历清理监控缓存
- 新增 DeleteAgentLatestMetricsCache 方法清理探针指标缓存
- DeleteAgent 删除探针时增加清理内存缓存步骤
- CleanOrphanedAgentMetrics 手动清理时也清理内存缓存
- 前端隐藏"清理残留指标数据"按钮(已自动清理无需手动操作)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-10 16:14:04 +08:00
yumusb and Claude Opus 4.6
b9ec210542
refactor: 优化后端服务结构
...
- 统一使用 orz 响应格式
- 优化 handler 和 service 层代码
- 改进上下文传递
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-10 12:53:13 +08:00
yumusb and Claude Opus 4.6
ffd1461b80
feat: 优化通知和告警服务
...
- 重构告警通知逻辑
- 新增通知队列服务
- 优化告警信息处理
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-04-10 12:52:50 +08:00
yumusb
3919340d85
Update notifier.go
2026-04-08 21:15:31 +08:00
yumusb
fd452e56d8
增加测试镜像、增加删除残留数据。
2026-04-08 20:24:03 +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
6ba52a1850
修复告警恢复当前值不正确的问题
2026-02-25 15:13:41 +08:00
dushixiang
4df28e3536
删除探针、服务监控时同步删除 victoriametrics 数据
2026-02-25 14:28:11 +08:00
dushixiang
1a64b27af6
移除原心跳配置和业务,改为使用 WebSocket Ping Pong 实现,并增加超时逻辑
2026-02-25 14:11:22 +08:00
yumusb
63cdd37b12
Hide agent IP when unauthenticated
...
Ensure agent.IP is cleared for unauthenticated requests. Previously IPv4, IPv6 and Hostname were redacted, but agent.IP was left intact and could leak sensitive information. This change sets agent.IP to an empty string in Get() when the user is not authenticated.
2026-02-24 09:44:27 +08:00
dushixiang
d40fc1314f
1. 修改注册探针的服务端地址为手动填写
...
2. 优化 Linux 系统服务模板
3. 优化首页流量展示方式
2026-02-10 19:56:46 +08:00
dushixiang
3db7118258
强制更新公网 IPv4 和 IPv6 信息 fix #65
2026-02-07 15:24:40 +08:00
yumusb
7f922e7382
优化告警消息
...
优化告警消息,IP去重以及增加监控项的名称
2026-01-29 19:20:09 +08:00
dushixiang
c9b6d6ff5a
优化流量统计
2026-01-25 22:01:56 +08:00
dushixiang
43732e57e2
优化设备详情网络地址的展示,服务监控的默认增加默认排序。
2026-01-25 21:21:46 +08:00
dushixiang
3f3ddfea49
通知增加通信 IP 的展示,移除自定义 Webhook 的默认 json form 模版 fix #42
2026-01-25 21:02:09 +08:00
dushixiang
ff2afc82a5
移除管理员探针管理的分页功能,增加标签过滤,与公共页面保持一致的排序逻辑 fix #47
2026-01-24 21:51:23 +08:00
dushixiang
e957183588
增加 weight 字段的自动化迁移,按照 name 顺序分配 weight,从 1 开始递增 fix #35
2026-01-24 19:49:54 +08:00
dushixiang
85f80b76fd
新增批量修改探针可见性的功能 fix #33
2026-01-24 18:48:49 +08:00
dushixiang
58efeea362
安装探针命令增加自动创建文件夹的代码 fix #59
2026-01-24 18:30:00 +08:00
dushixiang
b34ddd750f
SSH 登录监控增加 IP 归属地
2026-01-18 11:14:57 +08:00
dushixiang
6f08f9447a
修复自定义 agent 名称
2026-01-17 17:39:43 +08:00
dushixiang
2664ebb05e
优化探针查询过滤
2026-01-17 17:30:44 +08:00
dushixiang
87207cb159
修复 IP 地址查询失败的问题
2026-01-17 17:19:17 +08:00
dushixiang
6488c9155d
保留旧的连接 IP 地址
2026-01-17 17:15:51 +08:00
dushixiang
3a8caec66e
保留旧的连接 IP 地址
2026-01-17 17:14:19 +08:00
dushixiang
00ff019ccb
提交缺少的代码
2026-01-17 16:37:13 +08:00
dushixiang
be54ef2d31
增加公网 IP 采集和网卡 IP 展示
2026-01-17 16:24:59 +08:00
dushixiang
6fa90252df
优化 ddns 缓存清理
2026-01-17 14:06:30 +08:00
dushixiang
a0e680b1c8
修复 DDNS ipv4 配置初次创建永远为 true 的问题
2026-01-17 13:54:24 +08:00
yumusb
2108d09f6a
增加自定义 name 参数
2026-01-15 19:34:57 +08:00
yumusb
56e92c9081
允许只设置一个 systemName
2026-01-12 11:44:16 +08:00
榆木
07cc517b2c
允许有探针在线的IP地址不提供key下载
2026-01-11 19:55:41 +08:00
榆木
9ae1fea7d8
下载地址增加 key 认证
...
agent二进制下载地址增加 key 认证,防止刷流量
2026-01-11 19:19:58 +08:00
dushixiang
f0cff6a878
SSH 登录事件增加 IP 白名单
2026-01-11 13:56:21 +08:00
dushixiang
7965cd329a
SSH 登录事件增加 IP 白名单
2026-01-11 13:47:26 +08:00
dushixiang
52037fa8e6
优化已使用流量计算
2026-01-11 12:08:59 +08:00
dushixiang
ab1a13d5b2
在管理页面增加设备 IP 信息
2026-01-11 11:43:39 +08:00
dushixiang
80de85d51d
移除通知信息中的 ID 字段
2026-01-11 10:25:20 +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
602a36df01
移除 SSH 登录事件中的登录方法字段
2026-01-11 10:14:48 +08:00
dushixiang
692f2e8f34
修复恢复告警时实际值被替换的问题
2026-01-11 10:06:23 +08:00
dushixiang
0fce99f4d0
优化通知
2026-01-11 10:04:00 +08:00