diff --git a/server/AyaNova/Controllers/HealthController.cs b/server/AyaNova/Controllers/HealthController.cs
new file mode 100644
index 00000000..c5197c29
--- /dev/null
+++ b/server/AyaNova/Controllers/HealthController.cs
@@ -0,0 +1,42 @@
+using System.Threading.Tasks;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.AspNetCore.Routing;
+using Microsoft.AspNetCore.Authorization;
+using Microsoft.Extensions.Diagnostics.HealthChecks;
+using Swashbuckle.AspNetCore.Annotations;
+
+namespace AyaNova.Api.Controllers
+{
+ [ApiController]
+ [ApiVersion("8.0")]
+ [Route("api/v{version:apiVersion}/health")]
+ [Produces("text/plain")]
+ [Authorize]
+ public class HealthController : ControllerBase
+ {
+ private readonly HealthCheckService _healthCheckService;
+ public HealthController(HealthCheckService healthCheckService)
+ {
+ _healthCheckService = healthCheckService;
+ }
+
+ ///
+ /// Get Health
+ /// Also available at /health on server root
+ /// confirms liveness and also db availability
+ ///
+ /// Provides an indication about the health of the API
+ /// API is healthy
+ /// API is unhealthy or in degraded state
+ [HttpGet]
+ [AllowAnonymous]
+ [ProducesResponseType(typeof(string), 200)]
+ [SwaggerOperation(OperationId = "Health_Get")]
+ public async Task Get()
+ {
+ var report = await _healthCheckService.CheckHealthAsync();
+ Response.Headers.Add("Cache-Control", "no-store, no-cache");
+ return report.Status == HealthStatus.Healthy ? Ok(report.Status.ToString()) : StatusCode(503, report.Status.ToString());
+ }
+ }//eoc
+}//eons
\ No newline at end of file
diff --git a/server/AyaNova/Controllers/ServerMetricsController.cs b/server/AyaNova/Controllers/ServerMetricsController.cs
index ee25d7c3..880f103d 100644
--- a/server/AyaNova/Controllers/ServerMetricsController.cs
+++ b/server/AyaNova/Controllers/ServerMetricsController.cs
@@ -14,7 +14,7 @@ using Newtonsoft.Json.Linq;
using AyaNova.Models;
using AyaNova.Api.ControllerHelpers;
using AyaNova.Biz;
-using StackExchange.Profiling;
+//using StackExchange.Profiling;
namespace AyaNova.Api.Controllers
{
diff --git a/server/AyaNova/Program.cs b/server/AyaNova/Program.cs
index eae2f20b..37166cd3 100644
--- a/server/AyaNova/Program.cs
+++ b/server/AyaNova/Program.cs
@@ -10,7 +10,7 @@ using NLog.Web;
using NLog.Targets;
using NLog.Config;
using AyaNova.Util;
-using StackExchange.Profiling;
+//using StackExchange.Profiling;
namespace AyaNova
{
diff --git a/server/AyaNova/Startup.cs b/server/AyaNova/Startup.cs
index 73ab429e..58ce6449 100644
--- a/server/AyaNova/Startup.cs
+++ b/server/AyaNova/Startup.cs
@@ -23,6 +23,7 @@ using AyaNova.Biz;
using NLog.Extensions.Logging;
using StackExchange.Profiling;
+
namespace AyaNova
{
public class Startup
diff --git a/server/AyaNova/generator/CoreJobMetricsSnapshot.cs b/server/AyaNova/generator/CoreJobMetricsSnapshot.cs
index 9b4d53f4..7012a462 100644
--- a/server/AyaNova/generator/CoreJobMetricsSnapshot.cs
+++ b/server/AyaNova/generator/CoreJobMetricsSnapshot.cs
@@ -5,7 +5,7 @@ using Microsoft.Extensions.Logging;
using AyaNova.Util;
using AyaNova.Models;
using Microsoft.EntityFrameworkCore;
-using StackExchange.Profiling;
+//using StackExchange.Profiling;
namespace AyaNova.Biz