From ad8848cef5aa6250733c2eac90ba603f863cfd6b Mon Sep 17 00:00:00 2001 From: cryptooda Date: Fri, 3 Oct 2025 12:55:24 +0700 Subject: [PATCH] orleans health, dont count dead silos --- .../HealthChecks/OrleansHealthCheck.cs | 35 ++++++++----------- 1 file changed, 15 insertions(+), 20 deletions(-) diff --git a/src/Managing.Api/HealthChecks/OrleansHealthCheck.cs b/src/Managing.Api/HealthChecks/OrleansHealthCheck.cs index c2ec9da0..8656173e 100644 --- a/src/Managing.Api/HealthChecks/OrleansHealthCheck.cs +++ b/src/Managing.Api/HealthChecks/OrleansHealthCheck.cs @@ -340,35 +340,30 @@ namespace Managing.Api.HealthChecks var expectedActiveSilos = localhostEnvironment ? 1 : 2; // Localhost: 1, Sandbox: 2 metricsInfo["ExpectedActiveSilos"] = expectedActiveSilos; - // Check for health issues based on environment + // Check for health issues based on expected vs actual active silos if (activeSilos == 0) { issues.Add("No active silos found"); } - else if (localhostEnvironment) + else if (activeSilos < expectedActiveSilos) { - // In localhost, we expect exactly 1 active silo - if (activeSilos != 1) - { - issues.Add($"Localhost environment should have exactly 1 active silo, found {activeSilos}"); - } - // Dead silos in localhost are normal (from previous runs) - if (deadSilos > 0) + issues.Add($"Expected {expectedActiveSilos} active silos, found {activeSilos}"); + } + else if (activeSilos > expectedActiveSilos) + { + issues.Add($"Expected {expectedActiveSilos} active silos, found {activeSilos} (more than expected)"); + } + + // Add informational note about dead silos without affecting health status + if (deadSilos > 0) + { + if (localhostEnvironment) { metricsInfo["DeadSilosNote"] = "Dead silos in localhost are normal (from previous runs)"; } - } - else - { - // In sandbox/production, we expect at least 2 active silos for redundancy - if (activeSilos < 2) + else { - issues.Add($"Production environment should have at least 2 active silos for redundancy, found {activeSilos}"); - } - // Dead silos in production are concerning - if (deadSilos > 0) - { - issues.Add($"Found {deadSilos} dead silos in production environment"); + metricsInfo["DeadSilosNote"] = $"Found {deadSilos} dead silos (monitoring for cleanup)"; } } }