Remove /api/v2 of Prometheus

42 views
Skip to first unread message

Julien Pivotto

unread,
Aug 23, 2020, 7:08:08 AM8/23/20
to prometheus-developers
Dear developers,

Prometheus has an experimental api V2 in GRPC, which does not get any
updates. In addition, it is marked experimental, so we could drop it in
minor releases.

The code itself is quite small, there is (to my knowledge) no
documentation and no tests.

The feature surface seems to be really small, with only admin-specific
API's implemented.

At this point, I'd like to see if we could remove that code, and also
the cmux library we use, which did not get any updated in 2 years, and
is incompatible with recent releases of GRPC.

--
Julien Pivotto
@roidelapluie

Brian Brazil

unread,
Aug 23, 2020, 7:17:47 AM8/23/20
to prometheus-developers
The plan of record is to remove it whenever 3.0 is released, however if it's causing us hassle I see no issue with removing it sooner.
 
--

Julien Pivotto

unread,
Aug 23, 2020, 11:56:10 AM8/23/20
to Brian Brazil, prometheus-developers
1. CMUX

That cmux library is using the helloworld package from grpc which is
gone.
https://github.com/soheilhy/cmux/blob/8a8ea3c53959009183d7914522833c1ed8835020/example_test.go#L32

Additionally, the 2.21 fixes some misconfiguration of the cmux that
makes prometheus hang on SIGTERM. I hope that the mitigation we have is
complete, but the library lacks features like clean shutdown:
https://github.com/soheilhy/cmux/issues/39

At the end the repo seems abandoned since 2 years.

2. GRPC

We can not update GRPC, partly because of cmux, partly because we are
friendly with downstream, cortex, which depends on etcd, which
requires an old version of grpc.

This is blocking an update of google.golang.org/api, which is used
in our GCE discovery.


--
Julien Pivotto
@roidelapluie

Brian Brazil

unread,
Aug 24, 2020, 4:35:18 AM8/24/20
to Brian Brazil, prometheus-developers
Those sound like good enough reasons to me.

--

Bjoern Rabenstein

unread,
Aug 27, 2020, 10:30:03 AM8/27/20
to Brian Brazil, prometheus-developers
+1

--
Björn Rabenstein
[PGP-ID] 0x851C3DA17D748D03
[email] bjo...@rabenste.in

Julien Pivotto

unread,
Aug 27, 2020, 10:40:24 AM8/27/20
to Bjoern Rabenstein, Brian Brazil, prometheus-developers
Do we want to add in the 2.21 release notes that we will remove it in
2.22?

--
Julien Pivotto
@roidelapluie

Bjoern Rabenstein

unread,
Aug 27, 2020, 10:42:43 AM8/27/20
to Brian Brazil, prometheus-developers
On 27.08.20 16:40, Julien Pivotto wrote:
>
> Do we want to add in the 2.21 release notes that we will remove it in
> 2.22?

Good idea. But make clear that this is a weird API that probably next
to nobody is actually using. Along the lines: "In the unlikely case
that you use the HTTP API v2 (list the endpoint), please note that we
will remove this experimental API in the next minor release 2.22."

Simon Pasquier

unread,
Aug 28, 2020, 9:41:13 AM8/28/20
to Bjoern Rabenstein, Brian Brazil, prometheus-developers
On Thu, Aug 27, 2020 at 4:40 PM Julien Pivotto
Sounds good to me.

>
> --
> Julien Pivotto
> @roidelapluie
>
> --
> You received this message because you are subscribed to the Google Groups "Prometheus Developers" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to prometheus-devel...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/prometheus-developers/20200827144020.GA601189%40oxygen.
>

Bartłomiej Płotka

unread,
Aug 28, 2020, 10:14:55 AM8/28/20
to Simon Pasquier, Bjoern Rabenstein, Brian Brazil, prometheus-developers

Bartłomiej Płotka

unread,
Aug 28, 2020, 10:15:24 AM8/28/20
to Simon Pasquier, Bjoern Rabenstein, Brian Brazil, prometheus-developers
Let's add note as well to notify people! 

(That we mark v2 as deprecated) :p
Reply all
Reply to author
Forward
0 new messages