Jacksonweber/enable customer sdk stats#2707
Draft
JacksonWeber wants to merge 9 commits intomicrosoft:betafrom
Draft
Jacksonweber/enable customer sdk stats#2707JacksonWeber wants to merge 9 commits intomicrosoft:betafrom
JacksonWeber wants to merge 9 commits intomicrosoft:betafrom
Conversation
…ub.com/JacksonWeber/ApplicationInsights-JS into jacksonweber/enable-customer-sdk-stats
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.
This pull request introduces SDK statistics tracking and enhances event notification capabilities in the Application Insights SDK. The main focus is on enabling periodic SDK stats reporting, improving notification for telemetry event lifecycle (including retries), and supporting these features with new interfaces and configuration options.
SDK Statistics Tracking:
SDK_STATS,SDK_STATS_VERSION,SDK_STATS_FLUSH_INTERVAL) and default enablement in the config. The stats listener is registered during initialization and properly cleaned up on unload. (AISKU/src/AISku.ts[1] [2] [3] [4] [5] [6]ISdkStatsNotifCbkand related imports to facilitate SDK stats notification callbacks. (AISKU/src/AISku.tsAISKU/src/AISku.tsL14-R21)Telemetry Event Notification Enhancements:
eventsRetryevent, allowing listeners to be notified when telemetry items are retried, along with the relevant HTTP status code. (shared/AppInsightsCore/src/constants/InternalConstants.ts[1]shared/AppInsightsCore/src/core/NotificationManager.ts[2] [3] [4]Senderplugin to trigger notification callbacks for events sent, discarded, and retried, including logic to extract minimal telemetry items for notification purposes. (channels/applicationinsights-channel-js/src/Sender.ts[1] [2] [3] [4] [5]Internal Data Structure Updates:
bT(baseType) property toIInternalStorageItemfor mapping telemetry types in SDK stats and notification extraction. (channels/applicationinsights-channel-js/src/Interfaces.ts[1]channels/applicationinsights-channel-js/src/Sender.ts[2]These changes collectively improve observability, reliability, and extensibility of the telemetry pipeline, especially for SDK usage metrics and event retry handling.