-
Notifications
You must be signed in to change notification settings - Fork 63
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
feat: Instrument Lambda invocations in AWS SDK #2901
base: main
Are you sure you want to change the base?
Conversation
src/Agent/NewRelic/Agent/Extensions/NewRelic.Agent.Extensions/Collections/ConcurrentHashSet.cs
Show resolved
Hide resolved
.../Common/MultiFunctionApplicationHelpers/NetStandardLibraries/AwsSdk/InvokeLambdaExerciser.cs
Show resolved
Hide resolved
src/Agent/NewRelic/Agent/Extensions/Providers/Wrapper/AwsSdk/AwsSdkPipelineWrapper.cs
Show resolved
Hide resolved
…b.com/newrelic/newrelic-dotnet-agent into feature/invoke-lambda-instrumentation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #2901 +/- ##
==========================================
+ Coverage 81.42% 81.66% +0.23%
==========================================
Files 465 467 +2
Lines 29563 29724 +161
Branches 3278 3308 +30
==========================================
+ Hits 24073 24274 +201
+ Misses 4697 4657 -40
Partials 793 793
Flags with carried forward coverage won't be shown. Click here to find out more.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice work!
Moving this back to Draft until we get final word on the External segment discussion |
Instrument calls to Lambdas and Lambda Aliases from the AWS SDK, with span attributes to allow linking the calls to the actual Lambda (specifically the ARN is what's needed). Includes unit and integration tests. We are able to test without a making a successful call to a lambda, so no live testing resources are necessary.
Also includes a new wrapper for
AmazonServiceClient
and logic to parse the AWS account ID from the Access Key credential. Currently supports only a single account ID per application and falls back to using the account ID from configuration if parsing is unsuccessful. We may need to revisit this logic to support multiple account IDs (one per service client instance) and consider whether using the value from configuration should take precedence or remain as a fallback.Changes since the last PR: