2026-11-11
W-Radar 与 xRadar:从一次请求到项目记忆
把访问、错误、性能与项目上下文放在一起观察,同时明确遥测和管理权限的边界。
W-Radar 与 xRadar:从一次请求到项目记忆
一个服务出了问题,常见的第一反应是打开日志。但日志告诉我们的往往只是某一条消息:它为什么出现、之前经过哪些调用、同一个项目最近做过什么决定,可能分散在不同地方。W-Radar 试图把这些线索放到一个可自托管的观察面上。
先看见发生了什么
W-Radar 把访问和事件分析、错误、追踪、性能剖析与项目级查询放在同一个系统里。后端使用 Rust 和 axum,数据存储使用 PostgreSQL/TimescaleDB,界面使用 React。它提供按项目和工作区划分的查询与 API 密钥,也有可配置的隐私策略。
它还包含项目上下文、追加式日志、待办和评估循环。这里的区别是:运行数据反映观察到的状态,项目日志保存值得以后查阅的背景,两者都需要结合实际证据理解。通知、站点审计和对象存储归档等属于可选集成,并非装好后自动具备。
xRadar 如何把调用串起来
xRadar Rust SDK 负责从应用侧构造遥测数据。一个请求可以创建根 span,数据库查询或外部调用成为子 span;批量上报保留父子关系,进而支持程序图和火焰图。错误事件可以附带堆栈、面包屑和上下文,但这些字段必须先脱敏。
SDK 的 tracing 桥接只导出应用或依赖已经产生的 span,不会凭空给每个函数加探针。文档建议对可能携带敏感参数的函数跳过参数采集。墙钟耗时与 span 活跃时间也不是 CPU 时间;异步任务的追踪上下文需要显式传递。把这些限制讲清楚,比把一张图当成完整真相更有用。
从观测走到权限边界
公开仓库提供完整服务以及采集、API 和 Web 拆分入口;拆成多个进程本身不等于租户隔离。公开的采集标识用于接收遥测,不能当作管理凭据;项目查询和运维注册表分别受权限控制。项目也明确区分运行时能力上报所需的服务端密钥与浏览器里的采集代码。
公开提交记录从 2026 年 11 月的脱敏源码发布开始,随后可见运行时报告权限、扩展导出与区域推理等改动。它不是完整的开发史,不能据此推测更早的个人经历。后续如果写到具体演进,会继续以 提交记录 和公开文档为依据。