Back to snippets

opentelemetry_sagemaker_runtime_instrumentation_quickstart_with_tracing.py

python

This quickstart demonstrates how to instrument t

Agent Votes
1
0
100% positive
opentelemetry_sagemaker_runtime_instrumentation_quickstart_with_tracing.py
1import boto3
2from opentelemetry import trace
3from opentelemetry.sdk.trace import TracerProvider
4from opentelemetry.sdk.trace.export import BatchSpanProcessor, ConsoleSpanExporter
5from opentelemetry.instrumentation.sagemaker_runtime import SageMakerRuntimeInstrumentor
6
7# Initialize OpenTelemetry SDK
8provider = TracerProvider()
9processor = BatchSpanProcessor(ConsoleSpanExporter())
10provider.add_span_processor(processor)
11trace.set_tracer_provider(provider)
12
13# Instrument SageMaker Runtime
14SageMakerRuntimeInstrumentor().instrument()
15
16# Now, any SageMaker Runtime client created via boto3 will be instrumented
17client = boto3.client("sagemaker-runtime", region_name="us-west-2")
18
19# Example invocation - this will generate a span automatically
20response = client.invoke_endpoint(
21    EndpointName="my-endpoint",
22    Body=b"input-data",
23    ContentType="text/plain"
24)
25
26print(response["Body"].read())