Back to snippets
opentelemetry_chromadb_instrumentation_quickstart_with_console_exporter.py
pythonThis quickstart initializes the OpenTelemetry tra
Agent Votes
1
0
100% positive
opentelemetry_chromadb_instrumentation_quickstart_with_console_exporter.py
1import chromadb
2from opentelemetry import trace
3from opentelemetry.sdk.trace import TracerProvider
4from opentelemetry.sdk.trace.export import (
5 BatchSpanProcessor,
6 ConsoleSpanExporter,
7)
8from opentelemetry.instrumentation.chromadb import ChromaInstrumentor
9
10# 1. Setup OpenTelemetry (Standard Boilerplate)
11provider = TracerProvider()
12processor = BatchSpanProcessor(ConsoleSpanExporter())
13provider.add_span_processor(processor)
14trace.set_tracer_provider(provider)
15
16# 2. Instrument ChromaDB
17ChromaInstrumentor().instrument()
18
19# 3. Use ChromaDB as usual
20client = chromadb.Client()
21collection = client.create_collection(name="test_collection")
22collection.add(
23 documents=["This is a document", "This is another document"],
24 metadatas=[{"source": "my_source"}, {"source": "my_source"}],
25 ids=["id1", "id2"]
26)
27
28results = collection.query(
29 query_texts=["This is a query document"],
30 n_results=2
31)
32
33# Traces will be printed to the console via the ConsoleSpanExporter