query-metrics

3周前发布 6 0 0 0

axiomhq/skills#query-metrics

Skill 安装

多 Agent 安装
npx skills add https://github.com/axiomhq/skills --skill query-metrics

使用 npx skills 快速安装,支持将 Skill 添加到多个兼容的 AI Agent。

Skill 调研报告

axiomhq/skills#query-metrics

Skill 更新日志

版本列表
无版本号
docs:修复过时的 SRE 设置说明
无版本号
fix(query-metrics):在 metrics-spec 中恢复请求超时 无参数重写退化为裸 curl,丢失了 axiom-api 应用的 --connect-timeout/--max-time 保护,因此停滞的边缘可能无限期挂起调用方。重新应用相同的可通过环境变量覆盖的默认值(AXIOM_CONNECT_TIMEOUT=10,AXIOM_MAX_TIME=120)。 Co-authored-by: pi
无版本号
feat(query-metrics):通过 $__interval 实现自适应分辨率 为 metrics-query 添加 -w/--chart-width 和 --pixel-per-point,转发到请求体的 queryOptions 下,以便 metrics 服务可以根据查询的时间范围和目标图表宽度将 $__interval 系统参数解析为合适的步长。在 SKILL.md 中记录该工作流。 将仅存在于已安装 skill 副本中的自适应分辨率工作移植到仓库;保留仅仓库的指导(单引号和高基数警告)。 Co-authored-by: pi
无版本号
refactor(query-metrics):使 metrics-spec 无参数 MPL 规范是语言级别的,而非数据集特定的,并且 OPTIONS /v1/query/_mpl 端点在边缘上无需认证即可提供。移除必需的 参数,直接从固定的边缘 URL 获取规范,这样它也能以零配置、无需每次调用推理的方式回答一般 MPL 问题。 Co-authored-by: pi
无版本号
feat(metrics):加固 metrics 脚本并修正发现时间文档 axiom-api: - 添加 --connect-timeout(10s)和 --max-time(120s),可通过 AXIOM_CONNECT_TIMEOUT / AXIOM_MAX_TIME 覆盖,使请求快速失败而 不是挂起。 metrics-info: - 对数据集、指标和标签名称以及时间参数进行 URL 编码(jq @uri), 以便 OTel 名称和 RFC3339 偏移量在保留字符下仍能存活。 - 接受相对 --start/--end(now、now-[smhdw]);在客户端解析为 RFC3339 UTC,因为 info 端点只解析 RFC3339。 - 在 `describe` 中并发获取每个标签的值;收集、检查所有失败,然后 解析,这样失败的获取会中止而不是输出部分 JSON。 - 传播类型探测查询失败而不是吞掉它们,这样失败的查询永远不会 被误报为标签“不存在”。 query-metrics/SKILL.md: - 记录超时、单引号 MPL、限制 `group by` 基数以及 429 退避。 - 修正相对时间文档:metrics-info 只处理 now / now-[smhdw],而 metrics-query 将时间转发到服务器, 服务器接受更广泛的集合(例如 now-1y)。已针对 axiom 部署验证。 两个 metrics-info 副本(query-metrics、building-dashboards)保持同步。 Co-Authored-By: Claude Opus 4.8 (1M context)
无版本号
feat(dashboards):添加图表/仪表板组装脚本并收紧 skill 文档 引入 chart-add、dashboard-assemble、layout-pack 和 mpl-validate-chart,以端到端支持 building-dashboards 工作流。 围绕新工具重构 SKILL.md 和参考文档(chart-config、layout-recipes、 metrics-mpl、promql-to-mpl、design-playbook、grafana-migration)并移除冗余文字。将更新后的 metrics-info 辅助脚本同步到 query-metrics。 Co-authored-by: Claude Opus 4.7 (1M context)
无版本号
docs(dashboards):添加 Grafana 迁移指南和 PromQL→MPL 翻译规则 向 building-dashboards skill 添加两份新的参考文档以及安全使用它们的 支持机制: - reference/grafana-migration.md:规范规范投影(jq)、顶层 字段映射、可视化类型表、名称映射(Prom→OTel 重命名 规则)、缺失标签的反向标签发现以及检查清单。 - reference/promql-to-mpl.md:PromQL 选择器、 分组、rate、直方图、比率、布尔步进函数的机械翻译,以及 反向标签发现;包括“选择器值不在数据集中 的是别名——引用来源”规则。 Skill 级别新增内容: - 新增“计算所要求的内容,或用阻塞项推迟”规则,带有 Note 面板 推迟机制。 - 新增“必需的图表单位配置”矩阵,涵盖每种图表类型不对称的 单位/自定义单位要求。 - 收紧内联时间范围规则,以澄清每面板时间覆盖 仅限 UI(无 API 字段)——overrideDashboardTimeRange 在数据图表上会被静默 丢弃,在 Note 上会被拒绝。 - chart-config / chart-cookbook / design-playbook 更新以支持 新规则。 工具: - scripts/metrics/resolve-url 和 scripts/dashboard-validate 获得 AXIOM_URL_OVERRIDE 支持,与 axiom-api 保持一致,因此单个环境变量 即可将整个辅助工具集路由到非默认边缘(staging 所需)。 - resolve-url 切换到 /v2/datasets。 - dashboard-validate:对每种图表类型的单位/自定义单位进行更严格的检查。 模板: - org-usage-cost-control.json 更新为当前 schema。 - controlling-costs/templates/dashboard.json 小幅清理。 Co-authored-by: Claude Opus 4.7 (1M context)
无版本号
feat(metrics):在 query-metrics 中暴露指标类型/时间性/单位元数据 `metrics-info ... metrics` 列表在 `Accept: application/vnd.metrics-info.v2+json` 下已经返回每个指标的 `type`(Gauge | CounterMonotonic | CounterNonMonotonic | Histogram)、 `temporality`(Cumulative | Delta | null)和 `unit`(UCUM 字符串 | null),但该 skill 忽略了这三者。Agent 只能猜测查询形态,并 经常产生语义错误的查询(例如对累积单调计数器求平均,而不是先对其求 rate)。 在不添加任何新服务器契约的情况下,使元数据成为一等公民: scripts/metrics-info: - 添加 `metrics --by-type` 标志,按指标类型对列表进行分组。 - 添加 `metrics --type T` 标志(可重复,OR 语义),将列表过滤为特定类型。可与 --by-type 组合。 - 添加 `metrics info` 子命令,仅返回一个指标的 {type, temporality, unit} 块。在客户端从批量列表派生,因为没有按指标的元数据 端点(已验证:GET /metrics/ 返回 404)。当指标在给定时间范围的列表中不存在时, 以非零退出并给出清晰错误。 - 这三者都是纯客户端 jq 重塑;没有额外的服务器调用。 - 默认 `metrics` 调用不变(原始 v2 负载),因此 现有调用方和快照不受影响。 - 更新了头部文档、show_usage() 和 case 分派。 skills/query-metrics/SKILL.md: - 工作流第 3 步重命名为“发现并分类指标”,并指向 新的元数据部分。 - 新增“根据指标元数据选择查询形态”部分,包含每种 类型/时间性组合的经验规则。故意不 枚举具体 MPL 操作符名称——指向 `metrics-spec` 作为事实来源(最近观察到的 Option 规范漂移 支持保持 SKILL.md 与操作符无关)。 - “报告结果”指导:附加 `unit`,在单位不匹配时警告。 - 发现部分记录了新标志和子命令。 - find-metrics 部分促使 agent 在组合查询之前为每个 候选获取元数据。 skills/building-dashboards/scripts/metrics/metrics-info: - 从规范副本逐字节相同地重新 vendored。 已针对实时部署验证(axiom / homeassistant-metrics,23 个指标覆盖全部四种类型值): - 默认列表输出保持不变(除了非确定性的服务器 键排序,这本来就是如此); - --by-type 返回预期的 4 个桶; - --type 过滤并按文档与 --by-type 组合; - info 对已知指标返回正确的元数据块,并且 对未知指标以非零退出并给出“metric not found in listing”错误; - 所有 5 个既有子命令(`tags`、`tags values`、 `metrics tags`、`metrics tags values`、`find-metrics`) 返回与之前相同的形态和内容。 已知缺口:`Delta` 时间性在 SKILL.md 中基于 OTel 数据模型记录,但在验证数据集中未观察到; Cumulative 和 null 是唯一见到的值。 Co-authored-by: Claude
无版本号
docs(metrics):在 metrics-query 中支持并记录 MPL 参数值 向 scripts/metrics-query 添加 `-p name=value`(可重复),以便调用方可以 提供 MPL 参数值。该脚本将每个值原样转发到 POST /v1/query/_mpl 的 JSON 体中的 `params.param__` 下,应用 `param__` 前缀并去除 `$`。数据集提取器现在 跳过开头的 `param ...;` 声明,这样声明中的冒号 不会遮蔽 `dataset:metric` 分隔符。 在 query-metrics/SKILL.md 的新“传递参数值”小节中记录 API 契约、请求体形态和 CLI 调用。注意 可选参数(声明语法推迟到 `metrics-spec`)可以 省略,而必需参数如果缺失会引发 HTTP 400。在 building-dashboards/reference/metrics-mpl.md 中添加一个指向新 小节的单一指针(不重复内容)。将 metrics-query 逐字节相同地重新 vendored 到 building-dashboards/scripts/metrics/。 已针对实时 MPL 规范和实时部署验证: - 键命名和原样字面量转发与规范匹配(Query Parameters 部分); - JSON `params` 体形态端到端工作(参数化与字面量 控件返回相同的序列); - 必需参数缺失返回 HTTP 400 并带有清晰消息; - 示例中的类型名称与规范的小写 `string` 和大写 `Duration` / `Dataset` / `Regex` 约定匹配。 Co-authored-by: Claude
无版本号
添加 User-Agent 头以识别 skill 驱动的 agent 流量 这些 skill 的所有 Axiom API 调用现在发送 `axiom-skills/1.0 (agent)` 作为 User-Agent,使其在 axiom-traces-prod 中可与 MCP 流量(`axiom-mcp-server (hosted)`)一起被识别。 Co-Authored-By: Claude Sonnet 4.6
无版本号
从 main 移植改进 Signed-off-by: Heinz N. Gies
无版本号
还原 metrics
无版本号
将分支 'main' 合并到 feat/metrics-dashboard-support
无版本号
feat(building-dashboards):添加带 Accept 头 内容协商的 metrics 脚本 将 metrics 脚本(axiom-api、metrics-spec、metrics-query、 metrics-info) 从 query-metrics 移植到 building-dashboards,使用 AXIOM_ACCEPT 环境变量模式 进行内容协商: - axiom-api:Accept 头使用 ${AXIOM_ACCEPT:-application/json} - metrics-spec:发送 Accept: text/markdown - metrics-query:发送 Accept: application/json+metrics.v2(替代 ?format 查询参数) - metrics-info:为列表指标发送 Accept: application/vnd.metrics-info.v2+json Thread: https://ampcode.com/threads/T-019ce12e-9c87-74c6-9074-380907177017 Co-authored-by: Amp Amp-Thread-ID: https://ampcode.com/threads/T-019ce12e-9c87-74c6-9074-380907177017
无版本号
将分支 'main' 合并到 aisha/edge-auto-resolve
无版本号
还原 metrics
无版本号
将 region 替换为 edgeDeployment
无版本号
更新 skills/query-metrics/SKILL.md Co-authored-by: Heinz N. Gies
无版本号
fix(query-metrics):添加 MPL 语法参考以防止无效查询 Claude 生成了无效的 MPL 查询(未转义的点分标识符 如 host.name、使用已弃用的 filter 关键字以及无效的 && 操作符), 因为 SKILL.md 没有内联语法参考,完全 依赖先运行 metrics-spec。 添加: - MPL 快速参考部分,包含标识符转义规则和 filter 示例 - 强制在组合查询之前必须运行 metrics-spec 的 CRITICAL 说明 - 查询部分中的 filter 示例,展示反引号转义的标签名 - 明确说明 && 和 || 不是有效的 MPL Co-Authored-By: Claude Opus 4.6
无版本号
使用 edgeDeployment
无版本号
使用边缘 URL
无版本号
fix:更新 setup 用法以包含 metrics-spec 所需的 参数 metrics-spec 脚本需要两个参数( 和 ), 但 setup 用法文本只显示了一个参数,导致用户复制示例时 验证失败。 Thread: https://ampcode.com/threads/T-019cb7bc-7a65-773c-832c-24c636d73dea Co-authored-by: Amp Amp-Thread-ID: https://ampcode.com/threads/T-019cb7bc-7a65-773c-832c-24c636d73dea
无版本号
fix(query-metrics):修复 TOML 解析和 metrics-spec 端点路由 - 修复 axiom-api、 resolve-url 和 setup 脚本中 TOML 节头解析的正则 bug。将 /^\[deployments\./ 改为 /^[[:space:]]*\[deployments\./,以便匹配缩进的节头。 - 修复 metrics-spec:现在需要 dataset 参数以解析 正确的区域边缘 URL(OPTIONS /v1/query/_mpl 仅存在于 边缘端点)。委托给 axiom-api 以获取正确的认证头, 而不是使用裸 curl。 - 更新 SKILL.md 以反映新的 metrics-spec 用法。 Thread: https://ampcode.com/threads/T-019cb7aa-4e1e-74cf-939c-04686b7b58ac Co-authored-by: Amp Amp-Thread-ID: https://ampcode.com/threads/T-019cb7aa-4e1e-74cf-939c-04686b7b58ac
无版本号
添加数据集区域的自动检测和动态区域 URL 解析
无版本号
chore(query-metrics):在示例查询中为 id 包含反引号
无版本号
使 metrics skill 与现有 skills 保持一致

暂无评论

none
暂无评论...