Microsoft.Extensions.Diagnostics.HealthChecks故障消息

时间:2020-01-23 21:21:25

标签: asp.net-core diagnostics health-monitoring

Asp.Net Core 2.2.0

对于失败的健康检查,如何返回

例如:

using Microsoft.Extensions.Diagnostics.HealthChecks;

public class SqlConnectionHealthCheck : IHealthCheck
{
    public async Task<HealthCheckResult> CheckHealthAsync(HealthCheckContext context, CancellationToken cancellationToken = default(CancellationToken))
    {
        try
        {
            // attempt connection to db
        }
        catch(DbException ex)
        {
            return new HealthCheckResult(status: context.Registration.FailureStatus, exception: ex);
        }

如果失败,浏览器将显示Unhealthy

如何显示异常消息和堆栈跟踪?

1 个答案:

答案 0 :(得分:0)

如何显示异常消息

// one option:
catch(DbException ex)
{
    return new HealthCheckResult(status: context.Registration.FailureStatus, description: exception.Message, exception: ex);
}

和堆栈跟踪

确定要这样做吗?