【问题标题】:Health check MassTransit and Rabbitmq健康检查 MassTransit 和 Rabbitmq
【发布时间】:2017-10-16 06:22:12
【问题描述】:

我计划在 ASP .net 核心应用程序中实现健康检查中间件。 例如,为了检查数据库是否健康,我打开和关闭了一个数据库连接。同样,检查 MassTransit 是否健康的最佳方法是什么(即它可以毫无问题地连接和发送/发布消息)?

【问题讨论】:

  • 对于 MassTransit/服务级别的健康检查,我实现了特殊的“烟雾测试”端点,并执行了请求/响应消息传递模式来验证通信并检查来自应用程序配置的任何数据库连接,类似于您的已经完成了。

标签: c# asp.net-web-api asp.net-core rabbitmq masstransit


【解决方案1】:

我知道这是一个老问题。但我有同样的问题,发现这个Nuget package

这是对应的github repo

像这样使用:

public void ConfigureServices(IServiceCollection services)
{
    services.AddHealthChecks()
            .AddRabbitmq("amqp://username:password@host:port/vhost"]);
}

【讨论】:

    【解决方案2】:

    对于您的健康检查,您可以使用 .netcore 2.0 中实施的健康检查服务

    在启动时可以使用:

    services.AddHealthChecks(checks =>
    {
        checks.AddSqlCheck("adsales", Configuration["AdsalesConnection"]);
    });
    

    我认为您可以在此处添加您对 rabbitmq 的检查。 但是话又说回来,你为什么会,我已经设置了心跳,你的连接将被服务器关闭。而且您的 push-api-received-eventhandler 不会在那里收到任何消息。

    只是一个想法......

    当你实现它时告诉我!只是好奇!

    【讨论】:

    猜你喜欢
    • 2017-11-24
    • 1970-01-01
    • 2017-07-16
    • 2014-10-02
    • 2021-09-13
    • 2019-11-03
    • 1970-01-01
    • 1970-01-01
    • 2021-04-20
    相关资源
    最近更新 更多