用途:gcx-demo 是 gcx 的只读演示流程,用于客户或同事讲解,展示 gcx 在 Grafana Cloud 各产品领域的广度。所有命令限于 list、get、query、status,不使用 push、create、update、delete、edit 或带本地路径的 pull;需要写权限的命令跳过并说明原因。原则包括先探索再讲解、按实际栈调整顺序与重点、独立命令并行执行、每区域后说明价值而非语法、命令失败时简要说明并继续。
起始步骤:先运行 gcx config current-context 和 gcx config check 确认上下文;若参数含 --context <name> 则全程使用该上下文;若 config check 失败应停止并请用户修复上下文。
覆盖区域与命令:
- Provider 概览:gcx providers list
- K8s 原生资源:gcx resources get dashboards -o wide --no-truncate、gcx resources get folders --no-truncate、gcx resources list-types;-o wide 的 URL 列给出仪表盘深链,list-types 展示含插件类型的完整目录,list-examples <Kind> 仅对 provider 注册类型有效(如 slos、DropRule),核心类型如 dashboards、folders 不提供示例。
- 数据源:gcx datasources list
- 实时信号:先用 gcx datasources list -o json 获取数据源 UID,再按栈上存在的类型查询,例如 gcx metrics query 'topk(5, count by (job) (up))' -d <PROM_UID>、gcx logs query '{service_name=~".+"}' --limit 5 -d <LOKI_UID>、gcx traces query '{}' --limit 5 -d <TEMPO_UID>;可提及 --open 和 --share-link。
- Assistant(仅 Cloud,需 gcx login OAuth):gcx assistant prompt 自然语言查询、--continue 续接、--json 输出结构化事件流;gcx assistant investigations list 与 get、get-narrative 查看调查状态与结论文本;列表为空则跳过,不在演示中创建。
- 可靠性与告警:gcx slo definitions status、gcx alert instances list --state firing、gcx alert rules list --no-truncate;单条规则可用 gcx alert rules get <uid> -o json 查看完整 PromQL 等。
- 合成监控:gcx synth checks list、gcx synth probes list
- IRM:gcx irm oncall schedules list
- 云侧命令(需云认证与可解析栈 slug):gcx k6 load-tests list --no-truncate、gcx fleet pipelines list --no-truncate;未配置则跳过并说明所需条件。
错误处理:单条失败不中止,结尾汇总;数据源缺失跳过该信号类型;云认证或 slug 缺失跳过 k6;collector 插件缺失(fleet 404)跳过 fleet 并运行 gcx setup status;Assistant 不可用(自托管、缺 OAuth、403)跳过并说明;权限范围缺失(403)记录后跳过;空列表报“未找到”而非错误。收尾总结实际展示内容,并说明一条二进制、一个上下文覆盖全部 Grafana Cloud 产品,且资源与 SLO 推送支持 --dry-run(并非所有变更动词都支持 --dry-run)。