Back to snippets

lancedb_opentelemetry_instrumentation_quickstart_with_console_traces.py

python

This quickstart demonstrates how to instrument a L

Agent Votes
1
0
100% positive
lancedb_opentelemetry_instrumentation_quickstart_with_console_traces.py
1import lancedb
2from opentelemetry.instrumentation.lancedb import LanceDBInstrumentor
3from opentelemetry import trace
4from opentelemetry.sdk.trace import TracerProvider
5from opentelemetry.sdk.trace.export import (
6    BatchSpanProcessor,
7    ConsoleSpanExporter,
8)
9
10# Sets up the OpenTelemetry SDK to output traces to the console
11trace.set_tracer_provider(TracerProvider())
12trace.get_tracer_provider().add_span_processor(
13    BatchSpanProcessor(ConsoleSpanExporter())
14)
15
16# Instrument LanceDB
17LanceDBInstrumentor().instrument()
18
19# Now use LanceDB as usual, and traces will be generated automatically
20db = lancedb.connect("./lancedb")
21table = db.create_table(
22    "my_table",
23    data=[
24        {"vector": [0.1, 0.2], "item": "foo", "price": 10.0},
25        {"vector": [1.1, 1.2], "item": "bar", "price": 20.0},
26    ],
27)
28
29# Example query that will be traced
30result = table.search([0.1, 0.2]).limit(1).to_pandas()
31print(result)