23
23
import opentelemetry .instrumentation .wsgi as otel_wsgi
24
24
from opentelemetry import trace as trace_api
25
25
from opentelemetry .instrumentation ._semconv import (
26
+ HTTP_DURATION_HISTOGRAM_BUCKETS_NEW ,
26
27
OTEL_SEMCONV_STABILITY_OPT_IN ,
27
28
_OpenTelemetrySemanticConventionStability ,
28
29
_server_active_requests_count_attrs_new ,
@@ -398,6 +399,7 @@ def test_wsgi_metrics(self):
398
399
self .assertTrue (number_data_point_seen and histogram_data_point_seen )
399
400
400
401
def test_wsgi_metrics_new_semconv (self ):
402
+ # pylint: disable=too-many-nested-blocks
401
403
app = otel_wsgi .OpenTelemetryMiddleware (error_wsgi_unhandled )
402
404
self .assertRaises (ValueError , app , self .environ , self .start_response )
403
405
self .assertRaises (ValueError , app , self .environ , self .start_response )
@@ -418,6 +420,11 @@ def test_wsgi_metrics_new_semconv(self):
418
420
for point in data_points :
419
421
if isinstance (point , HistogramDataPoint ):
420
422
self .assertEqual (point .count , 3 )
423
+ if metric .name == "http.server.request.duration" :
424
+ self .assertEqual (
425
+ point .explicit_bounds ,
426
+ HTTP_DURATION_HISTOGRAM_BUCKETS_NEW ,
427
+ )
421
428
histogram_data_point_seen = True
422
429
if isinstance (point , NumberDataPoint ):
423
430
number_data_point_seen = True
@@ -429,6 +436,7 @@ def test_wsgi_metrics_new_semconv(self):
429
436
self .assertTrue (number_data_point_seen and histogram_data_point_seen )
430
437
431
438
def test_wsgi_metrics_both_semconv (self ):
439
+ # pylint: disable=too-many-nested-blocks
432
440
app = otel_wsgi .OpenTelemetryMiddleware (error_wsgi_unhandled )
433
441
self .assertRaises (ValueError , app , self .environ , self .start_response )
434
442
metrics_list = self .memory_metrics_reader .get_metrics_data ()
@@ -456,6 +464,11 @@ def test_wsgi_metrics_both_semconv(self):
456
464
for point in data_points :
457
465
if isinstance (point , HistogramDataPoint ):
458
466
self .assertEqual (point .count , 1 )
467
+ if metric .name == "http.server.request.duration" :
468
+ self .assertEqual (
469
+ point .explicit_bounds ,
470
+ HTTP_DURATION_HISTOGRAM_BUCKETS_NEW ,
471
+ )
459
472
histogram_data_point_seen = True
460
473
if isinstance (point , NumberDataPoint ):
461
474
number_data_point_seen = True
0 commit comments