审计与排障
审计轨迹是 WingGate 的证据层:每次认证事件、授权变更、会话创建与终止、文件/MCP 操作都记录操作者、结果与时间。本文介绍如何查询审计,以及如何在连接失败时结合审计与部署日志排查。
查询审计轨迹
- 打开组织,进入审计。
- 按时间范围、操作者(用户或连接器)、动作与资源过滤。
- 打开事件查看详情:元数据、诊断与可用时的技术上下文。

事件流是 append-only 且组织级作用域。每个 HTTP 请求与每次 MCP 工具调用至少写入一条事件,因此审计视图可能很大;先过滤再翻页。
审计记录了什么
认证、授权决策、会话生命周期与文件/MCP 操作,带操作者、结果与时间——与审计与证据按契约定义的范围一致。secret 绝不进入审计条目、日志或错误响应。
常见失败模式
连接器离线
连接器离线意味着 WingGate 无法触达其后的资产。按顺序检查:连接器主机到 WingGate 的出站连通性、主机上的连接器服务状态与日志(journalctl -u winggate-connector-entry)、以及连接器凭据是否仍然有效。见部署连接器。
主机密钥不匹配
确认后出现不匹配是一个刻意的信号——可能是中间人,也可能是主机重装。先带外核实原因,再重新探测并确认。绝不要覆盖你无法解释的不匹配;覆盖会被作为刻意的审计动作记录。见凭据保护。
未授权
成员没有该项目的 active grant,资产不在项目内或未就绪,或(MCP)项目/资产 MCP 配置不允许该工具。管理面角色不蕴含数据面访问。
MCP 连接或调用失败
- 401/403——凭据被撤销、过期,或其 scope 不覆盖目标工具组。重建项目 MCP 凭据并更新客户端。
- 412——项目的 MCP 配置已变更,既有客户端会话失效。重新连接客户端。
- 503——目标资产没有在线连接器。先检查连接器与资产绑定。
Runner installing
首次 Git/find/grep/运行时操作创建了按需 Runner 安装 Job。等待 Job 即可——Runner 验证通过后原操作自动重试。若 Job 失败,与 WingGate 服务运维方检查 Runner artifact 配置。
会话因 idle 关闭
会话在其最严格的 idle timeout 设置后关闭。重新打开新会话;若行为异常,检查项目或组织的空闲超时。
保留策略边界
没有自动审计保留、归档或分区:表随每次请求增长——边界见审计与证据。审计事件写入 WingGate 服务的数据库;若事件缺失,先检查服务的 PostgreSQL 连通性与审计表可用性。
审计条目缺失时
- 确认正在查看正确的组织与时间范围。
- 检查服务日志中的审计写入失败;服务记录写入错误但不影响受影响的请求。
- 对 MCP 事件,确认连接器的上报未在重试中丢失——重复上报按稳定事件 id 去重。