Description of problem: For standalone or hosted candlepin, the x-candlepin-request-uuid header is not being sent. It is being logged to the candlepin and access log. But it is not sent out via the http header, so the client never sees it, and never logs it. The requestUuid was meant to be able to connect client requests and logs and errors with server logs, but the client side doesn't get the info. It looks like the ServletResponse is trying to set the header using a header name pulled from the configuration, but the config lookup to get "header.name" from the config gets null, so the servlet response doesn't get the header set. Note the server does log the requestUuid and it does seem to be attached to the request mdc, but it attempts to set a header of "null: requestUuid" I suspect it's just a guice init issue. Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
Maybe server/src/main/java/org/candlepin/guice/CandlepinFilterModule.java isn't passing the LoggingFilterConfig to the right places? Seems like the values set there aren't known by ServletResponses
Works in master: curl -i -k -u admin:admin "https://localhost:8443/candlepin/status" HTTP/1.1 200 OK Server: Apache-Coyote/1.1 x-candlepin-request-uuid: 4f3dab4d-55d2-40e7-8306-c9c613b5c275 X-Version: 2.0.6-1 Content-Type: application/json Transfer-Encoding: chunked Date: Mon, 14 Sep 2015 14:33:49 GMT {"result":true,"version":"2.0.6","rulesVersion":"5.17","release":"1","standalone":true,"timeUTC":"2015-09-14T14:33:49.316+0000","managerCapabilities":["cores","ram","instance_multiplier","derived_product","cert_v3","guest_limit","vcpu","hypervisors_async","storage_band"],"rulesSource":"DEFAULT"}