gpt4 book ai didi

c# - 健康检查,ASP.NET Web API

转载 作者:行者123 更新时间:2023-12-04 09:40:41 25 4
gpt4 key购买 nike

在我的工作中,我被要求在用 C# 编写的 ASP.NET Web API 2 中实现健康检查。我已经搜索过,但所有文档都是针对 ASP.NET Core 及其实现的,有人知道如何在经典/完整的 .NET Framework 中实现健康检查功能吗?

最佳答案

我同意伊戈尔。这是他建议的具体应用(显然,还有其他方法可以做到这一点,但这是我知道如何保持清晰并尊重关注点分离的最佳方法):

  • 创建一个新的 Controller 。在本例中,我将其命名为 HealthController
  • 向 Controller 添加一个 Action ,并使用 [HttpGet]
  • 对其进行注释
  • 将逻辑放在检查外部依赖项稳定性的操作中。例如,如果磁盘访问对您的 API 至关重要,请运行一两次测试以确保磁盘按照您的需要进行响应。如果您需要能够查询数据库,请进行示例查询,并确保它成功。这部分是完全自定义的,实际上取决于您的 API 以及它需要如何执行。
  • public class HealthController : ApiController
    {
    [HttpGet]
    public IHttpActionResult Check()
    {
    // Add logic here to check dependencies
    if (/* successful */)
    {
    return Ok();
    }

    return InternalServerError(); // Or whatever other HTTP status code is appropriate
    }
    }
  • 让外部服务向您的端点(当前位于 https://whatever.your.domain.is/Health/Check )发出 GET 请求,并在一段时间内未收到 200 OK 时进行报告。

  • 我用过 Amazon CloudWatch过去,我对此很满意。那里会有其他服务可以为您执行此操作,但我对它们没有任何经验。

    关于c# - 健康检查,ASP.NET Web API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62351410/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com