如何解决Masstransit 7.2.1 程序启动时自定义健康检查的问题
在 MassTransit 7.2.1 中,结合自定义运行状况检查,我得到了一个空指针异常:
添加了 /health 的端点:
app.UseEndpoints(
endpoints =>
{
endpoints.MapControllers();
endpoints.MapHealthChecks("/health");
});
一些自定义健康检查,如 Elasticstack、Consul、Redis 等,也被配置为服务(在“health/elasticstack”上可用),即:
healthChecksBuilder.AddElasticsearch(
uriSettings,serviceSettings.Name,HealthStatus.Degraded,new[] { serviceSettings.Service,});
一开始我有一次异常:
(a) 第一个例外
StackTrace " at MassTransit.Transports.ReceiveEndpointCollection.<>c.<CheckHealth>b__11_3(<>f__AnonymousType56`2 x) in /home/runner/work/MassTransit/MassTransit/src/MassTransit/Transports/ReceiveEndpointCollection.cs:line 116" string
(b) 后续异常
StackTrace " at RabbitMQ.Client.Impl.TcpClientAdapter.<ConnectAsync>d__2.MoveNext() in /_/projects/RabbitMQ.Client/client/impl/TcpClientAdapter.cs:line 23" string
跳过异常后,健康检查一段时间后报告“健康”
如果删除“endpoints.MapHealthChecks("/health")”部分,它是否有效?有什么想法吗?
解决方法
这是 resolved,应该在下一个版本中。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。