用途:系统化诊断 Entity Graph 问题(实体缺失、边缺失、断连集群、过滤异常),用 gcx 命令按步骤缩小原因范围。
主要能力:gcx kg diagnose 会输出 Orientation 块,匹配五类常见场景并给出后续命令;其判定结果可作权威依据。注意两种分类:WARN 表示指标存在但无序列命中指定 env/namespace 范围,属标签映射问题而非数据缺失;FAIL 表示指标完全不存在。
使用方式:先确认前置条件 gcx config view、gcx kg status;status 需为 complete 且 enabled 为 true,否则属 Knowledge Graph 未接入,需在 Asserts 应用完成接入,配置或认证错误可用 setup-gcx 技能。随后按步执行:Step 1 栈健康(gcx kg status)、Step 2 实体计数与范围(gcx kg stats --since 1h、gcx kg meta scopes)、Step 3 检查 Mimir 中的源指标(traces_target_info、traces_service_graph_request_total,注意使用 deployment_environment 而非 asserts_env)、Step 4 录制规则(asserts:mixin_workload_job、asserts:relation:calls、asserts:request:rate5m)、Step 5 边来源分析(gcx metrics labels --label asserts_source,并检查 http_server_requests_seconds_count、nginx_ingress_controller_requests、istio_requests_total 等是否有 asserts_env)、Step 6 标签管道(deployment_environment 与 asserts_env 对应关系)、Step 7 单服务排查(Cypher 查询实体与关系、检查源指标与录制规则输出)。
适用场景:需要判断实体为何不出现、为何无边、为何断连或无法过滤时;也用于区分追踪、Prometheus 抓取、云集成等发现路径。
限制:gcx 必须已安装并配置有效上下文;服务名冲突与 env 范围拆分不会被命令自动检测,需手动检查自环边与客户端/服务端部署环境标签;修复后旧数据因查询回看窗口仍会显示 5–15 分钟。部分事实如具体收费与平台支持暂未提供。