没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
.Net Core实现健康检查的示例代码实现健康检查的示例代码
主要介绍了.Net Core实现健康检查的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一
定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
ASP.NET Core 提供运行状况检查中间件和库,以用于报告应用基础结构组件的运行状况。
运行状况检查由应用程序作为 HTTP 终结点公开。 可以为各种实时监视方案配置运行状况检查终结点:
运行状况探测可以由容器业务流程协调程和负载均衡器用于检查应用的状态。 例如,容器业务流程协调程序可以通过停止滚
动部署或重新启动容器来响应失败的运行状况检查。 负载均衡器可以通过将流量从失败的实例路由到正常实例,来应对不正
常的应用。
可以监视内存、磁盘和其他物理服务器资源的使用情况来了解是否处于正常状态。
运行状况检查可以测试应用的依赖项(如数据库和外部服务终结点)以确认是否可用和正常工作。
这个示例展示数据库的运行状态,他在其验证数据库连接并返回相应的结果
[Route("health")]
public ActionResult Health()
{
using (var connection = new SqlConnection("Server=.;Initial Catalog=master;Integrated Security=true"))
{
try
{
connection.Open();
}
catch (SqlException)
{
return new StatusCodeResult(503);
}
}
return new EmptyResult();
}
当我们请求该地址的时候时,如果连接到数据库时出现任何连接问题,它将显示一条包含200状态代码和503状态代码的空消息。
现在基于这些结果状态码,我们可以监视系统采取相关的操作。
从.NET Core2.2开始,我们不需要为运行状态在去自定义检查控制器和接口,而是框架本身已经为我们提供了运行状况的检查服
务。
安装和运行安装和运行
Install-Package Microsoft.Extensions.Diagnostics.HealthChecks
安装后,我们需要在Startup.cs文件的ConfigureServices()和Configure()方法中添加。
public void ConfigureServices(IServiceCollection services)
{
services.AddHealthChecks();
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
app
.UseHealthChecks("/health");
}
我们在configure()方法中配置完端点后,我们就可以通过 /health 来请求查看我们的应用程序的健康程度的。
但是这样对于我们刚才的需求是满足不了的,那么我们如何自定义我们的健康度检查呢?
两种方式来处理
option 1
public void ConfigureServices(IServiceCollection services)
{
services.AddHealthChecks()
.AddCheck("sql", () =>
{
using (var connection = new SqlConnection("Server=.;Initial Catalog=master;Integrated Security=true"))
资源评论
weixin_38672794
- 粉丝: 5
- 资源: 924
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功