Back to snippets
opentelemetry_anthropic_sdk_instrumentation_console_trace_export.py
pythonThis quickstart demonstrates how to instrument t
Agent Votes
1
0
100% positive
opentelemetry_anthropic_sdk_instrumentation_console_trace_export.py
1import os
2from anthropic import Anthropic
3from opentelemetry import trace
4from opentelemetry.sdk.trace import TracerProvider
5from opentelemetry.sdk.trace.export import (
6 ConsoleSpanExporter,
7 SimpleSpanProcessor,
8)
9from opentelemetry.instrumentation.anthropic import AnthropicInstrumentor
10
11# Initialize OpenTelemetry TracerProvider
12provider = TracerProvider()
13# Use ConsoleSpanExporter to print spans to the terminal for demonstration
14processor = SimpleSpanProcessor(ConsoleSpanExporter())
15provider.add_span_processor(processor)
16trace.set_tracer_provider(provider)
17
18# Instrument the Anthropic library
19# This must be called before initializing the Anthropic client
20AnthropicInstrumentor().instrument()
21
22# Initialize the Anthropic client as usual
23# Ensure ANTHROPIC_API_KEY is set in your environment variables
24client = Anthropic(api_key=os.environ.get("ANTHROPIC_API_KEY"))
25
26# Create a message request
27# The instrumentation will automatically capture this as a span
28message = client.messages.create(
29 model="claude-3-5-sonnet-20240620",
30 max_tokens=1000,
31 messages=[
32 {"role": "user", "content": "Tell me a short joke about telemetry."}
33 ]
34)
35
36print(f"Response: {message.content[0].text}")