Пользовательский интерфейс проверки работоспособности не работает после публикации кода в aws lambda, который запускается шлюзом api

#c# #aws-lambda #health-check

#c# #aws-lambda #проверка работоспособности

Вопрос:

У меня есть код в aws lambda, который запускается шлюзом api.

Я реализовал проверки работоспособности следующим образом: (.net core 3.1)

В startup.cs -> ConfigureServices

     services.AddHealthChecks()
       .AddNpgSql("connection", name: "DB name")
       .AddApiHealthCheck("Api1", "apipath/version")
       .AddApiHealthCheck("Api2", "apipath2/version")
       .AddSqsCheck("sqs", "sqspath");
    services.AddHealthChecksUI();
       .AddInMemoryStorage();
 

В startup.cs -> Настроить

     app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllers();
                
                    endpoints.MapHealthChecks("healthz", new HealthCheckOptions
                    {
                        ResponseWriter = UIResponseWriter.WriteHealthCheckUIResponse
                    });
                    endpoints.MapHealthChecksUI();
            });
 

Файл appsettings.json включает:

  "HealthChecksUI": {
"HealthChecks": [
  {
    "Name": "Http and UI on single project",
    "Uri": "/healthz"
  }
],
"Webhooks": [],
"EvaluationTimeinSeconds": 300,
"MinimumSecondsBetweenFailureNotifications": 60    
 

}

Конфигурация считывается из ssm на aws, а не из файла appsettings.json

После развертывания лямбды я пытаюсь https://apigateway.url/beta/healthchecks-ui в таблице есть одна строка с надписью «Ссылка на объект не установлена для экземпляра объекта».

В журналах я обнаружил эту ошибку

     System.NullReferenceException: Object reference not set to an instance of an object.n   at 
HealthChecks.UI.Core.ServerAddressesService.AbsoluteUriFromRelative(String relativeUrl)
 

(локально все работает так, как ожидалось)

Пожалуйста, посоветуйте

Спасибо