NETCORE - 健康检查health
NETCORE - 健康检查health
环境 .net8
需求在 项目里面 添加健康检查
1. 添加nuget包:
Microsoft.Extensions.Diagnostics.HealthChecks

2. 注入
在 Program.cs 里面
// 添加健康检查 builder.Services.AddHealthChecks() .AddCheck("self", () => HealthCheckResult.Healthy()); // 应用自身检查 app.MapHealthChecks("/health");
3. 测试
访问项目,我项目端口为87096 :https://localhost:7096/Health

4. 可视化前端面板
增加 Nuget 包
AspNetCore.HealthChecks.UI
AspNetCore.HealthChecks.UI.Client
AspNetCore.HealthChecks.UI.InMemory.Storage
AspNetCore.HealthChecks.MySql
在 Program.cs 里面注入
// 添加健康检查
builder.Services.AddHealthChecks()
.AddCheck("self", () => HealthCheckResult.Healthy()); // 应用自身检查
// 添加 HealthChecks UI,使用内存存储
builder.Services.AddHealthChecksUI(setup =>
{
setup.AddHealthCheckEndpoint("Self", "/health"); // UI 读取 /health
}).AddInMemoryStorage();
// 注册健康检查端点
app.MapHealthChecks("/health", new HealthCheckOptions
{
ResponseWriter = UIResponseWriter.WriteHealthCheckUIResponse
});
app.MapHealthChecksUI(options =>
{
options.UIPath = "/health-ui"; // 健康检查 UI 路径
});
测试


这里报错:The SSL connection could not be established, see inner exception.,改成 http 方式就好了。
注:如项目中使用 log4net ,健康检查的UI组件 10秒钟写入6条空行数据。建议不使用这个UI
end.

浙公网安备 33010602011771号