Re: [Proposal] Deprecation of the firehose endpoint

Simon D Moser
 

Johannes,

just echoing what Neil is saying below: We also feel that three months is probably too short of a runway for this. Let's discuss the details, but 3 months is likely not good enough for us, too.



From:        "Neil MacDougall" <neil.macdougall@...>
To:        cf-dev@...
Date:        12/02/2019 18:05
Subject:        Re: [cf-dev] [Proposal] Deprecation of the firehose endpoint
Sent by:        cf-dev@...




Johannes,

Thank your for the notification.

We use the firehose in Stratos to stream logs for applications and the firehose itself for users/admins to view in the UI.

We also use the CF Firehose exporter (https://github.com/bosh-prometheus/firehose_exporter) as does https://github.com/bosh-prometheus/prometheus-boshrelease) to retrieve metrics from the firehose and store those in Prometheus for display within Stratos. Do you know what the plan is for these to be updated?

It is a large amount of work for us to make the changes for the removal of the firehose and I think 3 months is too aggressive a time frame for us to be able to complete those - this is not something we’ve factored into our planning, so I think we’d need a 12 month window on the firehose removal to be safe.

We have users using Stratos on a variety of Cloud Foundry distributions, which we won’t be able to guarantee will be updated in your proposed three month window, so we will most likely have to make updates to allow Stratos to work with systems that use the current firehose and those that use the newer APIs.

I’m happy to discuss this further with you directly if that would help.

Regards,

Neil


On 11 Feb 2019, at 23:54, Johannes Tuchscherer <jtuchscherer@...> wrote:

Hi there,

Following the last thread about the deprecation of the /containermetrics endpoint, the Loggregator team would like to continue on its path of deprecations. Next on the chopping block is the /firehose endpoint. We understand that this endpoint is used by a few integrations, so we will provide reference implementations and documents for migrating away from the firehose to the newer loggregator endpoints (namely, the RLP Gateway and LogCache). Depending on the feedback we receive to this email, we would like to proceed with the removal of the firehose endpoint in three months - meaning that the loggregator release being cut in three month’s time won't have support for that endpoint anymore.

You can find some example consumers and the documentation of the RLP here:
Go: https://github.com/cloudfoundry/log-stream-cli
Go Client: https://github.com/cloudfoundry/go-loggregator/blob/master/rlp_gateway_client.go
Java: https://github.com/cloudfoundry-community/jmx-consumer-release/tree/develop/src/jmxconsumer
Docs: https://github.com/cloudfoundry/loggregator/blob/master/docs/rlp_gateway.md

Here are some example consumers and the documentation of the Log Cache:
Go: https://github.com/cloudfoundry/log-cache-cli
Go Client: https://github.com/cloudfoundry/log-cache/tree/master/pkg/client
Docs: https://github.com/cloudfoundry/log-cache/blob/master/README.md


Our desire to remove endpoints on the trafficcontroller is based on our plan to get rid of the trafficcontroller - and then everything in loggregator that still references the V1 api and protocol. This will help us to significantly reduce code complexity, but it will also allow us to operate much more efficiently. This should result in reduced overhead for the logging pipeline and ultimately lower infrastructure costs for the logging components in a CF deployment.

Please let us know if you have any comments or concerns.

Johannes
PM of #loggregator




Join cf-dev@lists.cloudfoundry.org to automatically receive all group messages.