helidon-io / helidon

Java libraries for writing microservices
https://helidon.io
Apache License 2.0
3.51k stars 566 forks source link

Intermittent MpMetricOptionalTest.testGetMappedArithException #4981

Open romain-grecourt opened 2 years ago

romain-grecourt commented 2 years ago

org.eclipse.microprofile.metrics.test.optional.MpMetricOptionalTest.testGetMappedArithException

1 expectation failed.
Response body doesn't match expectation.
Expected: a string containing "base_REST_request_total{class=\"org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional\",method=\"getMappedArithException\",tier=\"integration\"} 1"
  Actual: # TYPE base_REST_request_total counter
# HELP base_REST_request_total The number of invocations and total response time of this RESTful resource method since the start of the server. The metric will not record the elapsed time nor count of a REST request if it resulted in an unmapped exception. Also tracks the highest recorded time duration within the previous completed full minute and lowest recorded time duration within the previous completed full minute.
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="deleteNoParam",tier="integration"} 1
# TYPE base_REST_request_elapsedTime_seconds gauge
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="deleteNoParam",tier="integration"} 0.002570217
# TYPE base_REST_request_maxTimeDuration_seconds gauge
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="deleteNoParam",tier="integration"} NaN
# TYPE base_REST_request_minTimeDuration_seconds gauge
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="deleteNoParam",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getAsync_jakarta.ws.rs.container.AsyncResponse",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getAsync_jakarta.ws.rs.container.AsyncResponse",tier="integration"} 5.014305121
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getAsync_jakarta.ws.rs.container.AsyncResponse",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getAsync_jakarta.ws.rs.container.AsyncResponse",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getContextParams_jakarta.ws.rs.core.HttpHeaders_jakarta.ws.rs.core.Request_jakarta.ws.rs.core.UriInfo_jakarta.ws.rs.container.ResourceContext_jakarta.ws.rs.ext.Providers_jakarta.ws.rs.core.Application_jakarta.ws.rs.core.SecurityContext_jakarta.ws.rs.core.Configuration",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getContextParams_jakarta.ws.rs.core.HttpHeaders_jakarta.ws.rs.core.Request_jakarta.ws.rs.core.UriInfo_jakarta.ws.rs.container.ResourceContext_jakarta.ws.rs.ext.Providers_jakarta.ws.rs.core.Application_jakarta.ws.rs.core.SecurityContext_jakarta.ws.rs.core.Configuration",tier="integration"} 0.013003852
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getContextParams_jakarta.ws.rs.core.HttpHeaders_jakarta.ws.rs.core.Request_jakarta.ws.rs.core.UriInfo_jakarta.ws.rs.container.ResourceContext_jakarta.ws.rs.ext.Providers_jakarta.ws.rs.core.Application_jakarta.ws.rs.core.SecurityContext_jakarta.ws.rs.core.Configuration",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getContextParams_jakarta.ws.rs.core.HttpHeaders_jakarta.ws.rs.core.Request_jakarta.ws.rs.core.UriInfo_jakarta.ws.rs.container.ResourceContext_jakarta.ws.rs.ext.Providers_jakarta.ws.rs.core.Application_jakarta.ws.rs.core.SecurityContext_jakarta.ws.rs.core.Configuration",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam1_java.util.List",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam1_java.util.List",tier="integration"} 0.00598239
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam1_java.util.List",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam1_java.util.List",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam2_java.util.List",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam2_java.util.List",tier="integration"} 0.002583894
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam2_java.util.List",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam2_java.util.List",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam3_java.util.List_java.util.List",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam3_java.util.List_java.util.List",tier="integration"} 0.005497787
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam3_java.util.List_java.util.List",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam3_java.util.List_java.util.List",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMappedArithException",tier="integration"} 0
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMappedArithException",tier="integration"} 0.0
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMappedArithException",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMappedArithException",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} 0.009129599
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam2_java.lang.String_java.util.List",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam2_java.lang.String_java.util.List",tier="integration"} 0.002514672
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam2_java.lang.String_java.util.List",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam2_java.lang.String_java.util.List",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} 0.009203917
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNameObject_org.eclipse.microprofile.metrics.test.optional.NameObject",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNameObject_org.eclipse.microprofile.metrics.test.optional.NameObject",tier="integration"} 0.004825115
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNameObject_org.eclipse.microprofile.metrics.test.optional.NameObject",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNameObject_org.eclipse.microprofile.metrics.test.optional.NameObject",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNoParam",tier="integration"} 2
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNoParam",tier="integration"} 0.082474075
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNoParam",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNoParam",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleBooleanParam_boolean",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleBooleanParam_boolean",tier="integration"} 0.003421065
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleBooleanParam_boolean",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleBooleanParam_boolean",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleDoubleParam_double",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleDoubleParam_double",tier="integration"} 0.002541937
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleDoubleParam_double",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleDoubleParam_double",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleIntParam_int",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleIntParam_int",tier="integration"} 0.003843587
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleIntParam_int",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleIntParam_int",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleLongParam_long",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleLongParam_long",tier="integration"} 0.003610166
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleLongParam_long",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleLongParam_long",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleStringParam_java.lang.String",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleStringParam_java.lang.String",tier="integration"} 0.003338299
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleStringParam_java.lang.String",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleStringParam_java.lang.String",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getUnmappedArithException",tier="integration"} 0
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getUnmappedArithException",tier="integration"} 0.0
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getUnmappedArithException",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getUnmappedArithException",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="headNoParam",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="headNoParam",tier="integration"} 0.002348552
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="headNoParam",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="headNoParam",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="optionsNoParam",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="optionsNoParam",tier="integration"} 0.00303536
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="optionsNoParam",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="optionsNoParam",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMappedArithException",tier="integration"} 0
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMappedArithException",tier="integration"} 0.0
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMappedArithException",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMappedArithException",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} 0.01091924
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam2_java.lang.String_java.util.List",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam2_java.lang.String_java.util.List",tier="integration"} 0.006425387
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam2_java.lang.String_java.util.List",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam2_java.lang.String_java.util.List",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} 0.015682491
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postNoParam",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postNoParam",tier="integration"} 0.010054508
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postNoParam",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postNoParam",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postUnmappedArithException",tier="integration"} 0
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postUnmappedArithException",tier="integration"} 0.0
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postUnmappedArithException",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postUnmappedArithException",tier="integration"} NaN

base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="putNoParam",tier="integration"} 1
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="putNoParam",tier="integration"} 0.007437521
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="putNoParam",tier="integration"} NaN
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="putNoParam",tier="integration"} NaN

# TYPE base_REST_request_unmappedException_total counter
# HELP base_REST_request_unmappedException_total The total number of unmapped exceptions that occur from this RESTful resouce method since the start of the server.
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="deleteNoParam",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getAsync_jakarta.ws.rs.container.AsyncResponse",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getContextParams_jakarta.ws.rs.core.HttpHeaders_jakarta.ws.rs.core.Request_jakarta.ws.rs.core.UriInfo_jakarta.ws.rs.container.ResourceContext_jakarta.ws.rs.ext.Providers_jakarta.ws.rs.core.Application_jakarta.ws.rs.core.SecurityContext_jakarta.ws.rs.core.Configuration",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam1_java.util.List",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam2_java.util.List",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam3_java.util.List_java.util.List",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMappedArithException",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam2_java.lang.String_java.util.List",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNameObject_org.eclipse.microprofile.metrics.test.optional.NameObject",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNoParam",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleBooleanParam_boolean",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleDoubleParam_double",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleIntParam_int",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleLongParam_long",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleStringParam_java.lang.String",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getUnmappedArithException",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="headNoParam",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="optionsNoParam",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMappedArithException",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam2_java.lang.String_java.util.List",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postNoParam",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postUnmappedArithException",tier="integration"} 0
base_REST_request_unmappedException_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="putNoParam",tier="integration"} 0
# TYPE vendor_executor_service_active_count gauge
# HELP vendor_executor_service_active_count Active count
vendor_executor_service_active_count{poolIndex="0",supplierCategory="security-thread-pool",supplierIndex="115",tier="integration"} 0
vendor_executor_service_active_count{poolIndex="0",supplierCategory="server",supplierIndex="57",tier="integration"} 0
# TYPE vendor_executor_service_completed_task_count gauge
# HELP vendor_executor_service_completed_task_count Completed task count
vendor_executor_service_completed_task_count{poolIndex="0",supplierCategory="security-thread-pool",supplierIndex="115",tier="integration"} 25
vendor_executor_service_completed_task_count{poolIndex="0",supplierCategory="server",supplierIndex="57",tier="integration"} 25
# TYPE vendor_executor_service_largest_pool_size gauge
# HELP vendor_executor_service_largest_pool_size Largest pool size
vendor_executor_service_largest_pool_size{poolIndex="0",supplierCategory="security-thread-pool",supplierIndex="115",tier="integration"} 10
vendor_executor_service_largest_pool_size{poolIndex="0",supplierCategory="server",supplierIndex="57",tier="integration"} 4
# TYPE vendor_executor_service_pool_size gauge
# HELP vendor_executor_service_pool_size Pool size
vendor_executor_service_pool_size{poolIndex="0",supplierCategory="security-thread-pool",supplierIndex="115",tier="integration"} 10
vendor_executor_service_pool_size{poolIndex="0",supplierCategory="server",supplierIndex="57",tier="integration"} 4
# TYPE vendor_executor_service_queue_remaining_capacity gauge
# HELP vendor_executor_service_queue_remaining_capacity Queue remaining capacity
vendor_executor_service_queue_remaining_capacity{poolIndex="0",supplierCategory="security-thread-pool",supplierIndex="115",tier="integration"} 10000
vendor_executor_service_queue_remaining_capacity{poolIndex="0",supplierCategory="server",supplierIndex="57",tier="integration"} 8192
# TYPE vendor_executor_service_queue_size gauge
# HELP vendor_executor_service_queue_size Queue size
vendor_executor_service_queue_size{poolIndex="0",supplierCategory="security-thread-pool",supplierIndex="115",tier="integration"} 0
vendor_executor_service_queue_size{poolIndex="0",supplierCategory="server",supplierIndex="57",tier="integration"} 0
# TYPE vendor_executor_service_task_count gauge
# HELP vendor_executor_service_task_count Task count
vendor_executor_service_task_count{poolIndex="0",supplierCategory="security-thread-pool",supplierIndex="115",tier="integration"} 25
vendor_executor_service_task_count{poolIndex="0",supplierCategory="server",supplierIndex="57",tier="integration"} 25
# TYPE vendor_requests_count_total counter
# HELP vendor_requests_count_total Each request (regardless of HTTP method) will increase this counter
vendor_requests_count_total{tier="integration"} 90
# TYPE vendor_requests_meter_total counter
# HELP vendor_requests_meter_total Each request will mark the meter to see overall throughput
vendor_requests_meter_total{tier="integration"} 90
# TYPE vendor_requests_meter_rate_per_second gauge
vendor_requests_meter_rate_per_second{tier="integration"} 0.19477348845489942
# TYPE vendor_requests_meter_one_min_rate_per_second gauge
vendor_requests_meter_one_min_rate_per_second{tier="integration"} 0.6139076299468752
# TYPE vendor_requests_meter_five_min_rate_per_second gauge
vendor_requests_meter_five_min_rate_per_second{tier="integration"} 0.16916185735672284
# TYPE vendor_requests_meter_fifteen_min_rate_per_second gauge
vendor_requests_meter_fifteen_min_rate_per_second{tier="integration"} 0.07704234410384056
tjquinno commented 2 years ago

The cause

As written, the metrics code uses response#whenSent to trigger updates to metrics that must occur after a request has been fully processes. This includes extended key performance indicator metrics and, importantly to this issue, the optional MP REST request metrics.

What can happen--and does when this test intermittently fails--is that the response reaches the test client and the test client resumes its work before the asynchronous response#whenSent work finishes. The test client retrieves the not-yet-updated metrics data and, finding an unexpected value, fails.

Because the test is in the MP metrics TCK we have no control over it. We cannot introduce a delay or retries.

Two possible solutions

Change how metrics updates these measurements

Because only MP (not SE) supports the REST request metrics, we could change the implementation so that the REST request metrics are updated in a Jakarta RESTful Web Service container response filter instead of in the response#whenSent code path. The filter would be guaranteed to run--and update the metrics--before the response reaches the client. The race condition exposed by the test failure could never occur.

Add a ServerResponse#beforeSent method

The current whenSent returns a Single<ServerResponse> that can fire after the response has reached the client. A hypothetical beforeSent method could allow the caller to intervene before the response leaves the server. Our metrics code could use such an enhancement to make sure it updates response-dependent metrics before clients receive responses.

tjquinno commented 2 years ago

After a quick chat with Tomas, it looks as if adding beforeSent is not a practical option.

Further, he correctly points out that using a Jakarta RESTful web services filter to update metrics would be certain to run before the response reaches the client, but might undercount the time taken to truly process the request, especially for a response with a large payload.

tjquinno commented 2 years ago

Another possibility would be to omit the optional metrics TCK tests from the pipeline and instead run them in a separate periodic job. If this intermittent failure is frequent enough that might be something to think about.

tjquinno commented 1 year ago

Additional failure (of a different metrics TCK test)

Error:  Tests run: 213, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 477.992 s <<< FAILURE! - in TestSuite
[21546](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21547)
Error:  org.eclipse.microprofile.metrics.test.optional.MpMetricOptionalTest.testSimpleRESTGetExplicit on testSimpleRESTGetExplicit(org.eclipse.microprofile.metrics.test.optional.MpMetricOptionalTest)  Time elapsed: 0.073 s  <<< FAILURE!
[21547](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21548)
java.lang.AssertionError: 
[21548](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21549)
1 expectation failed.
[21549](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21550)
Response body doesn't match expectation.
[21550](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21551)
Expected: a string containing "base_REST_request_total{class=\"org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional\",method=\"getNoParam\",tier=\"integration\"} 2"
[21551](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21552)
  Actual: # TYPE base_REST_request_total counter
[21552](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21553)
# HELP base_REST_request_total The number of invocations and total response time of this RESTful resource method since the start of the server. The metric will not record the elapsed time nor count of a REST request if it resulted in an unmapped exception. Also tracks the highest recorded time duration within the previous completed full minute and lowest recorded time duration within the previous completed full minute.
[21553](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21554)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMappedArithException",tier="integration"} 0
[21554](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21555)
# TYPE base_REST_request_elapsedTime_seconds gauge
[21555](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21556)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMappedArithException",tier="integration"} 0
[21556](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21557)
# TYPE base_REST_request_maxTimeDuration_seconds gauge
[21557](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21558)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMappedArithException",tier="integration"} NaN
[21558](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21559)
# TYPE base_REST_request_minTimeDuration_seconds gauge
[21559](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21560)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMappedArithException",tier="integration"} NaN
[21560](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21561)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleIntParam_int",tier="integration"} 0
[21561](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21562)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleIntParam_int",tier="integration"} 0
[21562](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21563)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleIntParam_int",tier="integration"} NaN
[21563](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21564)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleIntParam_int",tier="integration"} NaN
[21564](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21565)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleLongParam_long",tier="integration"} 0
[21565](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21566)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleLongParam_long",tier="integration"} 0
[21566](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21567)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleLongParam_long",tier="integration"} NaN
[21567](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21568)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleLongParam_long",tier="integration"} NaN
[21568](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21569)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} 0
[21569](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21570)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} 0
[21570](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21571)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} NaN
[21571](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21572)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} NaN
[21572](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21573)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleDoubleParam_double",tier="integration"} 0
[21573](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21574)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleDoubleParam_double",tier="integration"} 0
[21574](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21575)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleDoubleParam_double",tier="integration"} NaN
[21575](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21576)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleDoubleParam_double",tier="integration"} NaN
[21576](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21577)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getUnmappedArithException",tier="integration"} 0
[21577](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21578)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getUnmappedArithException",tier="integration"} 0
[21578](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21579)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getUnmappedArithException",tier="integration"} NaN
[21579](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21580)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getUnmappedArithException",tier="integration"} NaN
[21580](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21581)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} 0
[21581](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21582)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} 0
[21582](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21583)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} NaN
[21583](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21584)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} NaN
[21584](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21585)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMappedArithException",tier="integration"} 0
[21585](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21586)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMappedArithException",tier="integration"} 0
[21586](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21587)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMappedArithException",tier="integration"} NaN
[21587](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21588)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMappedArithException",tier="integration"} NaN
[21588](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21589)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam2_java.lang.String_java.util.List",tier="integration"} 0
[21589](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21590)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam2_java.lang.String_java.util.List",tier="integration"} 0
[21590](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21591)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam2_java.lang.String_java.util.List",tier="integration"} NaN
[21591](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21592)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getMultipleParam2_java.lang.String_java.util.List",tier="integration"} NaN
[21592](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21593)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="optionsNoParam",tier="integration"} 0
[21593](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21594)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="optionsNoParam",tier="integration"} 0
[21594](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21595)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="optionsNoParam",tier="integration"} NaN
[21595](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21596)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="optionsNoParam",tier="integration"} NaN
[21596](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21597)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postNoParam",tier="integration"} 0
[21597](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21598)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postNoParam",tier="integration"} 0
[21598](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21599)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postNoParam",tier="integration"} NaN
[21599](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21600)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postNoParam",tier="integration"} NaN
[21600](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21601)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getContextParams_jakarta.ws.rs.core.HttpHeaders_jakarta.ws.rs.core.Request_jakarta.ws.rs.core.UriInfo_jakarta.ws.rs.container.ResourceContext_jakarta.ws.rs.ext.Providers_jakarta.ws.rs.core.Application_jakarta.ws.rs.core.SecurityContext_jakarta.ws.rs.core.Configuration",tier="integration"} 0
[21601](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21602)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getContextParams_jakarta.ws.rs.core.HttpHeaders_jakarta.ws.rs.core.Request_jakarta.ws.rs.core.UriInfo_jakarta.ws.rs.container.ResourceContext_jakarta.ws.rs.ext.Providers_jakarta.ws.rs.core.Application_jakarta.ws.rs.core.SecurityContext_jakarta.ws.rs.core.Configuration",tier="integration"} 0
[21602](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21603)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getContextParams_jakarta.ws.rs.core.HttpHeaders_jakarta.ws.rs.core.Request_jakarta.ws.rs.core.UriInfo_jakarta.ws.rs.container.ResourceContext_jakarta.ws.rs.ext.Providers_jakarta.ws.rs.core.Application_jakarta.ws.rs.core.SecurityContext_jakarta.ws.rs.core.Configuration",tier="integration"} NaN
[21603](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21604)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getContextParams_jakarta.ws.rs.core.HttpHeaders_jakarta.ws.rs.core.Request_jakarta.ws.rs.core.UriInfo_jakarta.ws.rs.container.ResourceContext_jakarta.ws.rs.ext.Providers_jakarta.ws.rs.core.Application_jakarta.ws.rs.core.SecurityContext_jakarta.ws.rs.core.Configuration",tier="integration"} NaN
[21604](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21605)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="deleteNoParam",tier="integration"} 0
[21605](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21606)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="deleteNoParam",tier="integration"} 0
[21606](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21607)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="deleteNoParam",tier="integration"} NaN
[21607](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21608)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="deleteNoParam",tier="integration"} NaN
[21608](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21609)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="putNoParam",tier="integration"} 0
[21609](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21610)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="putNoParam",tier="integration"} 0
[21610](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21611)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="putNoParam",tier="integration"} NaN
[21611](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21612)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="putNoParam",tier="integration"} NaN
[21612](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21613)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNoParam",tier="integration"} 1
[21613](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21614)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNoParam",tier="integration"} 0
[21614](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21615)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNoParam",tier="integration"} NaN
[21615](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21616)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNoParam",tier="integration"} NaN
[21616](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21617)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam1_java.util.List",tier="integration"} 0
[21617](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21618)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam1_java.util.List",tier="integration"} 0
[21618](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21619)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam1_java.util.List",tier="integration"} NaN
[21619](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21620)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam1_java.util.List",tier="integration"} NaN
[21620](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21621)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam2_java.util.List",tier="integration"} 0
[21621](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21622)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam2_java.util.List",tier="integration"} 0
[21622](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21623)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam2_java.util.List",tier="integration"} NaN
[21623](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21624)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam2_java.util.List",tier="integration"} NaN
[21624](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21625)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam3_java.util.List_java.util.List",tier="integration"} 0
[21625](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21626)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam3_java.util.List_java.util.List",tier="integration"} 0
[21626](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21627)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam3_java.util.List_java.util.List",tier="integration"} NaN
[21627](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21628)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getListParam3_java.util.List_java.util.List",tier="integration"} NaN
[21628](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21629)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getAsync_jakarta.ws.rs.container.AsyncResponse",tier="integration"} 0
[21629](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21630)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getAsync_jakarta.ws.rs.container.AsyncResponse",tier="integration"} 0
[21630](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21631)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getAsync_jakarta.ws.rs.container.AsyncResponse",tier="integration"} NaN
[21631](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21632)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getAsync_jakarta.ws.rs.container.AsyncResponse",tier="integration"} NaN
[21632](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21633)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleStringParam_java.lang.String",tier="integration"} 0
[21633](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21634)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleStringParam_java.lang.String",tier="integration"} 0
[21634](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21635)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleStringParam_java.lang.String",tier="integration"} NaN
[21635](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21636)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleStringParam_java.lang.String",tier="integration"} NaN
[21636](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21637)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postUnmappedArithException",tier="integration"} 0
[21637](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21638)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postUnmappedArithException",tier="integration"} 0
[21638](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21639)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postUnmappedArithException",tier="integration"} NaN
[21639](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21640)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postUnmappedArithException",tier="integration"} NaN
[21640](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21641)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="headNoParam",tier="integration"} 0
[21641](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21642)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="headNoParam",tier="integration"} 0
[21642](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21643)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="headNoParam",tier="integration"} NaN
[21643](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21644)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="headNoParam",tier="integration"} NaN
[21644](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21645)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNameObject_org.eclipse.microprofile.metrics.test.optional.NameObject",tier="integration"} 0
[21645](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21646)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNameObject_org.eclipse.microprofile.metrics.test.optional.NameObject",tier="integration"} 0
[21646](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21647)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNameObject_org.eclipse.microprofile.metrics.test.optional.NameObject",tier="integration"} NaN
[21647](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21648)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getNameObject_org.eclipse.microprofile.metrics.test.optional.NameObject",tier="integration"} NaN
[21648](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21649)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} 0
[21649](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21650)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} 0
[21650](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21651)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} NaN
[21651](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21652)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam1_boolean_int_double_java.lang.String_long",tier="integration"} NaN
[21652](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21653)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam2_java.lang.String_java.util.List",tier="integration"} 0
[21653](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21654)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam2_java.lang.String_java.util.List",tier="integration"} 0
[21654](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21655)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam2_java.lang.String_java.util.List",tier="integration"} NaN
[21655](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21656)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam2_java.lang.String_java.util.List",tier="integration"} NaN
[21656](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21657)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} 0
[21657](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21658)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} 0
[21658](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21659)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} NaN
[21659](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21660)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="postMultipleParam4_java.util.Set_java.util.SortedSet",tier="integration"} NaN
[21660](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21661)
base_REST_request_total{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleBooleanParam_boolean",tier="integration"} 0
[21661](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21662)
base_REST_request_elapsedTime_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleBooleanParam_boolean",tier="integration"} 0
[21662](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21663)
base_REST_request_maxTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleBooleanParam_boolean",tier="integration"} NaN
[21663](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21664)
base_REST_request_minTimeDuration_seconds{class="org.eclipse.microprofile.metrics.test.optional.MetricAppBeanOptional",method="getSingleBooleanParam_boolean",tier="integration"} NaN
[21664](https://github.com/helidon-io/helidon/actions/runs/3689421918/jobs/6245344726#step:4:21665)