DefaultServerRequestObservationConvention#outcome tests whether the response is null, and if so, returns HTTP_OUTCOME_UNKNOWN.
Otherwise, it gets the HttpOutcome for the HttpStatusCode for the HttpServletResponse#getStatus.
Somehow, HttpServletResponse#getStatus is coming through as zero in my application (I don't know what implementation of HttpServletResponse this is - I can't see the code of the platform I'm running on - the implementations I can find default to 200), which causes HttpStatusCode#valueOf to throw an
IllegalArgumentException: Status code '0' should be a three-digit positive integer
I propose that DefaultServerRequestObservationConvention#outcome should catch this exception and return HTTP_OUTCOME_UNKNOWN. I can make a pull request if you want.
DefaultServerRequestObservationConvention#outcome
tests whether the response is null, and if so, returnsHTTP_OUTCOME_UNKNOWN
. Otherwise, it gets theHttpOutcome
for theHttpStatusCode
for theHttpServletResponse#getStatus
. Somehow,HttpServletResponse#getStatus
is coming through as zero in my application (I don't know what implementation ofHttpServletResponse
this is - I can't see the code of the platform I'm running on - the implementations I can find default to 200), which causesHttpStatusCode#valueOf
to throw anI propose that
DefaultServerRequestObservationConvention#outcome
should catch this exception and returnHTTP_OUTCOME_UNKNOWN
. I can make a pull request if you want.