[AzureMonitorExporter] Part 2 - Customer sdkstats - Implementation + Tests#53010
Merged
rajkumar-rangaraj merged 1 commit intoAzure:mainfrom Oct 13, 2025
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull Request Overview
This PR implements customer SDK statistics tracking functionality as part 2 of the Azure Monitor Exporter customer SDK stats feature. The implementation adds telemetry counting, success/failure tracking, and statistical reporting throughout the telemetry processing pipeline.
Key changes include:
- Added
TelemetrySchemaTypeCounterto track different telemetry types (request, dependency, exception, etc.) - Modified helper methods to return both telemetry items and counters as tuples
- Updated all exporters and transmitters to pass counter information through the pipeline
- Enhanced transmission result processing to track successes, failures, retries, and drops with detailed categorization
Reviewed Changes
Copilot reviewed 20 out of 20 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| TelemetrySchemaTypeCounter.cs | Renamed class from TelemetryCounter to TelemetrySchemaTypeCounter |
| CustomerSdkStatsHelper.cs | Updated method parameters to use renamed counter class |
| OpenTelemetryBuilderExtensions.cs | Added customer SDK stats registration and reordered imports |
| TraceHelper.cs | Modified to return tuple with counter, added counter increment logic |
| MetricHelper.cs | Modified to return tuple with counter for metric tracking |
| LogsHelper.cs | Modified to return tuple with counter, added counter increment logic |
| ITransmitter.cs | Updated interface to include counter parameter |
| HttpPipelineHelper.cs | Enhanced with counter tracking, JSON parsing, and detailed transmission result processing |
| TransmitFromStorageHandler.cs | Added counter tracking for storage transmission scenarios |
| AzureMonitorTransmitter.cs | Updated to use counter parameter and track transmission outcomes |
| All Exporter classes | Updated to handle tuple return values and pass counters |
| Test files | Updated to handle new tuple return values and validate counter behavior |
....OpenTelemetry.Exporter/tests/Azure.Monitor.OpenTelemetry.Exporter.Tests/TraceHelperTests.cs
Show resolved
Hide resolved
harsimar
approved these changes
Oct 13, 2025
This was referenced Oct 24, 2025
This was referenced Nov 1, 2025
Open
Bump Azure.Extensions.AspNetCore.Configuration.Secrets from 1.3.2 to 1.4.0
gjacome94/eShopOnWebGJA#9
Open
Open
This was referenced Nov 24, 2025
Open
Closed
Closed
Closed
Open
Closed
Closed
Open
This was referenced Dec 1, 2025
Bump Azure.Extensions.AspNetCore.Configuration.Secrets from 1.3.2 to 1.4.0
jodavis/AdaptiveRemote#25
Closed
Closed
Closed
Open
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.