Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Include Sigv4 authentication on remote write exporter to directly send metrics to Amazon Managed Prometheus #2177

Open
angelotessaro opened this issue Feb 14, 2024 · 1 comment

Comments

@angelotessaro
Copy link

Describe the solution you'd like
I want to add monitoring for my Python applications hosted on aws (EC2, Beanstalk), and the decision was to go with Prometheus. Since we already extensively use AWS, we want to use Amazon Managed Prometheus service (AMP), which is supposed to be easier to scale because it's a serverless approach and aws handles the scaling. The problem I see is that even though we can use AMP, we still would have to host a Prometheus server and set up service discovery, since our instances are dynamic and some are short lived jobs, which does not seem trivial and it might not work easily for our infrastructure.
AMP has a remote write endpoint and what I have in mind is that we could simply generate the prometheus metrics in our flask application and push the metrics directly to AMP, without having to set up a prometheus server. Correct me if I'm wrong, please, I'm kind of new to this. This package does not support the Sigv4 authentication method used in AWS, so I think if that was the case, my idea could work and it would be a very simple way to create an AMP workspace and simply push metrics to it (Does that make sense?).

Thanks!

Describe alternatives you've considered
Which alternative solutions or features have you considered?

Additional context
Add any other context about the feature request here.

@angelotessaro
Copy link
Author

Actually, there is no real need to add the Sigv4 itself, but simply allowing us to pass an auth object on the PrometheusRemoteWriteMetricsExporter constructor, instead of only allowing basic auth would do. I tested and it works well with my own implementation of building the sigv4 authentication signature.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant