Skip to content

Commit eb89d20

Browse files
committed
fix opentelemetry qdrant compatibility with 1.16+
1 parent 0fc7340 commit eb89d20

File tree

7 files changed

+208
-209
lines changed

7 files changed

+208
-209
lines changed

packages/opentelemetry-instrumentation-qdrant/opentelemetry/instrumentation/qdrant/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020

2121
logger = logging.getLogger(__name__)
2222

23-
_instruments = ("qdrant-client >= 1.7",)
23+
_instruments = ("qdrant-client >= 1.16",)
2424

2525
p = Path(__file__).with_name("qdrant_client_methods.json")
2626
with open(p, "r") as f:

packages/opentelemetry-instrumentation-qdrant/opentelemetry/instrumentation/qdrant/async_qdrant_client_methods.json

Lines changed: 26 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -14,31 +14,11 @@
1414
"method": "upload_points",
1515
"span_name": "qdrant.upload_points"
1616
},
17-
{
18-
"object": "AsyncQdrantClient",
19-
"method": "upload_records",
20-
"span_name": "qdrant.upload_records"
21-
},
2217
{
2318
"object": "AsyncQdrantClient",
2419
"method": "upload_collection",
2520
"span_name": "qdrant.upload_collection"
2621
},
27-
{
28-
"object": "AsyncQdrantClient",
29-
"method": "search",
30-
"span_name": "qdrant.search"
31-
},
32-
{
33-
"object": "AsyncQdrantClient",
34-
"method": "search_batch",
35-
"span_name": "qdrant.search_batch"
36-
},
37-
{
38-
"object": "AsyncQdrantClient",
39-
"method": "search_groups",
40-
"span_name": "qdrant.search_groups"
41-
},
4222
{
4323
"object": "AsyncQdrantClient",
4424
"method": "query",
@@ -51,33 +31,28 @@
5131
},
5232
{
5333
"object": "AsyncQdrantClient",
54-
"method": "discover",
55-
"span_name": "qdrant.discover"
56-
},
57-
{
58-
"object": "AsyncQdrantClient",
59-
"method": "discover_batch",
60-
"span_name": "qdrant.discover_batch"
34+
"method": "query_points",
35+
"span_name": "qdrant.query_points"
6136
},
6237
{
6338
"object": "AsyncQdrantClient",
64-
"method": "recommend",
65-
"span_name": "qdrant.recommend"
39+
"method": "query_batch_points",
40+
"span_name": "qdrant.query_batch_points"
6641
},
6742
{
6843
"object": "AsyncQdrantClient",
69-
"method": "recommend_batch",
70-
"span_name": "qdrant.recommend_batch"
44+
"method": "query_points_groups",
45+
"span_name": "qdrant.query_points_groups"
7146
},
7247
{
7348
"object": "AsyncQdrantClient",
74-
"method": "recommend_groups",
75-
"span_name": "qdrant.recommend_groups"
49+
"method": "scroll",
50+
"span_name": "qdrant.scroll"
7651
},
7752
{
7853
"object": "AsyncQdrantClient",
79-
"method": "scroll",
80-
"span_name": "qdrant.scroll"
54+
"method": "retrieve",
55+
"span_name": "qdrant.retrieve"
8156
},
8257
{
8358
"object": "AsyncQdrantClient",
@@ -113,5 +88,20 @@
11388
"object": "AsyncQdrantClient",
11489
"method": "batch_update_points",
11590
"span_name": "qdrant.batch_update_points"
91+
},
92+
{
93+
"object": "AsyncQdrantClient",
94+
"method": "facet",
95+
"span_name": "qdrant.facet"
96+
},
97+
{
98+
"object": "AsyncQdrantClient",
99+
"method": "search_matrix_offsets",
100+
"span_name": "qdrant.search_matrix_offsets"
101+
},
102+
{
103+
"object": "AsyncQdrantClient",
104+
"method": "search_matrix_pairs",
105+
"span_name": "qdrant.search_matrix_pairs"
116106
}
117-
]
107+
]

packages/opentelemetry-instrumentation-qdrant/opentelemetry/instrumentation/qdrant/qdrant_client_methods.json

Lines changed: 26 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -14,31 +14,11 @@
1414
"method": "upload_points",
1515
"span_name": "qdrant.upload_points"
1616
},
17-
{
18-
"object": "QdrantClient",
19-
"method": "upload_records",
20-
"span_name": "qdrant.upload_records"
21-
},
2217
{
2318
"object": "QdrantClient",
2419
"method": "upload_collection",
2520
"span_name": "qdrant.upload_collection"
2621
},
27-
{
28-
"object": "QdrantClient",
29-
"method": "search",
30-
"span_name": "qdrant.search"
31-
},
32-
{
33-
"object": "QdrantClient",
34-
"method": "search_batch",
35-
"span_name": "qdrant.search_batch"
36-
},
37-
{
38-
"object": "QdrantClient",
39-
"method": "search_groups",
40-
"span_name": "qdrant.search_groups"
41-
},
4222
{
4323
"object": "QdrantClient",
4424
"method": "query",
@@ -51,33 +31,28 @@
5131
},
5232
{
5333
"object": "QdrantClient",
54-
"method": "discover",
55-
"span_name": "qdrant.discover"
56-
},
57-
{
58-
"object": "QdrantClient",
59-
"method": "discover_batch",
60-
"span_name": "qdrant.discover_batch"
34+
"method": "query_points",
35+
"span_name": "qdrant.query_points"
6136
},
6237
{
6338
"object": "QdrantClient",
64-
"method": "recommend",
65-
"span_name": "qdrant.recommend"
39+
"method": "query_batch_points",
40+
"span_name": "qdrant.query_batch_points"
6641
},
6742
{
6843
"object": "QdrantClient",
69-
"method": "recommend_batch",
70-
"span_name": "qdrant.recommend_batch"
44+
"method": "query_points_groups",
45+
"span_name": "qdrant.query_points_groups"
7146
},
7247
{
7348
"object": "QdrantClient",
74-
"method": "recommend_groups",
75-
"span_name": "qdrant.recommend_groups"
49+
"method": "scroll",
50+
"span_name": "qdrant.scroll"
7651
},
7752
{
7853
"object": "QdrantClient",
79-
"method": "scroll",
80-
"span_name": "qdrant.scroll"
54+
"method": "retrieve",
55+
"span_name": "qdrant.retrieve"
8156
},
8257
{
8358
"object": "QdrantClient",
@@ -113,5 +88,20 @@
11388
"object": "QdrantClient",
11489
"method": "batch_update_points",
11590
"span_name": "qdrant.batch_update_points"
91+
},
92+
{
93+
"object": "QdrantClient",
94+
"method": "facet",
95+
"span_name": "qdrant.facet"
96+
},
97+
{
98+
"object": "QdrantClient",
99+
"method": "search_matrix_offsets",
100+
"span_name": "qdrant.search_matrix_offsets"
101+
},
102+
{
103+
"object": "QdrantClient",
104+
"method": "search_matrix_pairs",
105+
"span_name": "qdrant.search_matrix_pairs"
116106
}
117-
]
107+
]

packages/opentelemetry-instrumentation-qdrant/opentelemetry/instrumentation/qdrant/wrapper.py

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -53,21 +53,16 @@ def _wrap(tracer, to_wrap, wrapped, instance, args, kwargs):
5353
_set_upload_attributes(span, args, kwargs, method, "documents")
5454
elif method == "upload_points":
5555
_set_upload_attributes(span, args, kwargs, method, "points")
56-
elif method == "upload_records":
57-
_set_upload_attributes(span, args, kwargs, method, "records")
5856
elif method == "upload_collection":
5957
_set_upload_attributes(span, args, kwargs, method, "vectors")
6058
elif method in [
61-
"search",
62-
"search_groups",
6359
"query",
64-
"discover",
65-
"recommend",
66-
"recommend_groups",
60+
"query_points",
61+
"query_points_groups",
6762
]:
68-
_set_search_attributes(span, args, kwargs)
69-
elif method in ["search_batch", "recommend_batch", "discover_batch"]:
70-
_set_batch_search_attributes(span, args, kwargs, method)
63+
_set_query_attributes(span, args, kwargs)
64+
elif method in ["query_batch", "query_batch_points"]:
65+
_set_batch_query_attributes(span, args, kwargs, method)
7166

7267
response = wrapped(*args, **kwargs)
7368
if response:
@@ -103,12 +98,12 @@ def _set_upload_attributes(span, args, kwargs, method_name, param_name):
10398

10499

105100
@dont_throw
106-
def _set_search_attributes(span, args, kwargs):
101+
def _set_query_attributes(span, args, kwargs):
107102
limit = kwargs.get("limit") or 10
108103
_set_span_attribute(span, SpanAttributes.VECTOR_DB_QUERY_TOP_K, limit)
109104

110105

111106
@dont_throw
112-
def _set_batch_search_attributes(span, args, kwargs, method):
107+
def _set_batch_query_attributes(span, args, kwargs, method):
113108
requests = kwargs.get("requests") or []
114109
_set_span_attribute(span, f"qdrant.{method}.requests_count", len(requests))

0 commit comments

Comments
 (0)