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

[receiver/awscloudwatchmetricsreceiver] Add new receiver #19429

Merged

Conversation

lewis262626
Copy link
Member

@lewis262626 lewis262626 commented Mar 9, 2023

Description: New AWS CloudWatch metrics receiver initial PR

Link to tracking Issue: #15667

Testing: Unit tests for component config and factory

PR supersedes: #19218

@lewis262626 lewis262626 requested review from a team and bogdandrutu March 9, 2023 18:53
@lewis262626
Copy link
Member Author

cc @jpkrohling @kovrus

@runforesight
Copy link

runforesight bot commented Mar 9, 2023

Foresight Summary

    
Major Impacts
Foresight hasn't detected any major impact on your workflows and tests.

View More Details

⭕  build-and-test-windows workflow has finished in 8 seconds (33 minutes 31 seconds less than main branch avg.) and finished at 27th Mar, 2023.


Job Failed Steps Tests
windows-unittest-matrix -     🔗  N/A See Details
windows-unittest -     🔗  N/A See Details

✅  telemetrygen workflow has finished in 1 minute 17 seconds and finished at 27th Mar, 2023.


Job Failed Steps Tests
build-dev -     🔗  N/A See Details
publish-latest -     🔗  N/A See Details
publish-stable -     🔗  N/A See Details

✅  check-links workflow has finished in 1 minute 45 seconds (⚠️ 40 seconds more than main branch avg.) and finished at 27th Mar, 2023.


Job Failed Steps Tests
changed files -     🔗  N/A See Details
check-links -     🔗  N/A See Details

✅  changelog workflow has finished in 2 minutes 30 seconds and finished at 27th Mar, 2023.


Job Failed Steps Tests
changelog -     🔗  N/A See Details

 build-and-test workflow has finished in 24 minutes 10 seconds (25 minutes 28 seconds less than main branch avg.) and finished at 27th Mar, 2023.


Job Failed Steps Tests
unittest-matrix (1.20, connector) N/A  ✅ 126  ❌ 0  ⏭ 0    🔗 See Details
unittest-matrix (1.19, connector) N/A  ✅ 126  ❌ 0  ⏭ 0    🔗 See Details
correctness-metrics N/A  ✅ 2  ❌ 0  ⏭ 0    🔗 See Details
correctness-traces N/A  ✅ 17  ❌ 0  ⏭ 0    🔗 See Details
unittest-matrix (1.20, internal) N/A  ✅ 583  ❌ 0  ⏭ 0    🔗 See Details
unittest-matrix (1.19, extension) N/A  ✅ 544  ❌ 0  ⏭ 0    🔗 See Details
unittest-matrix (1.20, extension) N/A  ✅ 544  ❌ 0  ⏭ 0    🔗 See Details
unittest-matrix (1.19, internal) N/A  ✅ 583  ❌ 0  ⏭ 0    🔗 See Details
unittest-matrix (1.19, processor) N/A  ✅ 1557  ❌ 0  ⏭ 0    🔗 See Details
unittest-matrix (1.20, processor) N/A  ✅ 1557  ❌ 0  ⏭ 0    🔗 See Details
unittest-matrix (1.19, receiver-0) N/A  ✅ 2631  ❌ 0  ⏭ 0    🔗 See Details
unittest-matrix (1.20, receiver-0) N/A  ✅ 2631  ❌ 0  ⏭ 0    🔗 See Details
unittest-matrix (1.20, exporter) N/A  ✅ 2505  ❌ 0  ⏭ 0    🔗 See Details
unittest-matrix (1.19, receiver-1) N/A  ✅ 1965  ❌ 0  ⏭ 0    🔗 See Details
unittest-matrix (1.20, receiver-1) N/A  ✅ 1965  ❌ 0  ⏭ 0    🔗 See Details
unittest-matrix (1.19, exporter) N/A  ✅ 2505  ❌ 0  ⏭ 0    🔗 See Details
unittest-matrix (1.19, other) N/A  ✅ 4756  ❌ 0  ⏭ 0    🔗 See Details
unittest-matrix (1.20, other) N/A  ✅ 4756  ❌ 0  ⏭ 0    🔗 See Details
integration-tests N/A  ✅ 55  ❌ 0  ⏭ 0    🔗 See Details

✅  prometheus-compliance-tests workflow has finished in 10 minutes 15 seconds (⚠️ 3 minutes 54 seconds more than main branch avg.) and finished at 27th Mar, 2023.


Job Failed Steps Tests
prometheus-compliance-tests -     🔗  ✅ 21  ❌ 0  ⏭ 0    🔗 See Details

✅  load-tests workflow has finished in 15 minutes 21 seconds (⚠️ 4 minutes 27 seconds more than main branch avg.) and finished at 27th Mar, 2023.


Job Failed Steps Tests
loadtest (TestIdleMode) -     🔗  ✅ 1  ❌ 0  ⏭ 0    🔗 See Details
loadtest (TestTraceAttributesProcessor) -     🔗  ✅ 3  ❌ 0  ⏭ 0    🔗 See Details
loadtest (TestMetric10kDPS|TestMetricsFromFile) -     🔗  ✅ 6  ❌ 0  ⏭ 0    🔗 See Details
loadtest (TestTraceNoBackend10kSPS|TestTrace1kSPSWithAttrs) -     🔗  ✅ 8  ❌ 0  ⏭ 0    🔗 See Details
loadtest (TestMetricResourceProcessor|TestTrace10kSPS) -     🔗  ✅ 12  ❌ 0  ⏭ 0    🔗 See Details
loadtest (TestTraceBallast1kSPSWithAttrs|TestTraceBallast1kSPSAddAttrs) -     🔗  ✅ 10  ❌ 0  ⏭ 0    🔗 See Details
loadtest (TestBallastMemory|TestLog10kDPS) -     🔗  ✅ 18  ❌ 0  ⏭ 0    🔗 See Details
setup-environment -     🔗  N/A See Details

✅  e2e-tests workflow has finished in 17 minutes 41 seconds (⚠️ 2 minutes 50 seconds more than main branch avg.) and finished at 27th Mar, 2023.


Job Failed Steps Tests
kubernetes-test (v1.26.0) -     🔗  N/A See Details
kubernetes-test (v1.25.3) -     🔗  N/A See Details
kubernetes-test (v1.24.7) -     🔗  N/A See Details
kubernetes-test (v1.23.13) -     🔗  N/A See Details

🔎 See details on Foresight

*You can configure Foresight comments in your organization settings page.

Copy link
Member

@kovrus kovrus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

receiver/awscloudwatchmetricsreceiver/config.go Outdated Show resolved Hide resolved
@lewis262626
Copy link
Member Author

Unsure why CI is failing. Logs are saying it's failing on a Jaeger test 🤔

@atoulme
Copy link
Contributor

atoulme commented Mar 11, 2023

It’s failing on checks too, please take a look

@lewis262626
Copy link
Member Author

lewis262626 commented Mar 11, 2023

@atoulme I fixed the issue with make goporto, but the jaeger issue seems to be nothing related to my commits. The logs say something is already listening on that port:

https://github.com/open-telemetry/opentelemetry-collector-contrib/actions/runs/4387063396/jobs/7685532139#step:9:520

Might have just been a random issue

@atoulme
Copy link
Contributor

atoulme commented Mar 11, 2023

It's a flaky test: #9113

@lewis262626
Copy link
Member Author

It's a flaky test: #9113

Ok, hopefully a re-run fixes it

@atoulme
Copy link
Contributor

atoulme commented Mar 12, 2023

Please add the new module to versions.yaml with Using versioning file /home/runner/work/opentelemetry-collector-contrib/opentelemetry-collector-contrib/versions.yaml

@atoulme atoulme added the Accepted Component New component has been sponsored label Mar 12, 2023
@lewis262626
Copy link
Member Author

Please add the new module to versions.yaml with Using versioning file /home/runner/work/opentelemetry-collector-contrib/opentelemetry-collector-contrib/versions.yaml

Cheers, fixed.

@lewis262626
Copy link
Member Author

Can someone with write permissions merge this PR please?

@atoulme atoulme added the ready to merge Code review completed; ready to merge by maintainers label Mar 14, 2023
Copy link
Contributor

@matej-g matej-g left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this @lewis262626!

I left a few questions / suggestions. It seems like the receiver does not implement any CloudWatch API polling yet? Is this meant to provide just bare bones for the receiver?

(Sorry if that's just my unfamiliarity with process, not sure what is the required minimum viable functionality for a receiver to be merged. I was expecting an initial version to already be capable of receiving metrics).

receiver/awscloudwatchmetricsreceiver/receiver.go Outdated Show resolved Hide resolved
receiver/awscloudwatchmetricsreceiver/config.go Outdated Show resolved Hide resolved
receiver/awscloudwatchmetricsreceiver/README.md Outdated Show resolved Hide resolved
receiver/awscloudwatchmetricsreceiver/config.go Outdated Show resolved Hide resolved
receiver/awscloudwatchmetricsreceiver/config.go Outdated Show resolved Hide resolved
@lewis262626
Copy link
Member Author

Thanks for this @lewis262626!

I left a few questions / suggestions. It seems like the receiver does not implement any CloudWatch API polling yet? Is this meant to provide just bare bones for the receiver?

(Sorry if that's just my unfamiliarity with process, not sure what is the required minimum viable functionality for a receiver to be merged. I was expecting an initial version to already be capable of receiving metrics).

I was asked to split up my original PR, hence this bare bones receiver. You're more than welcome to check out and build my original
PR

@matej-g
Copy link
Contributor

matej-g commented Mar 22, 2023

@lewis262626 thanks for the explanation, let's get this in! ❤️

@atoulme
Copy link
Contributor

atoulme commented Mar 22, 2023

Please rebase, thanks!

Copy link
Contributor

@codeboten codeboten left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please resolve/address the remaining comments and we can get this merged!

@codeboten codeboten removed the ready to merge Code review completed; ready to merge by maintainers label Mar 27, 2023
Copy link
Member

@jpkrohling jpkrohling left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

dependabot conflict solved, but apparently, there are a few unhandled comments. I'll go over this once the comments are taken care of.

@lewis262626
Copy link
Member Author

@lewis262626 thanks for the explanation, let's get this in! ❤️

I have some free time later this week. Will resolve the outstanding comments and rebase

@lewis262626 lewis262626 force-pushed the awscloudwatchmetricsreceiver branch from 281e034 to b39cb85 Compare April 24, 2023 15:14
@lewis262626
Copy link
Member Author

Have rebased changes from main to my branch. Gonna work through the comments and hopefully get this merged soon

@lewis262626
Copy link
Member Author

lewis262626 commented Apr 24, 2023

I can add the polling logic once this PR has been merged

@TylerHelmuth
Copy link
Member

@jpkrohling please give final review as the sponsor.

@lewis262626 lewis262626 force-pushed the awscloudwatchmetricsreceiver branch from 934968d to afc2113 Compare May 19, 2023 19:36
@lewis262626
Copy link
Member Author

Should all be fixed. Appreciate a final review @jpkrohling

@dmitryax
Copy link
Member

@lewis262626 please take a look at the failing linter

@lewis262626
Copy link
Member Author

@lewis262626 please take a look at the failing linter

Fixed the linter issue

@jpkrohling jpkrohling merged commit 9a9ffcd into open-telemetry:main May 22, 2023
@github-actions github-actions bot added this to the next release milestone May 22, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Accepted Component New component has been sponsored
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants