Skip to content

[Instrumentation.AWS{Lambda}] Add schema URL#4063

Merged
martincostello merged 19 commits into
open-telemetry:mainfrom
martincostello:add-aws-schema-url-version
Apr 24, 2026
Merged

[Instrumentation.AWS{Lambda}] Add schema URL#4063
martincostello merged 19 commits into
open-telemetry:mainfrom
martincostello:add-aws-schema-url-version

Conversation

@martincostello

@martincostello martincostello commented Apr 5, 2026

Copy link
Copy Markdown
Member

Changes

  • Add schema URL and version to AWS metrics and traces.
  • Add schema URL and version to AWS Lambda traces.
  • Add AWS attributes to meters as tags.
  • Add test to validate new version additions.

Merge requirement checklist

  • CONTRIBUTING guidelines followed (license requirements, nullable enabled, static analysis, etc.)
  • Unit tests added/updated
  • Appropriate CHANGELOG.md files updated for non-trivial changes
  • Changes in public API reviewed (if applicable)

Comment thread src/OpenTelemetry.Instrumentation.AWS/CHANGELOG.md Outdated
@github-actions github-actions Bot added the comp:instrumentation.aws Things related to OpenTelemetry.Instrumentation.AWS label Apr 5, 2026
@codecov

codecov Bot commented Apr 5, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 87.50000% with 4 lines in your changes missing coverage. Please review.
✅ Project coverage is 75.02%. Comparing base (ace2949) to head (5750f89).
⚠️ Report is 3 commits behind head on main.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
...umentation.AWS/Implementation/Tracing/AWSTracer.cs 50.00% 4 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #4063      +/-   ##
==========================================
+ Coverage   74.99%   75.02%   +0.03%     
==========================================
  Files         467      467              
  Lines       18441    18445       +4     
==========================================
+ Hits        13830    13839       +9     
+ Misses       4611     4606       -5     
Flag Coverage Δ
unittests-Contrib.Shared.Tests 89.38% <ø> (ø)
unittests-Exporter.Geneva 54.97% <ø> (+0.26%) ⬆️
unittests-Exporter.InfluxDB 95.81% <ø> (ø)
unittests-Exporter.Instana 74.86% <ø> (ø)
unittests-Exporter.OneCollector 94.61% <ø> (ø)
unittests-Extensions 90.78% <ø> (ø)
unittests-Extensions.Enrichment 100.00% <ø> (ø)
unittests-Extensions.Enrichment.AspNetCore 86.27% <ø> (ø)
unittests-Extensions.Enrichment.Http 94.33% <ø> (ø)
unittests-Instrumentation.AWS 83.50% <87.50%> (-0.04%) ⬇️
unittests-Instrumentation.AspNet 76.61% <ø> (ø)
unittests-Instrumentation.AspNetCore 70.44% <ø> (ø)
unittests-Instrumentation.Cassandra 92.85% <ø> (ø)
unittests-Instrumentation.ConfluentKafka 78.52% <ø> (ø)
unittests-Instrumentation.ElasticsearchClient 80.60% <ø> (ø)
unittests-Instrumentation.EntityFrameworkCore 81.39% <ø> (ø)
unittests-Instrumentation.EventCounters 77.27% <ø> (ø)
unittests-Instrumentation.GrpcCore 91.27% <ø> (ø)
unittests-Instrumentation.GrpcNetClient 73.78% <ø> (ø)
unittests-Instrumentation.Hangfire 87.30% <ø> (ø)
unittests-Instrumentation.Http 74.62% <ø> (ø)
unittests-Instrumentation.Owin 88.62% <ø> (ø)
unittests-Instrumentation.Process 100.00% <ø> (ø)
unittests-Instrumentation.Quartz 78.76% <ø> (ø)
unittests-Instrumentation.Remoting 64.28% <ø> (ø)
unittests-Instrumentation.Runtime 100.00% <ø> (ø)
unittests-Instrumentation.ServiceFabricRemoting 40.83% <ø> (ø)
unittests-Instrumentation.SqlClient 84.73% <ø> (ø)
unittests-Instrumentation.StackExchangeRedis 93.63% <ø> (ø)
unittests-Instrumentation.Wcf 80.77% <ø> (ø)
unittests-OpAmp.Client 82.81% <ø> (-0.34%) ⬇️
unittests-PersistentStorage 68.81% <ø> (-1.61%) ⬇️
unittests-Resources.AWS 74.49% <ø> (ø)
unittests-Resources.Azure 88.31% <ø> (ø)
unittests-Resources.Container 67.34% <ø> (ø)
unittests-Resources.Gcp 71.42% <ø> (ø)
unittests-Resources.Host 72.26% <ø> (ø)
unittests-Resources.OperatingSystem 76.98% <ø> (ø)
unittests-Resources.Process 100.00% <ø> (ø)
unittests-Resources.ProcessRuntime 79.59% <ø> (ø)
unittests-Sampler.AWS 94.27% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
...rumentation.AWS/Implementation/Metrics/AWSMeter.cs 100.00% <100.00%> (ø)
...ion.AWS/Implementation/Metrics/AWSMeterProvider.cs 100.00% <100.00%> (ø)
...on.AWS/Implementation/Tracing/AWSTracerProvider.cs 100.00% <100.00%> (ø)
...trumentation.AWS/MeterProviderBuilderExtensions.cs 100.00% <100.00%> (ø)
...rumentation.AWS/TracerProviderBuilderExtensions.cs 87.50% <100.00%> (ø)
...etry.Instrumentation.AWSLambda/AWSLambdaWrapper.cs 95.00% <100.00%> (+0.08%) ⬆️
...umentation.AWS/Implementation/Tracing/AWSTracer.cs 57.69% <50.00%> (ø)

... and 8 files with indirect coverage changes

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@martincostello
martincostello marked this pull request as ready for review April 5, 2026 16:33
@martincostello
martincostello requested a review from a team as a code owner April 5, 2026 16:33
Copilot AI review requested due to automatic review settings April 5, 2026 16:33

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR adds OpenTelemetry schema URL and instrumentation scope version metadata to AWS client tracing, aligned to the configured AWS semantic convention version, and extends tests to guard against future enum/version additions causing runtime failures.

Changes:

  • Pass SemanticConventionVersion into the AWS tracer provider registration.
  • Create ActivitySource instances with TelemetrySchemaUrl and package Version.
  • Add a theory test that exercises all SemanticConventionVersion enum values; update AWS instrumentation changelog.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.

File Description
test/OpenTelemetry.Instrumentation.AWS.Tests/AWSClientInstrumentationOptionsTests.cs Adds a theory test enumerating all semantic convention versions to ensure no exceptions when versions are added.
src/OpenTelemetry.Instrumentation.AWS/TracerProviderBuilderExtensions.cs Registers AWSTracerProvider with the configured semantic convention version.
src/OpenTelemetry.Instrumentation.AWS/Implementation/Tracing/AWSTracerProvider.cs Sets ActivitySource version and schema URL (based on semantic convention version) when creating tracers.
src/OpenTelemetry.Instrumentation.AWS/CHANGELOG.md Documents the addition of instrumentation scope version and schema URL to traces.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/OpenTelemetry.Instrumentation.AWS/Implementation/Tracing/AWSTracerProvider.cs Outdated
Comment thread src/OpenTelemetry.Instrumentation.AWS/Implementation/Tracing/AWSTracerProvider.cs Outdated
Comment thread src/OpenTelemetry.Instrumentation.AWS/Implementation/Tracing/AWSTracerProvider.cs Outdated
@github-actions
github-actions Bot requested review from Oberon00 and rypdal April 5, 2026 17:57
@github-actions github-actions Bot added the comp:instrumentation.awslambda Things related to OpenTelemetry.Instrumentation.AWSLambda label Apr 5, 2026
@martincostello martincostello changed the title [Instrumentation.AWS] Add schema URL [Instrumentation.AWS{Lambda}] Add schema URL Apr 5, 2026
@martincostello
martincostello marked this pull request as draft April 8, 2026 15:50
@martincostello
martincostello force-pushed the add-aws-schema-url-version branch from 55915ea to fa9a6dd Compare April 9, 2026 10:00
@github-actions github-actions Bot added the comp:instrumentation.aspnet Things related to OpenTelemetry.Instrumentation.AspNet label Apr 9, 2026
This was referenced Jul 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp:instrumentation.aws Things related to OpenTelemetry.Instrumentation.AWS comp:instrumentation.awslambda Things related to OpenTelemetry.Instrumentation.AWSLambda

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Instrumentation.AWS] Add tags to meters

8 participants