AI 编码代理器的开放远程技术
供应商中性技能,教AI编码代理如何与"OpenTeleomet"(OpenTeleometry)进行仪器应用. 涵盖跨语言的SDK设置,语义常规,收集管,和OTTL转换. 使用任何OTLP相容后端.
技能是可扩展代理能力、随 代理技能 格式. 维护者 达什 0。 。 。 .
[TIP] 这些技能通过下列方法得到了提高: 泰塞尔。 。 。 . 试试你自己的经纪人技能,这是值得的.
安装
安装方式 技能 国 际 (普遍性,与任何 代理技能- 兼容工具 :
npx skills add https://github.com/dash0hq/agent-skills --all
# or a single skill:
npx skills add https://github.com/dash0hq/agent-skills --skill otel-semantic-conventions
工具专用安装指令(Claude Code, Cursor, Tessl等),参见 总部。 。 。 .
通过 npm 程序控制 (对于嵌入技能而不是将其安装到工具的代理运行时间):
npm install @dash0/agent-skills
包裹运送 skills/ 目录树逐字——无代码。 在运行时解析技能位置, 例如 :
const { createRequire } = require("node:module");
const path = require("node:path");
const pkgJson = createRequire(__filename).resolve("@dash0/agent-skills/package.json");
const skillDir = path.join(path.dirname(pkgJson), "skills", "otel-instrumentation");
如何使用
一旦安装,技能自动加载,当任务匹配时,代理员会接取.
实例:
Add OpenTelemetry instrumentation to my app
My traces are broken — spans show up as separate roots instead of a connected trace
Set up an OpenTelemetry Collector pipeline that forwards to Dash0
Write an OTTL expression to redact credit card numbers from log bodies
Ensure that my HTTP server spans have the correct attributes
Help me fix high-cardinality metrics that are blowing up my costs
为何供应商中立的开路测量
这些技能是围绕OpenTeleometry规格构建的,而不是任何单一后端. 输出为标准OTLP遥测,任何OpenTeleometry相容后端都可以摄取.
销售商在可观察性上的锁定来自专有物剂和属性计划. 此寄存器中的技能既避免:它们引导代理使用 OpenTelemetery SDKs 和 OpenTelemetery 收集器, 并跟踪上游 语义公约 用于属性、跨度和度量命名.
语义公约为何重要
开元语义常规 定义用于遥测属性的标准化名称、类型和语义、计量名称、横幅名称和状态代码. 追随它们,是您为可观察性品质所能做的单一最高杠杆.
当文书遵循语义公约时:
- 自动仪器库,仪表板,以及提醒规则在箱外工作.
- 服务地图,操作分组和误差跟踪在没有人工配置的情况下得出正确结果.
- 跨服务查询返回一致的结果,因为每个服务都说相同的属性语言.
当公约缺失或不一致时,这些能力悄悄地退化:没有出错,只是数据不完整,地形观点破碎,查询零散.
仪器分数
这些技能方面的指导符合 仪器分数 规格,一种不偏重任何供应商的指南,以量化一项服务遵循OpenTeleometry最佳做法的情况. 该分类界定了跨资源、跨度、度量和日志的撞击加权规则. 遵循此指导帮助您获得更高的服务分数,这意味着下游的可观察性效果更好.
现有技能
电解器
实施高质量,成本高效的开放遥测专家指导. 覆盖多语言的后端和浏览器仪器.
使用时 :
- 为新的服务建立可观察性
- 在应用程序中添加痕迹、度量或日志
- 调试仪器问题
- 优化遥测成本(心电图、取样)
- 连接浏览器跟踪到后端跟踪
规则涵盖:
- 遥测(信号概览和相关性)
- 资源(服务身份、环境、Kubernetes属性)
- 计量(仪器类型、命名、单位、主要)
- 日志(结构记录、严重程度、痕量关联)
- 节点.js(自动仪器、环境变量、Kubernetes)
- Go( SDK 设置、 仪器库、 上下文传播)
- Python (自动仪器,弗拉斯克, Django, FastAPI)
- Java (javaagent, Spring Boot, JVM 系统属性)
- .NET(自动仪器、ASP.NET核心、活动来源)
- Ruby (SDK设置, 铁路, Sinatra)
- PHP (自动仪器, Laravel, Symfony)
- 浏览器(OpenTeleometry JS, Dash0 SDK, 服务器相关性)
- Next.js (App路由器,全高架仪表,普通取取取器)
平台:
- 节点.js (Express, fastify, NestJS等)
- 上(网/http、人参、回声、纤维等)
- 活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活活
- Java (Spring Boot, Servlet, JAX- RS等)
- .NET(ASP.NET Core,实体框架等)
- Ruby (Rails, Sinatra等) (英语)
- PHP (Laravel, Symfony等) (英语)
- 浏览器(React, Vue, Next.js等)
- 任何 OTLP 兼容后端
电解-语义-常规
关于选择、应用和审查OpenTeleometry语义公约的专家指南:用于遥测属性的标准化名称、类型和语义、跨名和地位代码.
使用时 :
- 选择跨度、度量或日志的属性
- 命名跨度或选择跨度类型
- 绘制 HTTP 状态代码以覆盖状态
- 审查语义公约遵守情况的遥测
- 从旧属性名称移入新属性名称
- 理解 Dash0 衍生属性
规则涵盖:
- 属性(注册、选择、放置、按域划分的共同属性、命名空间)
- Spans (命名模式, 跨度类型, 状态代码映射)
- 版本(稳定水平、迁移、Dash0语义公约升级)
- Dash0 (衍生属性, 特征依赖性)
收集器
配置和部署OpenTeleometer收集器以接收、处理和输出遥测的专家指导. 覆盖管道配置,部署模式,并转发到任何OTLP相容后端.
使用时 :
- 建立开放的远程采集管道
- 配置接收器、处理器或出口商
- 向库伯涅特或多克部署收集器
- 向任何OTLP兼容后端转发遥测
- 培养收集器的性能(记忆、分批、排队)
规则涵盖:
- 接收器(OTLP、Prometheus、文件日志、主机计量)
- 出口者(OTLP/gRPC、调试、认证、重试、排队)
- 处理器(记忆限制器、批量、资源检测、Kubernetes属性、订购)
- 管道(服务科、每个信号配置、连接器、风扇)
- 部署(特工对网关、守护程序、部署、多克编曲、健康检查)
缩写
为OpenTeleometer Collectioner的变换和过滤处理器编写并调试OpenTeleometer变换语言(OTTL)表达式的专家指导.
使用时 :
- 写入 OTTL 表达式以转换、过滤或丰富遥测
- 从跨度、度量或日志校正敏感数据
- 在收藏器中配置转换或过滤处理器
- 调试OTTL 语法或运行时间出错
- 优化收集器管道性能
能力:
- 转换(修改属性和值)
- 过滤器( 丢弃不想要的遥测)
- 编辑(隐藏敏感信息)
- Enrich( 添加背景元数据)
- 转换(更改数据类型和格式)
背景情况 : 资源、范围、跨度、跨度、度量、数据点、日志
用 Claude 代码自动化
您可以配置 克劳德代码 在交互式会议和无头的CI/CD管道中自动应用这些技能.
通过CLAUDE.md的项目指示
添加一个 CLAUDE.md 将文件存到您的寄存器根,并带有向 Claude Code 报告何时使用技能的指令.
Claude Code 在每次会话开始时加载此文件 .
# Observability
This project uses OpenTelemetry for observability.
When adding or modifying instrumentation, follow the guidance from the installed `dash0hq/agent-skills` skills.
When working on application code or deployment specs, use the `otel-instrumentation` skill.
When working on Collector configuration, use the `otel-collector` skill.
When choosing or reviewing telemetry attributes, use the `otel-semantic-conventions` skill.
When writing or debugging OTTL expressions, use the `otel-ottl` skill.
CI/CD 无头模式
使用 claude -p 运行克劳德代码 不互动在管道.
这使自动仪器审查、技术指导代码生成和公关检查成为可能.
# Review instrumentation quality on a pull request
claude -p "Review the OpenTelemetry instrumentation changes in this PR. \
Check for missing context propagation, incorrect span status handling, \
and semantic convention violations." \
--allowedTools "Read,Grep,Glob"
GitHub 动作示例
name: Instrumentation review
on: [pull_request]
jobs:
review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install skills
run: npx skills add dash0hq/agent-skills
- name: Review instrumentation
run: |
claude -p "Review the OpenTelemetry instrumentation in this PR \
for correctness and semantic convention compliance. \
Post your findings as a summary." \
--allowedTools "Read,Grep,Glob" \
--output-format json > review.json
- name: Comment on PR
run: |
findings=$(jq -r '.result' review.json)
gh pr comment "$PR_NUMBER" --body "## Instrumentation review"$'\n\n'"$findings"
env:
PR_NUMBER: ${{ github.event.pull_request.number }}
技能结构
每种技能包括:
SKILL.md- 对代理人的指示rules/- 重点指导文件README.md- 人可读文件
捐款
见 捐款额 用于编写规则和在当地运行evals以判断技能是否起作用.