Claude Agent SDK 的 OpenInformation 仪器
以 OpenTelemeth 为基础的仪器 克劳德探员SDK (单位:千美元)@anthropic-ai/claude-agent-sdk) (中文(简体) ). 生产 高级 财务报告和审定财务报表 托尔 横跨以下 开源语义公约。 。 。 .
安装
npm install @arizeai/openinference-instrumentation-claude-agent-sdk
使用量
自动装置(CommonJS)
import { NodeTracerProvider } from "@opentelemetry/sdk-trace-node";
import { ClaudeAgentSDKInstrumentation } from "@arizeai/openinference-instrumentation-claude-agent-sdk";
const provider = new NodeTracerProvider();
provider.register();
const instrumentation = new ClaudeAgentSDKInstrumentation();
instrumentation.setTracerProvider(provider);
人工仪器(ESM)
import * as ClaudeAgentSDK from "@anthropic-ai/claude-agent-sdk";
import { ClaudeAgentSDKInstrumentation } from "@arizeai/openinference-instrumentation-claude-agent-sdk";
const instrumentation = new ClaudeAgentSDKInstrumentation({
tracerProvider: provider,
});
const instrumentedClaudeAgentSDK = instrumentation.manuallyInstrument(ClaudeAgentSDK);
for await (const message of instrumentedClaudeAgentSDK.query({
prompt: "Write a haiku about telemetry.",
})) {
console.log(message);
}
带有微量配置( 任务敏感数据)
const instrumentation = new ClaudeAgentSDKInstrumentation({
tracerProvider: provider,
traceConfig: {
hideInputs: true,
hideOutputs: true,
},
});
装有仪器的API
V1号: query()
这个 query() 函数被包裹以生成:
- 一个 高级 整个查询周期的间距
- 托尔 每个工具调用( 通过钩子注射) 的孩子跨度
V2(不稳定): unstable_v2_prompt(), (中文(简体) ), unstable_v2_createSession(), (中文(简体) ), unstable_v2_resumeSession()
unstable_v2_prompt()生成一个 高级 间距- 会话方法产生倒数 高级 间距 托尔 儿童间距
扩展属性
AGENT 间距
| 属性 | 说明 |
|---|---|
openinference.span.kind | "AGENT" |
input.value | 提示文本 |
output.value | 结果文本 |
session.id | SDK 会话标识符 |
llm.model_name | 所用型号 |
llm.token_count.prompt | 输入符数 |
llm.token_count.completion | 输出符数 |
llm.token_count.total | 总计 |
llm.cost.total | 总费用(美元) |
TOOL 跨度
| 属性 | 说明 |
|---|---|
openinference.span.kind | "TOOL" |
tool.name | 工具名称 |
tool.parameters | 工具输入( JSON) |
input.value | 工具输入( JSON) |
output.value | 工具响应( JSON) |