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

Provide support for new Azure Monitor Metrics Dataplane API #2284

Closed
tomkerkhove opened this issue Apr 27, 2023 · 15 comments
Closed

Provide support for new Azure Monitor Metrics Dataplane API #2284

tomkerkhove opened this issue Apr 27, 2023 · 15 comments
Assignees
Labels
feature All issues that are new features integration:azure-monitor All issues related to Azure Monitor integration

Comments

@tomkerkhove
Copy link
Owner

tomkerkhove commented Apr 27, 2023

Proposal

Provide support for new Azure Monitor Metrics Dataplane API (preview) which has higher limitations and allows for scraping resources in batch.

https://azure.microsoft.com/en-us/updates/public-preview-azure-monitor-metrics-dataplane-api-released/

This should be configurable so that end-users can choose this new API next to existing ARM API.

Component

Scraper

Contact Details

No response

@tomkerkhove tomkerkhove added the feature-request New feature requests label Apr 27, 2023
@tomkerkhove tomkerkhove self-assigned this Apr 27, 2023
@tomkerkhove tomkerkhove added integration:azure-monitor All issues related to Azure Monitor integration feature All issues that are new features and removed feature-request New feature requests labels Apr 27, 2023
@tomkerkhove tomkerkhove moved this from Proposed to Todo in Promitor Roadmap Apr 27, 2023
@tomkerkhove tomkerkhove changed the title Provide support for new Azure Monitor Metrics Dataplane API (preview) Provide support for new Azure Monitor Metrics Dataplane API Mar 1, 2024
@tomkerkhove
Copy link
Owner Author

tomkerkhove commented Mar 1, 2024

To make it even more accessible to developers across different programming languages, the Azure Metrics Data Plane API now offers client libraries for Java, JavaScript, .NET, Python, and Go languages. This support enables developers to integrate and interact with the API seamlessly in their preferred language, streamlining the development process and making it easier to leverage the power of Azure Metrics.

Resources:

@tomkerkhove
Copy link
Owner Author

@hkfgo Can you please also update https://changelog.promitor.io/?

@tomkerkhove
Copy link
Owner Author

@hkfgo Can you please see if local tests are working with OpenTelemetry? I tried shipping new version 3 times but all those tests time out for metrics not showing up

https://dev.azure.com/tomkerkhove/Promitor/_build/results?buildId=14883&view=results

@hkfgo
Copy link
Collaborator

hkfgo commented Oct 30, 2024

@hkfgo Can you please see if local tests are working with OpenTelemetry? I tried shipping new version 3 times but all those tests time out for metrics not showing up

https://dev.azure.com/tomkerkhove/Promitor/_build/results?buildId=14883&view=results

Sure, I can test it out in our cloud env. We have OTEL Collectors running there. In my experience it take on average more than 3 tries for the OpenTelemetry CI to pass :/ In the most recent PR I merged, I had to retry 5 times

@hkfgo
Copy link
Collaborator

hkfgo commented Nov 3, 2024

I got some unfortunate news @tomkerkhove, the OTEL Collector sink might actually be broken. I observe one successful metric export then nothing afterwards. That's probably why some times the CI tests were able to pass.

Not sure which version broke OTEL or why no one's filed an issue yet

@hkfgo
Copy link
Collaborator

hkfgo commented Nov 3, 2024

But in any case, I'm working hard to track down the issue..

@tomkerkhove
Copy link
Owner Author

Thanks! Do you know if it's related to the new API change or broken in general?

@hkfgo
Copy link
Collaborator

hkfgo commented Nov 5, 2024

Thanks! Do you know if it's related to the new API change or broken in general?

Unlikely since no there hasn't been a code change on the OTEL sink for a year. Code changes in the past year should have no effect there. I'm running through older versions to pin down the latest version with a working OTEL sink(and thus when it broke).

You are sure the OTEL sink worked smoothly at some point right?

@hkfgo
Copy link
Collaborator

hkfgo commented Nov 6, 2024

@tomkerkhove I tracked down the latest version with a working OTEL sink, which is 2.8.0. That also means 2.9.0: https://github.com/tomkerkhove/promitor/releases/tag/Scraper-v2.9.0 was where things broke, over 1.5 years ago. Among the list of changes I suspect one of these two commits broke it: #2239 and #2235. There was also an upgrade to .Net 7. I'll need a bit more time to pin down the offending change.

Taking a step back.. Given this piece of information, I'd consider all the recent changes safe, since they aren't the ones breaking OTEL sink. I'd also consider the broken OTEL sink not a blocker for release these recent changes.

@tomkerkhove
Copy link
Owner Author

I am not sure if I agree with that given the tests up to v2.11.2 were passing : https://dev.azure.com/tomkerkhove/Promitor/_build/results?buildId=13845&view=results

@tomkerkhove
Copy link
Owner Author

Taking a step back.. Given this piece of information, I'd consider all the recent changes safe, since they aren't the ones breaking OTEL sink. I'd also consider the broken OTEL sink not a blocker for release these recent changes.

Not really or we'd break other end-users which is not really what we should do.

@hkfgo
Copy link
Collaborator

hkfgo commented Nov 7, 2024

Screenshot 2024-11-01 at 2 56 36 PM The reason why previous CI were able to pass was because the first export is often successful, but not subsequent ones. The screenshot above should help illustrate the point. That was from running `2.11.2`. This failure mode is insidious IMO because it can "trick" the CI to pass, all the while the sink is broken.

Version 2.8.0 was the latest one that gave a continuous stream of metrics.

@tomkerkhove
Copy link
Owner Author

Let's move this to a seperate issue, but we'll need to fix that because:

  1. End-users should not be broken
  2. No way tests will be passing

If we cannot resolve by EOW,then I'll skip OTEL tests just to get the version out and re-enable them again

@hkfgo
Copy link
Collaborator

hkfgo commented Nov 7, 2024

Ack, I'll open a new issue

@github-project-automation github-project-automation bot moved this from Todo to Ready To Ship in Promitor Roadmap Nov 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature All issues that are new features integration:azure-monitor All issues related to Azure Monitor integration
Projects
Status: Ready To Ship
Development

No branches or pull requests

2 participants