SuperAPI AI 工具集

dd-idp

部署与运维

查看项目

更新于 10-17 02:08

技能介绍

dd-idp 是 Datadog Pup 中面向内部开发者平台(IDP)的只读统一实体图(UEG)工具,帮助用户发现软件、归属、工程工作以及运营上下文。核心价值在于一次有界请求即可获得关联上下文:一个服务连同其负责人、所属系统、代码、依赖与健康信号,均通过已声明的关系连接。

用途 它回答关于软件、基础设施和工程工作的清单、归属、状态或关系问题。资料列出的典型问题与对应做法包括:端点由哪个服务处理、谁负责(Endpoint to service,常由值班工程师使用);服务代码在哪里、应联系谁(Service context,新加入团队的工程师);当前谁为该服务值班(On-call contact,事故负责人);哪些服务依赖该服务、数据库、队列或提供方(Caller impact,SRE 或服务负责人);团队拥有什么、什么需要关注(Portfolio and health,工程负责人);哪些服务成本上升、何处有节省建议(Team cost,工程负责人或 FinOps);哪些服务需要清理归属或规范(Ownership gaps and scorecard levels,平台工程师);哪些公开端点缺少防护、谁负责(API posture,安全工程师);哪些服务和负责人需处理漏洞公告(Advisory to owners,安全工程师);哪些 Terraform 工作区存在漂移、配置在哪里(Terraform drift,平台工程师)。

主要能力与命令面 默认使用 pup idp kinds 和 pup idp entities query 处理跨服务、团队、系统、仓库、依赖、工作、运营或安全类型的清单、归属、状态与关联上下文。pup idp assist 适合快速、精选的单服务摘要、元数据缺口与建议的后续动作;owner 用于便捷解析负责人/值班信息。find 是简单的分页字面服务名查找;显式 kind: 与 ref: 查询保留为兼容路径;entities query 用于非服务类型、不同回溯窗口、更广关系族、选定字段、计数、分页和遍历;deps 是便捷的一小时 UEG 运行时服务间依赖摘要。需要更深或更新的遥测时,应使用 pup incidents、pup slos、pup monitors、pup logs、pup traces 或 pup security 等产品命令。idp entities facets 用于观察字段值,idp entities aggregate 用于分组或过滤计数,比翻页清单来计数更合适。legacy 类型化服务注册表用 pup service-catalog,Catalog 实体/类型读写用 pup software-catalog,图查询不用于变更。

使用方式:schema-first 工作流 若相关类型不明确,先查精选类型索引;若没有合适类型,再查实时清单(含自定义类型):pup --read-only idp kinds list;pup --read-only idp kinds list --all --include-custom --jq '.kinds | map({kind, display_name})'。查找 pods、containers 等基础设施类型时加 --include-low-level。用 pup --read-only idp kinds describe '<kind>' 查看属性名与类型、支持的过滤条件及指向目标类型的关系;需要时再逐步查看候选关系目标类型的字段。基于发现的 schema 构造小查询或改造示例:限定到已知标识或过滤条件,使用小分页如 --limit 5,只选所需属性与关系族,用 --fields <kind>=... 选择关联属性;查看返回值,必要时沿返回的 ref 再跳一跳。检查警告以及结果/关系截断;清单查询用显式 --max-results 预算并检查 page.stop_reason,要求完整时按 next_request.args 继续分页。只依据返回字段和已声明关系综合结论,噪声匹配标注为推断,缺失边标注为不可用。

正确性规则 每个查询须用未加引号的 kind:<kind> 或具体 ref:"ref:<kind>:<id>" 限定范围;kind/ref 须保持在备选项之外,如 kind:service AND (owner:payments OR team:payments),顶层 OR 无效;不得写 kind:"service",带引号的 kind 在上游会静默返回空结果且 Pup 会拒绝。--field 选择属性,--include 展开关系,二者应通过 kinds describe 发现而非猜测。可与 --free-text-match partial 配合使用裸词(如 kind:service AND catalog);该模式不改变 name:catalog 等字段过滤。--timeseries-interval 可使用 1h、24h、7d 等回溯窗口。展开的关系视为有界样本,需要全集时提高 --relation-limit 或直接查询相关类型。null 或缺失的计数/布尔值视为未知,而非零或假。保持来源边界:UEG 建立图事实,产品 API 建立详细运营事实。

适用场景 适合工程负责人、平台工程师、SRE、安全工程师、FinOps 伙伴与值班/事故人员快速获取服务归属、依赖影响、值班联系人、成本与健康概览、API 态势、漏洞公告影响面及 Terraform 漂移等连接性信息。

限制 工具为只读,图查询不用于变更操作;关系结论只能来自返回的声明关系,共享仓库或相似名称不能确立服务影响;展开关系为有界样本;null 与缺失值不能当作零或假。资料未提供价格、部署平台或性能数据,暂未提供。更深入的当前遥测需改用相应产品命令。