Zac*_*ins 9 c# asp.net-core health-check
我到处查看,但我假设这是一种较旧的做事方式,但是将运行状况检查端点添加到中间件是否有更深层的区别?
In Startup.Configure()..
app.UseEndpoints(endpoints =>
{
endpoints.MapHealthChecks("/health");
});
Run Code Online (Sandbox Code Playgroud)
app.UseHealthChecks("/health")
Run Code Online (Sandbox Code Playgroud)
hex*_*tor 17
UseHealthChecks并且MapHealthChecks有细微的区别,UseHealthChecks允许您在使用 null 或空 PathString 时捕获端口上的任何端点,MapHealthChecks不允许这样做,使用 null 会引发异常,而空字符串只是相当于/.
HealthCheckMiddleware他们都在幕后使用相同的中间件。是MapHealthChecks的扩展方法IEndpointRouteBuilder,而UseHealthChecks是 的扩展方法IApplicationBuilder。
这里附上源码供参考。
https://github.com/dotnet/aspnetcore/tree/main/src/Middleware/HealthChecks/src/Builder
如果你查看源代码,你会发现UseHealthChecks使用了MapWhen()哪里MapHealthChecks使用Map()
| 归档时间: |
|
| 查看次数: |
6046 次 |
| 最近记录: |