From 17ab5170f134e280177a31a396134d2eadb3719b Mon Sep 17 00:00:00 2001 From: Miguel Veloso Date: Fri, 16 Aug 2019 19:57:22 +0100 Subject: [PATCH] Add view to display current configuration in WebStatus --- .../WebStatus/Controllers/HomeController.cs | 18 +++++++++++++++++- src/Web/WebStatus/Views/Home/Config.cshtml | 17 +++++++++++++++++ src/Web/WebStatus/WebStatus.csproj | 1 + src/Web/WebStatus/appsettings.Development.json | 2 +- src/Web/WebStatus/appsettings.json | 2 +- 5 files changed, 37 insertions(+), 3 deletions(-) create mode 100644 src/Web/WebStatus/Views/Home/Config.cshtml diff --git a/src/Web/WebStatus/Controllers/HomeController.cs b/src/Web/WebStatus/Controllers/HomeController.cs index 15f912bc2..e87e655a6 100644 --- a/src/Web/WebStatus/Controllers/HomeController.cs +++ b/src/Web/WebStatus/Controllers/HomeController.cs @@ -1,5 +1,7 @@ -using Microsoft.AspNetCore.Mvc; +using HealthChecks.UI.Configuration; +using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Configuration; +using System.Linq; using System.Threading.Tasks; namespace WebStatus.Controllers @@ -19,6 +21,20 @@ namespace WebStatus.Controllers return Redirect($"{basePath}/hc-ui"); } + [HttpGet("/Config")] + public IActionResult Config() + { + var configurationValues = _configuration.GetSection("HealthChecksUI:HealthChecks") + .GetChildren() + .SelectMany(cs => cs.GetChildren()) + .Union(_configuration.GetSection("HealthChecks-UI:HealthChecks") + .GetChildren() + .SelectMany(cs => cs.GetChildren())) + .ToDictionary(v => v.Path, v => v.Value); + + return View(configurationValues); + } + public IActionResult Error() { return View(); diff --git a/src/Web/WebStatus/Views/Home/Config.cshtml b/src/Web/WebStatus/Views/Home/Config.cshtml new file mode 100644 index 000000000..b5ddc36fb --- /dev/null +++ b/src/Web/WebStatus/Views/Home/Config.cshtml @@ -0,0 +1,17 @@ +@model Dictionary + +@{ + ViewData["Title"] = "WebStatus Configuration"; +} + +

Configuration Values

+ + + @foreach (var item in Model) + { + + + + + } +
@item.Key@item.Value
diff --git a/src/Web/WebStatus/WebStatus.csproj b/src/Web/WebStatus/WebStatus.csproj index fa7247106..d4b6c7a96 100644 --- a/src/Web/WebStatus/WebStatus.csproj +++ b/src/Web/WebStatus/WebStatus.csproj @@ -16,6 +16,7 @@ + diff --git a/src/Web/WebStatus/appsettings.Development.json b/src/Web/WebStatus/appsettings.Development.json index 43c777c55..9e0cea9d0 100644 --- a/src/Web/WebStatus/appsettings.Development.json +++ b/src/Web/WebStatus/appsettings.Development.json @@ -34,7 +34,7 @@ "Uri": "http://localhost:5108/hc" }, { - "Name": "WebMVC HTTP Check", + "Name": "WebMVC HTTP Check (settings-dev)", "Uri": "http://localhost:5100/hc" }, { diff --git a/src/Web/WebStatus/appsettings.json b/src/Web/WebStatus/appsettings.json index 8c72dc232..d826db8d7 100644 --- a/src/Web/WebStatus/appsettings.json +++ b/src/Web/WebStatus/appsettings.json @@ -34,7 +34,7 @@ "Uri": "http://localhost:5108/hc" }, { - "Name": "WebMVC HTTP Check", + "Name": "WebMVC HTTP Check (settings-prod)", "Uri": "http://localhost:5100/hc" }, {