Microsoft.Extensions.Diagnostics.HealthChecks.ResourceUtilization
9.0.0
Prefix Reserved
dotnet add package Microsoft.Extensions.Diagnostics.HealthChecks.ResourceUtilization --version 9.0.0
NuGet\Install-Package Microsoft.Extensions.Diagnostics.HealthChecks.ResourceUtilization -Version 9.0.0
<PackageReference Include="Microsoft.Extensions.Diagnostics.HealthChecks.ResourceUtilization" Version="9.0.0" />
paket add Microsoft.Extensions.Diagnostics.HealthChecks.ResourceUtilization --version 9.0.0
#r "nuget: Microsoft.Extensions.Diagnostics.HealthChecks.ResourceUtilization, 9.0.0"
// Install Microsoft.Extensions.Diagnostics.HealthChecks.ResourceUtilization as a Cake Addin #addin nuget:?package=Microsoft.Extensions.Diagnostics.HealthChecks.ResourceUtilization&version=9.0.0 // Install Microsoft.Extensions.Diagnostics.HealthChecks.ResourceUtilization as a Cake Tool #tool nuget:?package=Microsoft.Extensions.Diagnostics.HealthChecks.ResourceUtilization&version=9.0.0
Microsoft.Extensions.Diagnostics.HealthChecks.ResourceUtilization
This provides configurable health check reporting based on the current system resource utilization. See Microsoft.Extensions.Diagnostics.ResourceMonitoring
for details on how resources are measured. See the health checks documentation for general usage guidance.
Install the package
From the command-line:
dotnet add package Microsoft.Extensions.Diagnostics.HealthChecks.ResourceUtilization
Or directly in the C# project file:
<ItemGroup>
<PackageReference Include="Microsoft.Extensions.Diagnostics.HealthChecks.ResourceUtilization" Version="[CURRENTVERSION]" />
</ItemGroup>
Usage Example
The health check services can be registered and configured using any of the following API:
public static IHealthChecksBuilder AddResourceUtilizationHealthCheck(this IHealthChecksBuilder builder, params string[] tags)
public static IHealthChecksBuilder AddResourceUtilizationHealthCheck(this IHealthChecksBuilder builder, IEnumerable<string> tags)
public static IHealthChecksBuilder AddResourceUtilizationHealthCheck(this IHealthChecksBuilder builder, IConfigurationSection section)
public static IHealthChecksBuilder AddResourceUtilizationHealthCheck(this IHealthChecksBuilder builder, IConfigurationSection section, params string[] tags)
public static IHealthChecksBuilder AddResourceUtilizationHealthCheck(this IHealthChecksBuilder builder, IConfigurationSection section, IEnumerable<string> tags)
public static IHealthChecksBuilder AddResourceUtilizationHealthCheck(this IHealthChecksBuilder builder, Action<ResourceUtilizationHealthCheckOptions> configure)
public static IHealthChecksBuilder AddResourceUtilizationHealthCheck(this IHealthChecksBuilder builder, Action<ResourceUtilizationHealthCheckOptions> configure, params string[] tags)
public static IHealthChecksBuilder AddResourceUtilizationHealthCheck(this IHealthChecksBuilder builder, Action<ResourceUtilizationHealthCheckOptions> configure, IEnumerable<string> tags)
For example:
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddHealthChecks()
.AddResourceUtilizationHealthCheck(o =>
{
o.CpuThresholds = new ResourceUsageThresholds
{
DegradedUtilizationPercentage = 80,
UnhealthyUtilizationPercentage = 90,
};
o.MemoryThresholds = new ResourceUsageThresholds
{
DegradedUtilizationPercentage = 80,
UnhealthyUtilizationPercentage = 90,
};
o.SamplingWindow = TimeSpan.FromSeconds(5);
});
var app = builder.Build();
app.MapHealthChecks("/healthz");
app.Run();
CpuThresholds
and MemoryThresholds
's percentages default to null
and will not be reported as degraded or unhealthy unless configured. The SamplingWindow
defaults to 5 seconds.
Feedback & Contributing
We welcome feedback and contributions in our GitHub repo.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. |
.NET Framework | net462 is compatible. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
-
.NETFramework 4.6.2
- Microsoft.Extensions.Configuration.Binder (>= 8.0.2)
- Microsoft.Extensions.Diagnostics.HealthChecks (>= 8.0.11)
- Microsoft.Extensions.Diagnostics.ResourceMonitoring (>= 9.0.0)
-
net8.0
- Microsoft.Extensions.Configuration.Binder (>= 8.0.2)
- Microsoft.Extensions.Diagnostics.HealthChecks (>= 8.0.11)
- Microsoft.Extensions.Diagnostics.ResourceMonitoring (>= 9.0.0)
-
net9.0
- Microsoft.Extensions.Configuration.Binder (>= 9.0.0)
- Microsoft.Extensions.Diagnostics.HealthChecks (>= 9.0.0)
- Microsoft.Extensions.Diagnostics.ResourceMonitoring (>= 9.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on Microsoft.Extensions.Diagnostics.HealthChecks.ResourceUtilization:
Repository | Stars |
---|---|
mehdihadeli/food-delivery-microservices
🍔 A practical and imaginary food delivery microservices, built with .Net 8, MassTransit, Domain-Driven Design, CQRS, Vertical Slice Architecture, Event-Driven Architecture, and the latest technologies.
|
Version | Downloads | Last updated |
---|---|---|
9.0.0 | 1,010 | 11/12/2024 |
9.0.0-preview.9.24507.7 | 503 | 10/8/2024 |
9.0.0-preview.8.24460.1 | 77 | 9/10/2024 |
9.0.0-preview.7.24412.10 | 89 | 8/14/2024 |
9.0.0-preview.6.24353.1 | 153 | 7/10/2024 |
9.0.0-preview.5.24311.7 | 86 | 6/11/2024 |
9.0.0-preview.4.24271.2 | 91 | 5/21/2024 |
9.0.0-preview.3.24209.3 | 133 | 4/11/2024 |
9.0.0-preview.2.24157.4 | 105 | 3/12/2024 |
9.0.0-preview.1.24108.1 | 102 | 2/13/2024 |
8.10.0 | 13,048 | 10/8/2024 |
8.9.1 | 8,057 | 9/6/2024 |
8.9.0 | 1,419 | 9/5/2024 |
8.8.0 | 12,423 | 8/13/2024 |
8.7.0 | 10,713 | 7/10/2024 |
8.6.0 | 3,642 | 6/11/2024 |
8.5.0 | 81,405 | 5/14/2024 |
8.4.0 | 3,869 | 4/9/2024 |
8.3.0 | 2,110 | 3/12/2024 |
8.2.0 | 2,663 | 2/13/2024 |
8.1.0 | 2,014 | 1/9/2024 |
8.0.0 | 5,209 | 11/14/2023 |
8.0.0-rc.2.23510.2 | 197 | 10/10/2023 |
8.0.0-rc.1.23453.1 | 133 | 9/12/2023 |
8.0.0-preview.7.23407.5 | 109 | 8/8/2023 |
8.0.0-preview.6.23360.2 | 125 | 7/12/2023 |
8.0.0-preview.5.23308.3 | 90 | 6/14/2023 |
8.0.0-preview.4.23273.7 | 103 | 5/23/2023 |