addisonj opened a new issue #2161: When httpServerEnabled=true, Prometheus 
reports doesn't sent content-type
URL: https://github.com/apache/bookkeeper/issues/2161
 
 
   **BUG REPORT**
   
   ***Describe the bug***
   
   When running with `httpServerEnabled` set to true, `/metrics` endpoint stops 
sending a `content-type` header (this uses the `MetricsService`, see code here 
https://github.com/apache/bookkeeper/blob/28dee8464764b0edceeb31ce24424f0947b5789b/bookkeeper-server/src/main/java/org/apache/bookkeeper/server/http/service/MetricsService.java).
   With the `httpServerEnabled=false` the `PrometheusServlet` is used, and it 
does set a content-type header 
(https://github.com/apache/bookkeeper/blob/28dee8464764b0edceeb31ce24424f0947b5789b/bookkeeper-stats-providers/prometheus-metrics-provider/src/main/java/org/apache/bookkeeper/stats/prometheus/PrometheusServlet.java#L44)
   
    The content-type header is expected by some prometheus tools to 
differentiate between plaintext and protobuf formatted metrics and no 
content-type is considered an error.
   
   ***To Reproduce***
   
   Steps to reproduce the behavior:
   1. Set `httpServerEnabled=false` and enable prometheus reporter
   2. run `curl localhost:8000/metrics` and notice that a content-type header 
is set
   3. Set `httpServerEnabled=true` and enable prometheus reporter
   4. run `curl localhost:8000/metrics -v` notice that there is no content-type 
header set
   
   ***Expected behavior***
   
   I expect a content-type header
   
   It seems like the statsProvider interface should have a method for allowing 
to set headers on the response. Default to a given content type might cause 
problems with other providers.
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to