@@ -424,19 +424,49 @@ def test_sync_query_session_pool_stop_removes_observable_metrics(metrics_setup):
424424 assert _points (metrics_setup , QUERY_SESSION_MIN ) == []
425425
426426
427- def test_sync_query_session_pool_uses_endpoint_as_default_pool_name (metrics_setup ):
427+ def test_query_session_pool_name_prefers_explicit_name ():
428+ from ydb .opentelemetry .metrics import query_session_pool_name
429+
430+ assert query_session_pool_name ("my-pool" , endpoint = "grpc://localhost:2136" , database = "/local" ) == "my-pool"
431+
432+
433+ def test_query_session_pool_name_uses_connection_string ():
434+ from ydb .opentelemetry .metrics import query_session_pool_name
435+
436+ assert (
437+ query_session_pool_name (None , endpoint = "grpc://localhost:2136" , database = "/local" )
438+ == "grpc://localhost:2136/local"
439+ )
440+
441+
442+ def test_query_session_pool_name_normalizes_database_without_leading_slash ():
443+ from ydb .opentelemetry .metrics import query_session_pool_name
444+
445+ assert (
446+ query_session_pool_name (None , endpoint = "grpc://localhost:2136" , database = "local" )
447+ == "grpc://localhost:2136/local"
448+ )
449+
450+
451+ def test_query_session_pool_name_falls_back_to_counter_when_nothing_known ():
452+ from ydb .opentelemetry .metrics import query_session_pool_name
453+
454+ assert query_session_pool_name (None , endpoint = None , database = None ).startswith ("query-session-pool-" )
455+
456+
457+ def test_sync_query_session_pool_uses_connection_string_as_default_pool_name (metrics_setup ):
428458 from tests .opentelemetry .conftest import FakeDriverConfig
429459 from ydb .opentelemetry .metrics import QUERY_SESSION_MAX
430460 from ydb .query .pool import QuerySessionPool
431461
432462 class FakeDriver :
433- _driver_config = FakeDriverConfig (endpoint = "grpc://localhost:2136" )
463+ _driver_config = FakeDriverConfig (endpoint = "grpc://localhost:2136" , database = "/local" )
434464
435465 QuerySessionPool (driver = FakeDriver (), size = 42 )
436466
437467 assert _single_point (metrics_setup , QUERY_SESSION_MAX ).value == 42
438468 assert _single_point (metrics_setup , QUERY_SESSION_MAX ).attributes == {
439- "ydb.query.session.pool.name" : "grpc://localhost:2136"
469+ "ydb.query.session.pool.name" : "grpc://localhost:2136/local "
440470 }
441471
442472
@@ -467,19 +497,19 @@ async def test_async_query_session_pool_stop_removes_observable_metrics(metrics_
467497
468498
469499@pytest .mark .asyncio
470- async def test_async_query_session_pool_uses_endpoint_as_default_pool_name (metrics_setup ):
500+ async def test_async_query_session_pool_uses_connection_string_as_default_pool_name (metrics_setup ):
471501 from tests .opentelemetry .conftest import FakeDriverConfig
472502 from ydb .aio .query .pool import QuerySessionPool
473503 from ydb .opentelemetry .metrics import QUERY_SESSION_MAX
474504
475505 class FakeDriver :
476- _driver_config = FakeDriverConfig (endpoint = "grpc://localhost:2136" )
506+ _driver_config = FakeDriverConfig (endpoint = "grpc://localhost:2136" , database = "/local" )
477507
478508 QuerySessionPool (driver = FakeDriver (), size = 24 )
479509
480510 assert _single_point (metrics_setup , QUERY_SESSION_MAX ).value == 24
481511 assert _single_point (metrics_setup , QUERY_SESSION_MAX ).attributes == {
482- "ydb.query.session.pool.name" : "grpc://localhost:2136"
512+ "ydb.query.session.pool.name" : "grpc://localhost:2136/local "
483513 }
484514
485515
0 commit comments