You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@bookkeeper.apache.org by GitBox <gi...@apache.org> on 2019/09/16 20:08:03 UTC

[GitHub] [bookkeeper] addisonj opened a new issue #2161: When httpServerEnabled=true, Prometheus reports doesn't sent content-type

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:
users@infra.apache.org


With regards,
Apache Git Services