rnewson commented on issue #3377:
URL: https://github.com/apache/couchdb/issues/3377#issuecomment-783250157
It seems the discussion is still open, are we to continue it here in the
Issue or on the mailing list? I was about to raise several points but they've
all come up in the discussion (without resolution).
Consolidating my thoughts;
1) We're adding support for Prometheus but also inventing a new format for
it that nothing understands.
2) Negotiation by content-type when Prometheus doesn't have a registered one
is a mistake (The accept= query parameter idea is better).
3) As not every item in active_tasks is a metric, the new endpoint is not a
replacement for it, so we'll have to retain both.
4) The output, in any format, remains Prometheus specific anyway (though,
again, noting that tools that understand prometheus format could not consume
our novel JSON format).
It's an odd proposal that appears to satisfy no particular audience, I don't
feel it's appropriate to add this to CouchDB in this form.
The goal seemed clear, "integrate with Prometheus", and the solution is
equally clear, a new endpoint ("/_prometheus") that emits the documented
Prometheus format with the 'text/plain; version="0.0.4' content type. The
CouchDB project can accept or reject such a thing. Should Prometheus become old
hat, we can remove the endpoint, losing no other functionality.
The code to interrogate CouchDB internals and produce the Prometheus output
is useful regardless and could live on as a plugin or separate library (system
administrators could add in the 'couchdb-prometheus-plugin' library as part of
a custom 'make release') if the project were not to accept the work.
imo it is not a blocker that Prometheus does not speak JSON and that CouchDB
does. This is an integration endpoint and, by definition, the two systems being
integrated are not identical.
I would vote to accept a clean Prometheus endpoint.
----------------------------------------------------------------
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]