Hi Danny
this is a good idea. We can do it easily.
I am amending the FLIP accordingly

Regards
Lorenzo


On Mon, 18 Sept 2023 at 20:17, Danny Cranmer <dannycran...@apache.org>
wrote:

> Hello Lorenzo,
>
> > Please consider this is not an AWS-specific connector and will not depend
> on flink-connector-aws-base
>
> This is my point, how can we introduce AWS specific functionality without
> coupling them. How about this. The Prometheus connector does not depend on
> aws-base but publishes a basic API for signing (that does not require a
> dependency the other way around). Then we put the AWS signer in the AWS
> repo, without taking a dependency on Prometheus. Thus the connectors are
> completely decoupled and the core Prometheus repo does not contain any AWS
> pollution?
>
> Danny
>
> On Mon, 18 Sept 2023, 18:16 Lorenzo Nicora, <lorenzo.nic...@gmail.com>
> wrote:
>
> > Hi Danny
> >
> > Please consider this is not an AWS-specific connector and will not depend
> > on flink-connector-aws-base.
> > Prometheus remote-write specs deem authentication as out-of-scope [1].
> >
> > Amazon Managed Prometheus uses request signing to authenticate
> > remote-writes. To support AMP but also keep the connector generic, the
> idea
> > is to define a genetic request signing interface, and provide an
> > implementation for AMP.
> > Also, to keep the connector API generic, we think the best approach is to
> > pass a signer instance to the sink builder.
> >
> > I am not aware of Prometheus remote-write authentication schemes, other
> > than request signing.
> > The actual open questions are, in my opinion:
> > 1. should we add the interface for other authentications. If so, what
> > schemes?
> > 2. should the AMP request signer be part of the connector or distributed
> as
> > a separate dependency?
> >
> > Regards
> > Lorenzo
> >
> > [1] https://prometheus.io/docs/concepts/remote_write_spec/#out-of-scope
> >
> >
> > On Mon, 18 Sept 2023 at 17:22, Danny Cranmer <dannycran...@apache.org>
> > wrote:
> >
> > > Thanks for the reply Lorenzo.
> > >
> > > > Static credentials are just for the sake of the example. The current
> > > prototype implementation already uses
> DefaultAWSCredentialsProviderChain
> > > that supports static and dynamic credentials. We can make the
> credential
> > > provider configurable.
> > >
> > > The point here was that flink-connector-aws-base provides a common way
> to
> > > define AWS credentials in config. It would be nice to reuse this
> > mechanism
> > > for consistency. I am wondering if we will reuse this approach, and if
> so
> > > how the dependency hierarchy will look? We had a similar discussion
> > > regarding the redshift connector [1]. The FLIP uses
> > > "AWS_ACCESS_KEY_ID"/"AWS_SECRET_ACCESS_KEY"/etc which look like the
> > > constants in flink-connector-aws [2]?
> > >
> > > Thanks,
> > > Danny
> > >
> > > [1] https://lists.apache.org/thread/fowhltc1n0tn4627ycwhrd5p8ds77lm8
> > > [2]
> > >
> > >
> >
> https://github.com/apache/flink-connector-aws/blob/main/flink-connector-aws-base/src/main/java/org/apache/flink/connector/aws/config/AWSConfigConstants.java#L91
> > >
> > > On Mon, Sep 18, 2023 at 3:50 PM Lorenzo Nicora <
> lorenzo.nic...@gmail.com
> > >
> > > wrote:
> > >
> > > > Hello
> > > >
> > > > I am also re-sending an old answer I sent on May 24th, that, for some
> > > > reason, did not appear in the thread.
> > > > ----------------------
> > > > Q1) The fact we are using the remote write feature is not covered
> > beyond
> > > > the code example. Can we add details on this to make it clear?
> > > Additionally
> > > > would this support _any_ Prometheus server or do we need to enable
> > remote
> > > > endpoint feature on the server?
> > > >
> > > > A1) We use the remote-write API. The server must provide a standard
> > > > remote-write endpoint. Remote-write specs do not say anything about
> > > > authentication. At the moment we are planning to support 1/
> > > unauthenticated
> > > > requests, 2/ AWS signed requests for AMP. The idea is the signer
> > > interface
> > > > allows transformations of the request URL. Request payload cannot be
> > > > modified and must be Protobuf, as by spec.
> > > >
> > > >
> > > >
> > > > Q2)  Are there any concerns around Prometheus versioning or is the
> API
> > > > backwards compatible? Which versions of Prometheus will we be
> > supporting
> > > >
> > > > A2) We are using the only version of Prometheus Remote-Write specs
> > > > available v1.0, defined in Remote-Write spec document [1] published
> > April
> > > > 2023. There was a previous v0.1 draft version of the same specs. We
> > will
> > > > probably also be compatible with the draft version, but I still have
> to
> > > > check the differences.
> > > >
> > > >
> > > >
> > > > Q3) With regard to the "AmazonPrometheusRequestSigner" the example
> has
> > > > static creds. Can we integrate with the AWS Util to support all
> > > credential
> > > > providers, static and dynamic?
> > > >
> > > > A3) Static credentials are just for the sake of the example. The
> > current
> > > > prototype implementation already uses
> > DefaultAWSCredentialsProviderChain
> > > > that supports static and dynamic credentials. We can make the
> > credential
> > > > provider configurable.
> > > >
> > > > Lorenzo
> > > >
> > > > [1] https://prometheus.io/docs/concepts/remote_write_spec/
> > > > [2]
> > > >
> > > >
> > >
> >
> https://docs.google.com/document/d/1LPhVRSFkGNSuU1fBd81ulhsCPR4hkSZyyBj1SZ8fWOM/edit
> > > > Lorenzo
> > > >
> > > >
> > > > On Sun, 17 Sept 2023 at 09:51, Ahmed Hamdy <hamdy10...@gmail.com>
> > wrote:
> > > >
> > > > > Thanks Lorenzo,
> > > > > Looking forward to the PRs.
> > > > > Best Regards
> > > > > Ahmed Hamdy
> > > > >
> > > > >
> > > > > On Sat, 16 Sept 2023 at 06:27, Lorenzo Nicora <
> > > lorenzo.nic...@gmail.com>
> > > > > wrote:
> > > > >
> > > > > > Hello
> > > > > >
> > > > > > (apologies if this is a duplicate reply)
> > > > > >
> > > > > > I was working with Karthi on this connector, and I have taken
> over
> > > the
> > > > > > development.
> > > > > > We have a working version we would like to submit to the
> community.
> > > > > >
> > > > > > The renumbered FLIP-312 is also updated with more details [1].
> > > > > > Happy to answer any questions.
> > > > > >
> > > > > > Regards
> > > > > > Lorenzo
> > > > > >
> > > > > > [1]
> > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> https://cwiki.apache.org/confluence/display/FLINK/FLIP-312%3A+Prometheus+Sink+Connector
> > > > > >
> > > > > > On Mon, 21 Aug 2023, 13:06 Ahmed Hamdy, <hamdy10...@gmail.com>
> > > wrote:
> > > > > >
> > > > > > > Hello Karthi
> > > > > > > Is this FLIP still in progress? I see the FLIP not updated &
> > > couldn't
> > > > > > find
> > > > > > > open JIRAs.
> > > > > > > I am happy to take over if you are no longer working on this.
> > > > > > > Best Regards
> > > > > > > Ahmed Hamdy
> > > > > > >
> > > > > > >
> > > > > > > On Mon, 22 May 2023 at 14:49, Martijn Visser <
> > > > martijnvis...@apache.org
> > > > > >
> > > > > > > wrote:
> > > > > > >
> > > > > > > > Hi all,
> > > > > > > >
> > > > > > > > > For example, a user might want to read in logs, perform
> some
> > > > > > > aggregations
> > > > > > > > and publish it into a metrics store for visualisation. This
> > might
> > > > be
> > > > > a
> > > > > > > > great use-case for reducing the cardinality of metrics!
> > > > > > > >
> > > > > > > > I can see that. What I would like to see in the FLIP is a
> > > proposal
> > > > on
> > > > > > the
> > > > > > > > boundaries of the metrics reporter vs the Prometheus sink. I
> > > think
> > > > > it's
> > > > > > > > important that we make clear when to use a metric reporter
> and
> > > when
> > > > > > not.
> > > > > > > I
> > > > > > > > can imagine that there will be Flink users who think that
> they
> > > can
> > > > > get
> > > > > > > data
> > > > > > > > from the metric reporter, make aggregrations in Flink and
> then
> > > > store
> > > > > it
> > > > > > > > using the Prometheus sink.
> > > > > > > >
> > > > > > > > Overall, I think more context must be added to the FLIP,
> > > especially
> > > > > on
> > > > > > > the
> > > > > > > > motivation.
> > > > > > > >
> > > > > > > > Best regards,
> > > > > > > >
> > > > > > > > Martijn
> > > > > > > >
> > > > > > > > On Fri, May 19, 2023 at 4:28 PM Karthi Thyagarajan <
> > > > > > > kar...@karthitect.com>
> > > > > > > > wrote:
> > > > > > > >
> > > > > > > > > Hi Lijie
> > > > > > > > >
> > > > > > > > > Thank you for pointing this out. I've corrected it [1].
> Also,
> > > > this
> > > > > > page
> > > > > > > > > [2] still shows 178 and 229 as available, which is why I
> > picked
> > > > it
> > > > > > up.
> > > > > > > > >
> > > > > > > > > Thanks
> > > > > > > > > Karthi
> > > > > > > > >
> > > > > > > > > [1]
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> https://cwiki.apache.org/confluence/display/FLINK/FLIP-312%3A+Prometheus+Sink+Connector
> > > > > > > > > [2]
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> https://cwiki.apache.org/confluence/display/FLINK/Flink+Improvement+Proposals
> > > > > > > > >
> > > > > > > > > On May 15, 2023, at 9:37 PM, Lijie Wang <
> > > > wangdachui9...@gmail.com>
> > > > > > > > wrote:
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > Hi Karthi,
> > > > > > > > >
> > > > > > > > > I think you are using a wrong FLIP id, the FLIP-229 has
> > already
> > > > be
> > > > > > > > used[1].
> > > > > > > > >
> > > > > > > > > [1]
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> https://cwiki.apache.org/confluence/display/FLINK/FLIP-229%3A+Introduces+Join+Hint+for+Flink+SQL+Batch+Job
> > > > > > > > >
> > > > > > > > > Best,
> > > > > > > > > Lijie
> > > > > > > > >
> > > > > > > > > Martijn Visser <martijnvis...@apache.org> 于2023年5月16日周二
> > > 04:44写道:
> > > > > > > > >
> > > > > > > > > Hi Karthi,
> > > > > > > > >
> > > > > > > > > Thanks for the FLIP and opening up the discussion. My main
> > > > question
> > > > > > is:
> > > > > > > > why
> > > > > > > > > should we create a separate connector and not use and/or
> > > improve
> > > > > the
> > > > > > > > > existing integrations with Prometheus? I would like to
> > > understand
> > > > > > more
> > > > > > > so
> > > > > > > > > that it can be added to the motivation of the FLIP.
> > > > > > > > >
> > > > > > > > > Best regards,
> > > > > > > > >
> > > > > > > > > Martijn
> > > > > > > > >
> > > > > > > > > On Mon, May 15, 2023 at 6:03 PM Karthi Thyagarajan <
> > > > > > > > kar...@karthitect.com>
> > > > > > > > > wrote:
> > > > > > > > >
> > > > > > > > > > Hello all,
> > > > > > > > > >
> > > > > > > > > > We would like to start a discussion thread on FLIP-229:
> > > > > Prometheus
> > > > > > > Sink
> > > > > > > > > > Connector [1] where we propose to provide a sink
> connector
> > > for
> > > > > > > > Prometheus
> > > > > > > > > > [2] based on the Async Sink [3]. Looking forward to
> > comments
> > > > and
> > > > > > > > > feedback.
> > > > > > > > > > Thank you.
> > > > > > > > > >
> > > > > > > > > > [1]
> > > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> https://cwiki.apache.org/confluence/display/FLINK/FLIP-229%3A+Prometheus+Sink+Connector
> > > > > > > > > > [2] https://prometheus.io/
> > > > > > > > > > [3]
> > > > > > > > > >
> > > > > > > >
> > > > > >
> > > >
> > https://cwiki.apache.org/confluence/display/FLINK/FLIP-171%3A+Async+Sink
> > > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>

Reply via email to