fix: wire up health report pipeline between sites and central aggregator
Sites now send SiteHealthReport via AkkaHealthReportTransport → SiteCommunicationActor → CentralCommunicationActor → CentralHealthAggregator. Added IHealthReportTransport impl, ISiteIdentityProvider impl, registered HealthReportSender on site nodes, and added SiteHealthReport handler in CentralCommunicationActor. Health Dashboard now shows all 3 sites online.
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
using Microsoft.Extensions.Options;
|
||||
using ScadaLink.HealthMonitoring;
|
||||
|
||||
namespace ScadaLink.Host;
|
||||
|
||||
/// <summary>
|
||||
/// Provides the site identity from NodeOptions configuration.
|
||||
/// </summary>
|
||||
public class SiteIdentityProvider : ISiteIdentityProvider
|
||||
{
|
||||
public string SiteId { get; }
|
||||
|
||||
public SiteIdentityProvider(IOptions<NodeOptions> nodeOptions)
|
||||
{
|
||||
SiteId = nodeOptions.Value.SiteId
|
||||
?? throw new InvalidOperationException("SiteId is required for site nodes.");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user