From 530c3b5cc0b0bafaf9f22cafd78ba867c31a387f Mon Sep 17 00:00:00 2001 From: amadeuszl Date: Mon, 2 Feb 2026 11:49:21 +0100 Subject: [PATCH 1/5] Move Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes to stable --- ...ions.Diagnostics.ResourceMonitoring.Kubernetes.csproj | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.csproj b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.csproj index a60a0e4d505..9ad59f2472f 100644 --- a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.csproj +++ b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.csproj @@ -7,14 +7,9 @@ - true - - - - dev - EXTEXP0016 + stable 99 - 90 + 95 From 76fd224cef426052c0936727460e54e203c3da6b Mon Sep 17 00:00:00 2001 From: amadeuszl Date: Mon, 2 Feb 2026 12:36:48 +0100 Subject: [PATCH 2/5] Disable EnablePackageValidation --- ...t.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.csproj | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.csproj b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.csproj index 9ad59f2472f..834a21b4493 100644 --- a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.csproj +++ b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.csproj @@ -10,6 +10,7 @@ stable 99 95 + false From 69824a1af38da63f9e7deabe5f8cc694890914ba Mon Sep 17 00:00:00 2001 From: Amadeusz Lechniak Date: Mon, 2 Feb 2026 12:37:47 +0100 Subject: [PATCH 3/5] Update src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.csproj Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- ....Extensions.Diagnostics.ResourceMonitoring.Kubernetes.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.csproj b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.csproj index 834a21b4493..e66e3a6f558 100644 --- a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.csproj +++ b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.csproj @@ -7,7 +7,7 @@ - stable + normal 99 95 false From fdd37a3ecc89fc4d897ff882bdea4ba4483fc844 Mon Sep 17 00:00:00 2001 From: amadeuszl Date: Tue, 3 Feb 2026 09:12:13 +0100 Subject: [PATCH 4/5] Add suppression file --- .../CompatibilitySuppressionFile.xml | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/CompatibilitySuppressionFile.xml diff --git a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/CompatibilitySuppressionFile.xml b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/CompatibilitySuppressionFile.xml new file mode 100644 index 00000000000..9bd8f7fbbcb --- /dev/null +++ b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/CompatibilitySuppressionFile.xml @@ -0,0 +1,31 @@ + + + + CP0001 + T:Microsoft.Extensions.DependencyInjection.KubernetesResourceQuotaServiceCollectionExtensions + lib/net462/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.dll + lib/net462/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.dll + true + + + CP0001 + T:Microsoft.Extensions.DependencyInjection.KubernetesResourceQuotaServiceCollectionExtensions + lib/net8.0/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.dll + lib/net8.0/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.dll + true + + + CP0001 + T:Microsoft.Extensions.DependencyInjection.KubernetesResourceQuotaServiceCollectionExtensions + lib/net9.0/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.dll + lib/net9.0/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.dll + true + + + CP0001 + T:Microsoft.Extensions.DependencyInjection.KubernetesResourceQuotaServiceCollectionExtensions + lib/net10.0/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.dll + lib/net10.0/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.dll + true + + \ No newline at end of file From 929aa0820d39e7921034187e98d17b97b6739781 Mon Sep 17 00:00:00 2001 From: amadeuszl Date: Wed, 4 Feb 2026 14:47:25 +0100 Subject: [PATCH 5/5] Run ApiChief on ResourceMonitoring libs --- ...nostics.ResourceMonitoring.Kubernetes.json | 15 ++ .../ISnapshotProvider.cs | 2 - ...nsions.Diagnostics.ResourceMonitoring.json | 166 ++++++++++++++---- .../ResourceQuota.cs | 4 - .../ResourceQuotaProvider.cs | 4 - .../Snapshot.cs | 1 - 6 files changed, 151 insertions(+), 41 deletions(-) diff --git a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.json b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.json index e69de29bb2d..f6b997eac9f 100644 --- a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.json +++ b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes/Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes.json @@ -0,0 +1,15 @@ +{ + "Name": "Microsoft.Extensions.Diagnostics.ResourceMonitoring.Kubernetes, Version=10.3.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35", + "Types": [ + { + "Type": "static class Microsoft.Extensions.DependencyInjection.KubernetesResourceQuotaServiceCollectionExtensions", + "Stage": "Stable", + "Methods": [ + { + "Member": "static Microsoft.Extensions.DependencyInjection.IServiceCollection Microsoft.Extensions.DependencyInjection.KubernetesResourceQuotaServiceCollectionExtensions.AddKubernetesResourceMonitoring(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, string? environmentVariablePrefix = null);", + "Stage": "Stable" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/ISnapshotProvider.cs b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/ISnapshotProvider.cs index a143724b4b8..0c2a0a657c7 100644 --- a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/ISnapshotProvider.cs +++ b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/ISnapshotProvider.cs @@ -2,7 +2,6 @@ // The .NET Foundation licenses this file to you under the MIT license. using System; -using System.Diagnostics.CodeAnalysis; using Microsoft.Shared.DiagnosticIds; namespace Microsoft.Extensions.Diagnostics.ResourceMonitoring; @@ -10,7 +9,6 @@ namespace Microsoft.Extensions.Diagnostics.ResourceMonitoring; /// /// An interface to be implemented by a provider that represents an underlying system and gets resources data about it. /// -[Experimental(diagnosticId: DiagnosticIds.Experiments.ResourceMonitoring, UrlFormat = DiagnosticIds.UrlFormat)] [Obsolete(DiagnosticIds.Obsoletions.NonObservableResourceMonitoringApiMessage, DiagnosticId = DiagnosticIds.Obsoletions.NonObservableResourceMonitoringApiDiagId, UrlFormat = DiagnosticIds.UrlFormat)] diff --git a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/Microsoft.Extensions.Diagnostics.ResourceMonitoring.json b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/Microsoft.Extensions.Diagnostics.ResourceMonitoring.json index f20b3d49685..fa50043b6e5 100644 --- a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/Microsoft.Extensions.Diagnostics.ResourceMonitoring.json +++ b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/Microsoft.Extensions.Diagnostics.ResourceMonitoring.json @@ -1,53 +1,69 @@ { - "Name": "Microsoft.Extensions.Diagnostics.ResourceMonitoring, Version=8.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35", + "Name": "Microsoft.Extensions.Diagnostics.ResourceMonitoring, Version=10.3.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35", "Types": [ { "Type": "interface Microsoft.Extensions.Diagnostics.ResourceMonitoring.IResourceMonitor", - "Stage": "Stable", + "Stage": "Obsolete", "Methods": [ { "Member": "Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceUtilization Microsoft.Extensions.Diagnostics.ResourceMonitoring.IResourceMonitor.GetUtilization(System.TimeSpan window);", - "Stage": "Stable" + "Stage": "Obsolete" } ] }, { "Type": "interface Microsoft.Extensions.Diagnostics.ResourceMonitoring.IResourceMonitorBuilder", - "Stage": "Stable", + "Stage": "Obsolete", "Methods": [ { "Member": "Microsoft.Extensions.Diagnostics.ResourceMonitoring.IResourceMonitorBuilder Microsoft.Extensions.Diagnostics.ResourceMonitoring.IResourceMonitorBuilder.AddPublisher();", - "Stage": "Stable" + "Stage": "Obsolete" } ], "Properties": [ { "Member": "Microsoft.Extensions.DependencyInjection.IServiceCollection Microsoft.Extensions.Diagnostics.ResourceMonitoring.IResourceMonitorBuilder.Services { get; }", - "Stage": "Stable" + "Stage": "Obsolete" } ] }, { "Type": "interface Microsoft.Extensions.Diagnostics.ResourceMonitoring.IResourceUtilizationPublisher", - "Stage": "Stable", + "Stage": "Obsolete", "Methods": [ { "Member": "System.Threading.Tasks.ValueTask Microsoft.Extensions.Diagnostics.ResourceMonitoring.IResourceUtilizationPublisher.PublishAsync(Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceUtilization utilization, System.Threading.CancellationToken cancellationToken);", - "Stage": "Stable" + "Stage": "Obsolete" + } + ] + }, + { + "Type": "interface Microsoft.Extensions.Diagnostics.ResourceMonitoring.ISnapshotProvider", + "Stage": "Obsolete", + "Methods": [ + { + "Member": "Microsoft.Extensions.Diagnostics.ResourceMonitoring.Snapshot Microsoft.Extensions.Diagnostics.ResourceMonitoring.ISnapshotProvider.GetSnapshot();", + "Stage": "Obsolete" + } + ], + "Properties": [ + { + "Member": "Microsoft.Extensions.Diagnostics.ResourceMonitoring.SystemResources Microsoft.Extensions.Diagnostics.ResourceMonitoring.ISnapshotProvider.Resources { get; }", + "Stage": "Obsolete" } ] }, { "Type": "static class Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceMonitoringBuilderExtensions", - "Stage": "Stable", + "Stage": "Obsolete", "Methods": [ { "Member": "static Microsoft.Extensions.Diagnostics.ResourceMonitoring.IResourceMonitorBuilder Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceMonitoringBuilderExtensions.ConfigureMonitor(this Microsoft.Extensions.Diagnostics.ResourceMonitoring.IResourceMonitorBuilder builder, System.Action configure);", - "Stage": "Stable" + "Stage": "Obsolete" }, { "Member": "static Microsoft.Extensions.Diagnostics.ResourceMonitoring.IResourceMonitorBuilder Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceMonitoringBuilderExtensions.ConfigureMonitor(this Microsoft.Extensions.Diagnostics.ResourceMonitoring.IResourceMonitorBuilder builder, Microsoft.Extensions.Configuration.IConfigurationSection section);", - "Stage": "Stable" + "Stage": "Obsolete" } ] }, @@ -63,27 +79,39 @@ "Properties": [ { "Member": "System.TimeSpan Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceMonitoringOptions.CollectionWindow { get; set; }", - "Stage": "Stable" + "Stage": "Obsolete" }, { "Member": "System.TimeSpan Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceMonitoringOptions.CpuConsumptionRefreshInterval { get; set; }", - "Stage": "Stable" + "Stage": "Obsolete" + }, + { + "Member": "bool Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceMonitoringOptions.EnableSystemDiskIoMetrics { get; set; }", + "Stage": "Experimental" }, { "Member": "System.TimeSpan Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceMonitoringOptions.MemoryConsumptionRefreshInterval { get; set; }", - "Stage": "Stable" + "Stage": "Obsolete" }, { "Member": "System.TimeSpan Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceMonitoringOptions.PublishingWindow { get; set; }", - "Stage": "Stable" + "Stage": "Obsolete" }, { "Member": "System.TimeSpan Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceMonitoringOptions.SamplingInterval { get; set; }", - "Stage": "Stable" + "Stage": "Obsolete" }, { "Member": "System.Collections.Generic.ISet Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceMonitoringOptions.SourceIpAddresses { get; set; }", "Stage": "Stable" + }, + { + "Member": "bool Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceMonitoringOptions.UseLinuxCalculationV2 { get; set; }", + "Stage": "Experimental" + }, + { + "Member": "bool Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceMonitoringOptions.UseZeroToOneRangeForMetrics { get; set; }", + "Stage": "Experimental" } ] }, @@ -97,71 +125,149 @@ }, { "Member": "static Microsoft.Extensions.DependencyInjection.IServiceCollection Microsoft.Extensions.DependencyInjection.ResourceMonitoringServiceCollectionExtensions.AddResourceMonitoring(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.Action configure);", + "Stage": "Obsolete" + } + ] + }, + { + "Type": "sealed class Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceQuota", + "Stage": "Stable", + "Methods": [ + { + "Member": "Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceQuota.ResourceQuota();", + "Stage": "Stable" + } + ], + "Properties": [ + { + "Member": "double Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceQuota.BaselineCpuInCores { get; set; }", + "Stage": "Stable" + }, + { + "Member": "ulong Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceQuota.BaselineMemoryInBytes { get; set; }", + "Stage": "Stable" + }, + { + "Member": "double Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceQuota.MaxCpuInCores { get; set; }", + "Stage": "Stable" + }, + { + "Member": "ulong Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceQuota.MaxMemoryInBytes { get; set; }", "Stage": "Stable" } ] }, { - "Type": "readonly struct Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceUtilization", + "Type": "abstract class Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceQuotaProvider", "Stage": "Stable", "Methods": [ { - "Member": "Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceUtilization.ResourceUtilization(double cpuUsedPercentage, ulong memoryUsedInBytes, Microsoft.Extensions.Diagnostics.ResourceMonitoring.SystemResources systemResources);", + "Member": "Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceQuotaProvider.ResourceQuotaProvider();", "Stage": "Stable" }, { - "Member": "Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceUtilization.ResourceUtilization();", + "Member": "abstract Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceQuota Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceQuotaProvider.GetResourceQuota();", "Stage": "Stable" } + ] + }, + { + "Type": "readonly struct Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceUtilization", + "Stage": "Obsolete", + "Methods": [ + { + "Member": "Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceUtilization.ResourceUtilization(double cpuUsedPercentage, ulong memoryUsedInBytes, Microsoft.Extensions.Diagnostics.ResourceMonitoring.SystemResources systemResources);", + "Stage": "Obsolete" + }, + { + "Member": "Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceUtilization.ResourceUtilization();", + "Stage": "Obsolete" + } ], "Properties": [ { "Member": "double Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceUtilization.CpuUsedPercentage { get; }", - "Stage": "Stable" + "Stage": "Obsolete" }, { "Member": "ulong Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceUtilization.MemoryUsedInBytes { get; }", - "Stage": "Stable" + "Stage": "Obsolete" }, { "Member": "double Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceUtilization.MemoryUsedPercentage { get; }", - "Stage": "Stable" + "Stage": "Obsolete" + }, + { + "Member": "Microsoft.Extensions.Diagnostics.ResourceMonitoring.Snapshot Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceUtilization.Snapshot { get; }", + "Stage": "Experimental" }, { "Member": "Microsoft.Extensions.Diagnostics.ResourceMonitoring.SystemResources Microsoft.Extensions.Diagnostics.ResourceMonitoring.ResourceUtilization.SystemResources { get; }", - "Stage": "Stable" + "Stage": "Obsolete" + } + ] + }, + { + "Type": "readonly struct Microsoft.Extensions.Diagnostics.ResourceMonitoring.Snapshot", + "Stage": "Obsolete", + "Methods": [ + { + "Member": "Microsoft.Extensions.Diagnostics.ResourceMonitoring.Snapshot.Snapshot(System.TimeSpan totalTimeSinceStart, System.TimeSpan kernelTimeSinceStart, System.TimeSpan userTimeSinceStart, ulong memoryUsageInBytes);", + "Stage": "Obsolete" + }, + { + "Member": "Microsoft.Extensions.Diagnostics.ResourceMonitoring.Snapshot.Snapshot();", + "Stage": "Obsolete" + } + ], + "Properties": [ + { + "Member": "System.TimeSpan Microsoft.Extensions.Diagnostics.ResourceMonitoring.Snapshot.KernelTimeSinceStart { get; }", + "Stage": "Obsolete" + }, + { + "Member": "ulong Microsoft.Extensions.Diagnostics.ResourceMonitoring.Snapshot.MemoryUsageInBytes { get; }", + "Stage": "Obsolete" + }, + { + "Member": "System.TimeSpan Microsoft.Extensions.Diagnostics.ResourceMonitoring.Snapshot.TotalTimeSinceStart { get; }", + "Stage": "Obsolete" + }, + { + "Member": "System.TimeSpan Microsoft.Extensions.Diagnostics.ResourceMonitoring.Snapshot.UserTimeSinceStart { get; }", + "Stage": "Obsolete" } ] }, { "Type": "readonly struct Microsoft.Extensions.Diagnostics.ResourceMonitoring.SystemResources", - "Stage": "Stable", + "Stage": "Obsolete", "Methods": [ { "Member": "Microsoft.Extensions.Diagnostics.ResourceMonitoring.SystemResources.SystemResources(double guaranteedCpuUnits, double maximumCpuUnits, ulong guaranteedMemoryInBytes, ulong maximumMemoryInBytes);", - "Stage": "Stable" + "Stage": "Obsolete" }, { "Member": "Microsoft.Extensions.Diagnostics.ResourceMonitoring.SystemResources.SystemResources();", - "Stage": "Stable" + "Stage": "Obsolete" } ], "Properties": [ { "Member": "double Microsoft.Extensions.Diagnostics.ResourceMonitoring.SystemResources.GuaranteedCpuUnits { get; }", - "Stage": "Stable" + "Stage": "Obsolete" }, { "Member": "ulong Microsoft.Extensions.Diagnostics.ResourceMonitoring.SystemResources.GuaranteedMemoryInBytes { get; }", - "Stage": "Stable" + "Stage": "Obsolete" }, { "Member": "double Microsoft.Extensions.Diagnostics.ResourceMonitoring.SystemResources.MaximumCpuUnits { get; }", - "Stage": "Stable" + "Stage": "Obsolete" }, { "Member": "ulong Microsoft.Extensions.Diagnostics.ResourceMonitoring.SystemResources.MaximumMemoryInBytes { get; }", - "Stage": "Stable" + "Stage": "Obsolete" } ] } diff --git a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/ResourceQuota.cs b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/ResourceQuota.cs index d5131923637..0f1c1e03a08 100644 --- a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/ResourceQuota.cs +++ b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/ResourceQuota.cs @@ -1,9 +1,6 @@ // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. -using System.Diagnostics.CodeAnalysis; -using Microsoft.Shared.DiagnosticIds; - namespace Microsoft.Extensions.Diagnostics.ResourceMonitoring; /// @@ -15,7 +12,6 @@ namespace Microsoft.Extensions.Diagnostics.ResourceMonitoring; /// /// Max values will be emitted by limit metrics, and baseline values will be emmited by request metrics. /// -[Experimental(diagnosticId: DiagnosticIds.Experiments.ResourceMonitoring, UrlFormat = DiagnosticIds.UrlFormat)] public sealed class ResourceQuota { /// diff --git a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/ResourceQuotaProvider.cs b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/ResourceQuotaProvider.cs index b7b7ce1eaa2..4ef6c434dc7 100644 --- a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/ResourceQuotaProvider.cs +++ b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/ResourceQuotaProvider.cs @@ -1,9 +1,6 @@ // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. -using System.Diagnostics.CodeAnalysis; -using Microsoft.Shared.DiagnosticIds; - namespace Microsoft.Extensions.Diagnostics.ResourceMonitoring; /// @@ -15,7 +12,6 @@ namespace Microsoft.Extensions.Diagnostics.ResourceMonitoring; /// resource management systems, or other runtime constraints. /// #pragma warning disable S1694 // An abstract class should have both abstract and concrete methods. It's for better .NET Framework support, to have more flexible API if we add more methods here. -[Experimental(diagnosticId: DiagnosticIds.Experiments.ResourceMonitoring, UrlFormat = DiagnosticIds.UrlFormat)] public abstract class ResourceQuotaProvider #pragma warning restore S1694 // An abstract class should have both abstract and concrete methods { diff --git a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/Snapshot.cs b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/Snapshot.cs index 174a46ebb6a..c160ef3aeb6 100644 --- a/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/Snapshot.cs +++ b/src/Libraries/Microsoft.Extensions.Diagnostics.ResourceMonitoring/Snapshot.cs @@ -12,7 +12,6 @@ namespace Microsoft.Extensions.Diagnostics.ResourceMonitoring; /// A snapshot of CPU and memory usage taken periodically over time. /// [SuppressMessage("Performance", "CA1815:Override equals and operator equals on value types", Justification = "Comparing instances is not an expected scenario")] -[Experimental(diagnosticId: DiagnosticIds.Experiments.ResourceMonitoring, UrlFormat = DiagnosticIds.UrlFormat)] [Obsolete(DiagnosticIds.Obsoletions.NonObservableResourceMonitoringApiMessage, DiagnosticId = DiagnosticIds.Obsoletions.NonObservableResourceMonitoringApiDiagId, UrlFormat = DiagnosticIds.UrlFormat)]