From 25c8f5c1149e94c1a5db10d92dcabb354b1d938d Mon Sep 17 00:00:00 2001 From: AMER JUSUPOVIC Date: Wed, 12 Feb 2025 16:40:54 -0800 Subject: [PATCH 1/4] in progress --- .../AzureAppConfigurationProvider.cs | 5 +++++ .../RequestTracingOptions.cs | 6 ++++++ 2 files changed, 11 insertions(+) diff --git a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/AzureAppConfigurationProvider.cs b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/AzureAppConfigurationProvider.cs index 89ba0510..3e7caa4c 100644 --- a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/AzureAppConfigurationProvider.cs +++ b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/AzureAppConfigurationProvider.cs @@ -548,6 +548,11 @@ public void ProcessPushNotification(PushNotification pushNotification, TimeSpan? if (_configClientManager.UpdateSyncToken(pushNotification.ResourceUri, pushNotification.SyncToken)) { + if (_requestTracingEnabled && _requestTracingOptions != null) + { + + } + SetDirty(maxDelay); } else diff --git a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/RequestTracingOptions.cs b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/RequestTracingOptions.cs index 3838ee95..5125f944 100644 --- a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/RequestTracingOptions.cs +++ b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/RequestTracingOptions.cs @@ -63,6 +63,12 @@ internal class RequestTracingOptions /// public bool IsFailoverRequest { get; set; } = false; + /// + /// Flag to indicate whether + /// + + public bool IsPushRefreshUsed { get; set; } = false; + /// /// Checks whether any tracing feature is used. /// From 9983e256506c692c00c55ced8ce4988cbb2b28dd Mon Sep 17 00:00:00 2001 From: AMER JUSUPOVIC Date: Thu, 13 Feb 2025 12:53:22 -0800 Subject: [PATCH 2/4] complete adding ispushrefreshused logic --- .../AzureAppConfigurationProvider.cs | 2 +- .../Constants/RequestTracingConstants.cs | 1 + .../RequestTracingOptions.cs | 2 +- .../TracingUtils.cs | 5 +++++ 4 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/AzureAppConfigurationProvider.cs b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/AzureAppConfigurationProvider.cs index 3e7caa4c..bce445a5 100644 --- a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/AzureAppConfigurationProvider.cs +++ b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/AzureAppConfigurationProvider.cs @@ -550,7 +550,7 @@ public void ProcessPushNotification(PushNotification pushNotification, TimeSpan? { if (_requestTracingEnabled && _requestTracingOptions != null) { - + _requestTracingOptions.IsPushRefreshUsed = true; } SetDirty(maxDelay); diff --git a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/Constants/RequestTracingConstants.cs b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/Constants/RequestTracingConstants.cs index 1084c274..8600beaf 100644 --- a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/Constants/RequestTracingConstants.cs +++ b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/Constants/RequestTracingConstants.cs @@ -33,6 +33,7 @@ internal class RequestTracingConstants public const string LoadBalancingEnabledTag = "LB"; public const string SignalRUsedTag = "SignalR"; public const string FailoverRequestTag = "Failover"; + public const string PushRefreshUsedTag = "PushRefresh"; public const string FeatureFlagFilterTypeKey = "Filter"; public const string CustomFilter = "CSTM"; diff --git a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/RequestTracingOptions.cs b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/RequestTracingOptions.cs index 5125f944..27b10e72 100644 --- a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/RequestTracingOptions.cs +++ b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/RequestTracingOptions.cs @@ -64,7 +64,7 @@ internal class RequestTracingOptions public bool IsFailoverRequest { get; set; } = false; /// - /// Flag to indicate whether + /// Flag to indicate whether push refresh is used. /// public bool IsPushRefreshUsed { get; set; } = false; diff --git a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/TracingUtils.cs b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/TracingUtils.cs index b1b2b196..1e696951 100644 --- a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/TracingUtils.cs +++ b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/TracingUtils.cs @@ -201,6 +201,11 @@ private static string CreateCorrelationContextHeader(RequestType requestType, Re correlationContextTags.Add(RequestTracingConstants.FailoverRequestTag); } + if (requestTracingOptions.IsPushRefreshUsed) + { + correlationContextTags.Add(RequestTracingConstants.PushRefreshUsedTag); + } + var sb = new StringBuilder(); foreach (KeyValuePair kvp in correlationContextKeyValues) From 5fe4a16c45460ca19b01008f25cc813070ac7a94 Mon Sep 17 00:00:00 2001 From: AMER JUSUPOVIC Date: Fri, 21 Feb 2025 11:05:27 -0800 Subject: [PATCH 3/4] rename pushrefresh tag string --- .../Constants/RequestTracingConstants.cs | 2 +- .../TracingUtils.cs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/Constants/RequestTracingConstants.cs b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/Constants/RequestTracingConstants.cs index 8600beaf..f732ab95 100644 --- a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/Constants/RequestTracingConstants.cs +++ b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/Constants/RequestTracingConstants.cs @@ -33,7 +33,7 @@ internal class RequestTracingConstants public const string LoadBalancingEnabledTag = "LB"; public const string SignalRUsedTag = "SignalR"; public const string FailoverRequestTag = "Failover"; - public const string PushRefreshUsedTag = "PushRefresh"; + public const string PushRefreshTag = "PushRefresh"; public const string FeatureFlagFilterTypeKey = "Filter"; public const string CustomFilter = "CSTM"; diff --git a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/TracingUtils.cs b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/TracingUtils.cs index 1e696951..b3e12913 100644 --- a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/TracingUtils.cs +++ b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/TracingUtils.cs @@ -203,7 +203,7 @@ private static string CreateCorrelationContextHeader(RequestType requestType, Re if (requestTracingOptions.IsPushRefreshUsed) { - correlationContextTags.Add(RequestTracingConstants.PushRefreshUsedTag); + correlationContextTags.Add(RequestTracingConstants.PushRefreshTag); } var sb = new StringBuilder(); From 2901fbfa41bf4ca9f20b86f138897697f5eb4e2e Mon Sep 17 00:00:00 2001 From: AMER JUSUPOVIC Date: Mon, 24 Feb 2025 13:16:01 -0800 Subject: [PATCH 4/4] remove empty line --- .../RequestTracingOptions.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/RequestTracingOptions.cs b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/RequestTracingOptions.cs index 27b10e72..bd8b7582 100644 --- a/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/RequestTracingOptions.cs +++ b/src/Microsoft.Extensions.Configuration.AzureAppConfiguration/RequestTracingOptions.cs @@ -66,7 +66,6 @@ internal class RequestTracingOptions /// /// Flag to indicate whether push refresh is used. /// - public bool IsPushRefreshUsed { get; set; } = false; ///