feat(health): redesign health dashboard with 4-column layout and new metrics

New fields in SiteHealthReport: NodeHostname, DataConnectionEndpoints
(primary/secondary), DataConnectionTagQuality (good/bad/uncertain),
ParkedMessageCount. New collector methods to populate them.

Health dashboard redesigned to match mockup: Nodes | Data Connections
(with per-connection tag quality) | Instances + S&F Buffers | Error
Counts + Parked Messages. Site names resolved from repository.
This commit is contained in:
Joseph Doherty
2026-03-23 10:44:30 -04:00
parent 5e2a4c9080
commit e84a831a02
5 changed files with 153 additions and 48 deletions

View File

@@ -15,4 +15,8 @@ public record SiteHealthReport(
int DeployedInstanceCount,
int EnabledInstanceCount,
int DisabledInstanceCount,
string NodeRole = "Unknown");
string NodeRole = "Unknown",
string NodeHostname = "",
IReadOnlyDictionary<string, string>? DataConnectionEndpoints = null,
IReadOnlyDictionary<string, TagQualityCounts>? DataConnectionTagQuality = null,
int ParkedMessageCount = 0);

View File

@@ -0,0 +1,3 @@
namespace ScadaLink.Commons.Messages.Health;
public record TagQualityCounts(int Good, int Bad, int Uncertain);