45 lines
1.4 KiB
C#
45 lines
1.4 KiB
C#
/****************************************************************
|
||
* 作者:liuzl
|
||
* 版权:PCXBC
|
||
* 创建时间:2022/8/16 14:14:42
|
||
* 描述说明:
|
||
*
|
||
* 修改标识:PC-2022
|
||
* 修改描述:
|
||
*
|
||
*****************************************************************/
|
||
|
||
using Microsoft.Extensions.Diagnostics.HealthChecks;
|
||
|
||
namespace YB.DeviceV2.HealthCheck
|
||
{
|
||
/// <summary>
|
||
/// 管理后台健康检查
|
||
/// </summary>
|
||
public class AdminHealthCheck : IHealthCheck
|
||
{
|
||
private readonly IHttpClientFactory _httpClientFactory;
|
||
|
||
public AdminHealthCheck(IHttpClientFactory httpClientFactory)
|
||
{
|
||
_httpClientFactory = httpClientFactory;
|
||
}
|
||
|
||
/// <summary>
|
||
/// 健康检查
|
||
/// </summary>
|
||
/// <param name="context"></param>
|
||
/// <param name="cancellationToken"></param>
|
||
/// <returns></returns>
|
||
public async Task<HealthCheckResult> CheckHealthAsync(HealthCheckContext context, CancellationToken cancellationToken = default)
|
||
{
|
||
var httpClient = _httpClientFactory.CreateClient();
|
||
var response = await httpClient.GetAsync("http://ybdevice.pcxbc.com");
|
||
if (response.IsSuccessStatusCode)
|
||
{
|
||
return HealthCheckResult.Healthy("管理后台访问正常");
|
||
}
|
||
return HealthCheckResult.Unhealthy("管理后台访问失败");
|
||
}
|
||
}
|
||
} |