You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Stefan Berger (Jira)" <ji...@apache.org> on 2020/11/10 17:44:00 UTC

[jira] [Created] (CXF-8367) Micrometer always reports OUTCOME=UNKNOWN

Stefan Berger created CXF-8367:
----------------------------------

             Summary: Micrometer always reports OUTCOME=UNKNOWN
                 Key: CXF-8367
                 URL: https://issues.apache.org/jira/browse/CXF-8367
             Project: CXF
          Issue Type: Bug
          Components: JAX-WS Runtime
    Affects Versions: 3.4.1
            Reporter: Stefan Berger


When I use the new MetricsFeature introduced in CXF-8213, the metrics look like this in positive cases:
{code:java}
cxf_server_requests_seconds_count{exception="None",faultCode="LOGICAL_RUNTIME_FAULT",method="POST",operation="operation1",outcome="UNKNOWN",status="UNKNOWN",uri="/myendpoint",} 1.0
cxf_server_requests_seconds_sum{exception="None",faultCode="LOGICAL_RUNTIME_FAULT",method="POST",operation="operation1",outcome="UNKNOWN",status="UNKNOWN",uri="/myendpoint",} 0.221690028
{code}
In this case, Message.RESPONSE_CODE is null when the MetricsMessageOutInterceptor is called.

In success cases, this Message attribute is set in the MessageSenderEndingInterceptor when AbstractHTTPDestination.getResponseCodeFromMessage() is called.

MetricsMessageOutInterceptor is called before that interceptor, that's why Message.RESPONSE_CODE is not set.

 

There are 2 solution options, as far as I understand:
 # Move the MetricsMessageOutInterceptor after the MessageSenderEndingInterceptor (the consequences of that are unknown to me)
 # Adjust the StandardTags.status() method to treat null values as 200



--
This message was sent by Atlassian Jira
(v8.3.4#803005)